基于区块链可追溯的个人隐私数据共享技术研究
2023-02-17陈丹伟马圣东
刘 萌 陈丹伟 马圣东
1(南京邮电大学计算机学院、软件学院、网络空间安全学院 南京 210023)2(南京壹证通信息科技有限公司 南京 210012)
在国内,大多数企业和机构都倾向于将海量用户数据存储在云服务提供商(cloud service provider, CSP)或者公司内部服务器中进行数据存储共享,以降低维护成本.但是,第三方CSP被认为是半诚实的,并且公司内部服务器中存储的隐私数据可能存在被黑客泄露或篡改的风险.区块链技术具有去中心化、去信任化、防篡改、公开透明等特点[1],因此可以在不依赖第三方可信机构的前提下使用区块链技术构建分布式数据库.区块链包含一系列不断增长的区块,区块链中的数据被复制并存储在分布式网络中的各个节点上,多个分布式节点共同维护数据的完整性.因此,区块链技术可用于构建可审计和不可篡改的数据存储解决方案[2].然而,保护个人隐私数据的机密性仍具有挑战性,由于区块链的开放性和透明性,任何人都可以访问存储在区块链上的个人隐私数据.解决上述挑战所采取的方法之一是运用加密方法.在个人隐私数据保护这个场景中,个人隐私数据拥有者需要实现对多个隐私数据消费者的加密数据共享.这里通常需要采用一种称为基于密文策略属性的加密(CP-ABE)[3-4]的加密原语,它允许数据所有者对与1组访问策略关联的数据进行加密.当数据消费者的属性集满足密文中指定的访问策略时,数据消费者可以成功解密密文,获得共享数据.
然而,传统的CP-ABE方案还有许多问题需要解决[5].问题之一是CP-ABE方案[6-7]的高计算要求,直接影响了在区块链中实现私有数据细粒度共享的性能.之前的一些方案[8-12]试图通过将CP-ABE方案中的某些计算外包给云服务器来减少用户系统的计算负担.此外,由于基于属性的加密方案实现了1对多加密,如果其中的任何用户与未经授权的用户共享密钥,则可能难以追踪密钥滥用者以追究责任[13-14].这可能会导致区块链上的秘密数据泄露.另一个需要考虑的问题是:一旦数据所有者指定的CP-ABE的访问控制策略存储在区块链上,数据所有者就不能再修改访问控制策略.还有一个需要考虑的问题是密文的存储问题.总之,本文旨在解决基于区块链的数据隐私保护和共享访问控制策略效率低下、密钥滥用和不灵活等问题.
为了解决上述问题,结合星际文件系统(inter planetary file system, IPFS),本文设计了一种基于改进的CP-ABE算法的策略灵活的可追溯的细粒度个人隐私数据共享平台PPSS-BC,主要贡献如下:
1) 设计了一种基于改进的CP-ABE算法的策略灵活的可追溯的细粒度个人隐私数据共享方案.针对原始可追溯CP-ABE方案的效率低下且访问策略无法更改的问题,在PPSS-BC中提出了一种具有动态访问控制以及可追溯特点的改进的CP-ABE加密方案DTABE,用于区块链上的个人隐私数据保护和细粒度数据共享.
2) 在PPSS-BC中采用IPFS进行个人隐私数据密文的存储,将元数据存储在区块链,从而实现个人隐私数据的有效存储.元数据包括访问控制策略信息和个人隐私数据密文对应的IPFS哈希值等信息.
3) 对PPSS-BC提供安全性和可追溯性证明,并通过方案的运行分析验证其性能.
1 背景技术
1.1 区块链
区块链源自于比特币的底层技术[15],能解决分布式场景中节点间的信任问题[16].2008年,中本聪(Satoshi Nakamoto)首次将区块链解释为一种用于电子现金系统的比特币技术.区块链是一种基于分布式计算技术的账本管理技术,任何人都不能随意修改,将数据存储在基于“区块”的P2P方式的链式连接的分布式数据存储环境中.由于没有第三方干预网络,可进行个人之间的自由交易[17-18].图1给出了区块链的结构.为了保证区块链中数据的完整性,在下一个区块节点中存储了上一个区块的哈希值.时间戳防止区块可能产生的双花问题,默克尔根的存在证明了每个块内交易的完整性[19].区别于传统的数据库系统,区块链正是通过这些数据信息的透明展示以及分布存储来保证数据的完整性[20].
图1 区块链的结构
1.2 属性基加密
属性基加密(attribute-based encryption, ABE)的提出是为了解决大数据云端存储环境中的细粒度访问控制问题.ABE方案分为2类,即CP-ABE和KP-ABE(Key-Policy ABE).在KP-ABE中,访问策略嵌入到解密密钥中.数据在某些属性下被加密.一旦用户的属性满足访问策略,数据就可以被解密.而在CP-ABE中,访问策略在数据加密时指定,解密密钥与属性绑定.如果密钥的属性满足密文中的访问策略,则密文可以被解密.在CP-ABE方案的应用中,密钥滥用是数据用户可能将私钥信息泄露给非法用户的问题之一.为了解决这个问题,研究人员已经提出了各种具有可追溯性的CP-ABE方案来跟踪密钥滥用者.
2 方案设计
2.1 系统框架
本文提出的PPSS-BC可以提供具有可追溯性、动态访问控制以及细粒度访问控制的个人隐私数据共享机制.系统架构如图2所示,包括授权中心、隐私数据所有者、IPFS集群、区块链和隐私数据消费者.5个实体的功能如下:
图2 系统架构
1) 授权中心.负责PPSS-BC的初始化以及密钥生成,包括系统参数的生成与分配.授权中心需要初始化系统的公共参数PK和系统主私钥MK.将PK公开,秘密保留MK.授权中心还需要针对数据所有者以及数据消费者传递的参数分别为二者生成解密密钥.
2) 隐私数据所有者.即个人隐私数据的提供者.数据所有者首先需要将自身的身份ID提交给授权中心,授权中心返回给用户1个RSA签名σ.当数据所有者上传数据时,先将隐私数据用对称密钥k进行加密,然后将加密之后的隐私数据上传到IPFS,得到一个哈希地址hCT;接下来将对称密钥k、哈希地址hCT以及访问策略(M,ρ)(其中,访问策略(M,ρ)为LSSS矩阵)通过CP-ABE生成密文CT;最后将CT上传到区块链.这时只有拥有满足访问策略的属性集的用户才能访问系统中的数据.
3) IPFS集群[21].即分布式文件系统,结合了分布式哈希表、激励块交换和自认证命名空间.主要负责存储数据所有者上传的加密文件,并将加密文件的哈希值存储在区块链上,缓解区块链的存储压力.
4) 区块链.将智能合约部署在区块链上,实现链上链下数据的交互.
5) 隐私数据消费者.对PPSS-BC中的隐私数据感兴趣并希望访问其公司或机构.数据消费者访问共享数据时需要根据自身属性等信息向授权中心申请1个解密密钥,只有具有访问权限的数据消费者才能通过解密密钥解密共享数据,获得其想要的个人隐私数据.
2.2 具体方案
2.2.1 系统初始化
系统初始化一般在PPSS-BC平台启动时运行,具体过程如函数1所示.函数的主要流程如下:首先,PPSS-BC平台确定安全参数λ(函数1的行①).然后调用改进后的DTABE中的初始化(setup)算法得到系统公钥PK和系统主密钥MK,并将PK公开,MK秘密保留(函数1行②③).
函数1.系统初始化函数.
输入:λ;
输出:PK,MK.
①λ←安全参数;
②PK,MK←DTABEsetup(1λ);
③ CA公开PK,保存MK;
④ returnPK,MK.
算法1.DTABE中的初始化算法.
(1λ)→(PK,MSK).系统运行群生成算法获得双线性对e、p阶素群1和T.定义U为属性集,然后将属性集U映射到组合p.随机选取g,w∈1,α,u,a,b∈p,随机选取1个哈希函数H:(0,1)*→1.该算法选择具有2个不同密钥k1和k2的概率加密算法(Enc,Dec).系统通过选择t-1阶多项式f(x)和存储多项式f(x)中t-1个点(x1,y1),(x2,y2),…,(xt-1,yt-1)初始化Shamir的阈值共享方案INSt,n.系统公钥PK和主私钥MSK设置如下:
PK={g,w,ga,gb,gu,e(g,g)a,H,1,T},
(1)
MSK={α,a,b,u,k1,k2}.
(2)
2.2.2 用户注册
用户注册为PPSS-BC平台创建新的用户(包括隐私数据所有者和隐私数据消费者),具体流程如函数2所示.当PPSS-BC接收到用户的注册请求时,PPSS-BC对用户的ID进行合法性验证,若验证通过则将用户信息存储在区块链中,并返回1个根据ID生成的RSA签名σ(函数2的行⑤~⑦),否则返回null.
函数2.用户注册函数.
输入:ID;
输出:σ.
①ID←用户身份信息;
② CA验证用户身份;
③ if 验证结果!=true then
④ return null;
⑤ else
⑥ 保存用户的信息;
⑦ returnσ;
⑧ end if
2.2.3 数据上传
数据上传过程是数据所有者向PPSS-BC平台提供共享数据.为保证共享数据的安全,数据所有者将制定访问控制策略,并对共享数据进行加密操作.具体流程如函数3所示,当隐私数据所有者要进行隐私数据上传时,PPSS-BC首先选择1个对称密钥k∈T,用k将隐私所有者的隐私数据m加密为CTm(函数3的行①),然后将CTm上传到IPFS存储服务器进行存储,IPFS服务器会返回1个CTm的存储地址hCT(函数3的行②).接下来通过DTABE中的加密算法(encrypt)将对称密钥k、刚得到的哈希地址hCT,以及访问策略(M,ρ)通过基于密文策略属性加密生成密文CT,生成的密文CT被分成CT1(密文中包含对称密钥和哈希地址)和CT2,分别作为交易块TX和访问策略块A存储到区块链中(函数3的行③~⑤).
函数3.数据上传函数.
输入:m,(M,ρ);
输出:CTm,CT.
①CTm←Enck(m);
②IPFSaddr←将CTm发送到IPFS集群;
③CT(CT1,CT2)←DTABEencrypt(PK,ID,
k,hCT,(M,ρ));
④ 将CT1作为交易块TX存储;
⑤ 将CT2作为策略块A存储;
⑥ returnCTm,CT.
算法2.DTABE中的加密算法.
(PK,ID,k,hCT,(M,ρ))→(CT).输入公钥PK、对称密钥k、IPFS地址hCT和LSSS矩阵访问策略(M,ρ).假设矩阵M有l行n列,函数ρ将矩阵M映射到用户属性集,并将Mi,j定义为矩阵M的第(i,j)个元素(第i行第j列).随机选择s∈p,并使用密钥k′的对称加密算法对其进行预加密并保存为Enck′(s).对用于消息加密的对称密钥k和IPFS地址hCT使用基于属性的加密算法进行加密:
(M,ρ),C=(k+hCT)e(g,g)σ α s,C0=gσ s,
(3)
C1=gσ as,C2=gσ bs,
(4)
Ci=[H(ρ(i)‖1‖1)σ s·
(5)
密文设置为CT=(CT1,CT2),其中消息密文CT1=(C,C0,C1,C2),访问策略密文CT2={(M,ρ),Ci}i∈[l].
2.2.4 数据下载
数据下载过程是数据消费者访问PPSS-BC平台中的共享数据,只有当数据消费者的属性集满足访问策略(M,ρ)的情况下才能从IPFS中获取CTm,进而解密得到共享的隐私数据m.具体过程如函数4所示.当数据消费者想要访问共享的数据时,数据消费者需要向授权中心提交其身份ID和属性集,授权中心先验证用户的合法身份,之后调用DTABE中的密钥生成算法(generate)为数据消费者生成解密密钥SKID,(函数4的行①~⑤).然后从交易块中获得密文CT1,待获得上述密文后使用SKID,对其进行解密.若数据消费者的属性集满足访问策略(M,ρ),则得到对称加密密钥k以及IPFS服务器中CTm的存储地址hCT,根据地址获得隐私数据的密文CTm,并使用k进行解密便得到数据消费者想要得到的隐私数据;若数据消费者的属性集未满足访问策略(M,ρ),则数据消费者便无法获得想要的隐私数据(函数4的行⑦~).
函数4.数据下载函数.
输入:(ID,);
输出:mor ⊥.
① CA验证用户身份;
② if 验证结果!=true then
③ return ⊥;
④ else
⑤SKID,←DTABEgenerate(PK,MSK,ID,
⑥CT1←来自区块链;
⑧k+hCTor ⊥←DTABEdecrypt(PK,
SKID,,CT);
⑨m←Dec(CTm来自区块链);
⑩ returnm;
算法3.DTABE中的密钥生成和解密算法.
密钥生成:(PK,MSK,ID,={attr1,attr2,…,attri})→SKID,.用户向权威机构提交自身的身份ID、属性集.权限使用系统公钥PK和主私钥MSK生成用户的密钥.计算得到x=Enck1(ID),y=f(x),c=Enck2(x‖y).随机选择h∈P,为用户生成解密密钥SKID,如下:
(6)
(7)
(8)
用户的解密密钥设置为
SKID,={K,K′,L,SKattri∈,SK}.
(9)
解密:(PK,SKID,,CT)→k+hCTor ⊥.数据用户访问区块链,从区块链交易块TX中获取密文CT1,从交易块TX对应的最新访问策略块A中获取密文CT2.数据用户首先计算矩阵M的行集,即I={i:ρ(i)∈},其中行对应的属性属于用户属性集中的元素.如果用户的属性集满足在密文CT的访问策略中,数据用户可以计算出1组常数{ωi}i∈I满足,其中Mi是矩阵的第i行.否则,解密算法输出⊥.解密过程如下:
(10)
e(H(0‖1‖1‖1),g)σ suh,
(11)
e(g,w)(a+c)σ bs·e(H(0‖1‖1‖1),g)σ suh·
(12)
(13)
数据用户计算对称密钥k+hCT=C/Y,然后使用密钥k解密从IPFS下载的密文CTm,得到消息m.
正确性:
(14)
e(H(0‖1‖1‖1),g)σ suh,
(15)
gσ bh=e(g,w)(a+c)σ bs·e(H(0‖1‖1‖1),g)σ suh·
(16)
2.2.5 访问控制策略更新
访问控制策略更新过程是数据所有者对PPSS-BC平台中的共享数据进行访问控制策略的修改.修改后只有当数据消费者的属性集满足新的访问策略(M,ρ)时才能最终获得隐私数据m.具体过程如函数5所示.隐私数据所有者想向PPSS-BC提交新的访问策略(M,ρ)时,PPSS-BC通过调用DTABE的更新策略算法(update)生成新的密文CT′(函数5中的行①),接着调用DTABE的策略验证算法(verify)进行策略验证,更新密文为CT″,生成新的策略块A′(函数5中的行②③).
函数5.策略更新函数.
输入:σ,Enck′(s),(M′,ρ′);
输出:CT″.
(M′,ρ′));
DTABEverify(σ,CT′);
④ returnCT″.
算法4.DTABE中的更新策略算法和策略验证算法.
更新策略:(σ,Enck′(s),(M′,ρ′))→CT′.输入签名σ、预先保存的Enck′(s)和要更新的访问策略(M′,ρ′).然后输出更新后的密文CT′.数据拥有者使用对称密钥k′解密Enck′(s)得到s后计算CT′:
(17)
(18)
2.2.6 路经追溯
在进行数据下载的过程中,数据消费者提供解密密钥的同时,PPSS-BC会对解密密钥是否属于该消费者进行检查,具体过程如函数6所示.授权中心首先通过调用DTABE的密钥检查算法(keyCheck)对数据消费者提供的解密密钥进行合法性验证,若通过则调用DTABE的路径追踪算法(trace)进行ID验证(函数6中的行②~④),若验证成功则是合法访问,否则判定为非法访问(函数6中的行⑤⑥).通过路径追溯,可以检查数据消费者是否使用其他消费者的解密密钥获取到共享数据,若存在非法访问可以通过及时进行策略更新防止非法访问再次发生.
函数6.路径追踪函数.
输入:PK,MSK,SKID,;
输出:IDor ⊥.
①result←DTABEkeyCheck(PK,MSK,SKID,);
② ifresult!=0 then
③ID←DTABEtrace(PK,MSK,INSt-1,n,
SKID,);
④ returnID;
⑤ else
⑥ return ⊥;
⑦ end if
算法5.DTABE中的密钥检查算法和路径追踪算法.
密钥检查:(PK,MSK,SKID,)→0 or 1.输入系统公钥PK、系统主私钥MSK和用户的解密密钥SKID,.用户密钥SKID,的形式首先由权威机构针对以下3个条件进行验证:
1)K,L,SKi∈,SK∈1,K′∈p;
2)e(SK,gb)=e(wawK′,gb)e(H(0)‖1‖1‖1),L);
3)e(K,gagK′)=e(g,g)αe(gb,wa+K′).
如果密钥满足3个条件,则返回1,否则返回0.
路径追踪:(PK,MSK,INSt-1,n,SKID,)→IDor ⊥.如果密钥检查算法输出为0,则路径追踪算法输出为⊥.否则,表明SKID,是一个格式良好的密钥,因此可以从以下操作中提取ID:
1) 路径追踪算法首先从用户的密钥SKID,中得到K′,然后得到x‖y=Deck1(x′),令(x′=x,y′=y).
2) 如果(x′,y′)∈{(x1,y1),(x2,y2),…,(xt-1,yt-1)},则计算ID=Deck1(x′).否则,转到3).
3) 算法结合点(x1,y1),(x2,y2),…,(xt-1,yt-1)和(x′,y′),通过拉格朗日插值公式恢复INSt-1,n的秘密值a*.验证a*=f(0)是否成立.如果成立,则计算ID=Deck1(x′).否则,路径追踪算法的输出为⊥.
2.3 安全模型
2.3.1 选择性安全
本节通过描述攻击者A和挑战者B的博弈给出选择安全的定义.博弈的具体过程如下.
初始化阶段:攻击者A声明被挑战的访问策略矩阵(M,ρ),并将访问策略矩阵(M,ρ)发送给挑战者B.
设置阶段:挑战者B首先运行系统初始化算法DTABEsetup(1λ),然后将系统公共参数PK发送给对手A.
查询阶段1:对手A提交身份和属性集(ID1,1),(ID2,2),…,(IDq,q)向挑战者B自适应地
MSK,IDi,i)→SKi,并将生成的密钥SKi发送给攻击者A.
挑战阶段:攻击者A选择2个长度相等的消息m0和m1,然后将它们发送给挑战者B.挑战者B随机选择β∈{0,1},运行加密算法DTABEencrypt(PK,ID,k,hCT,(M,ρ))→CT,并将生成的密文CT发送给攻击者A.
查询阶段2:攻击者A要求与阶段1相同的密钥.
定义1.如果上述安全博弈中的所有概率多项式算法对手在λ上的优势最多可以忽略不计,则基于可追踪属性的加密方案是选择性安全的.
2.3.2 可追溯性
下面通过描述攻击者A和挑战者B的博弈给出溯源的安全定义.博弈的具体过程如下.
初始化阶段:挑战者B首先运行系统初始化算法DTABEsetup(1λ),然后将系统公共参数PK发送给对手A.
密钥查询阶段:攻击者A提交属性和身份(ID1,1),(ID2,2),…,(IDq,q)给挑战者B.挑战者B将生成的密钥SK发送给对手A.
密钥伪造:攻击者A输出伪造的密钥SK*.如果SK*满足以下2个条件:
1)DTABEtrace(PK,MSK,INSt-1,n,SK*)≠⊥;
2)DTABEtrace(PK,MSK,INSt-1,n,SK*)∉{ID1,ID2,…,IDq}.
则对手A赢得比赛.
定义2.在上述博弈中,如果不存在多项式时间敌手具有不可忽略的优势,则可溯源的基于属性的加密方案是完全可溯源的.
3 安全性分析与评估
3.1 安全性分析
3.1.1已有假设
3.1.2 可追溯性证明
下面给出了基于l-SDH假设的可追溯性的安全证明.
定理1.如果l-SDH假设成立,则所提出的方案是完全可追溯的.
证明.假设有一个对手A在q(q 初始化阶段:B首先随机选择q个不同的值c1,c2,…,cq∈令然后将多项式展开为其中α0,α1,…, αq∈p是多项式f(y)的系数.接下来,B计算以下内容: (19) (20) B随机选择α,θ,u,h∈然后将公共参数PK发送给A.A得到的公共参数为PK={g,w,gb,ga,gu,e(g,g)α}.B初始化Shamir的(t,n)阈值方案,然后存储从多项式f(x)中选择的作为秘密的t-1个点(x1,y1),(x2,y2),…,(xt-1,yt-1). 密钥查询:攻击者A向B提交(IDi,i)以查询解密密钥.当敌手的查询次数为第i(i K=(σi)αwb=gα/(a+ci)wb,K′=ci,L=guh, (21) {SKi∈=H(i‖1‖1)uh/b}, (22) SK=w(a+ci)H(0‖1‖1‖1)(uh/b). (23) 密钥伪造:对手A向挑战者B提交伪造的密钥SK*.将A赢得比赛的事件定义为εA.密钥SK*的形式为SK*=(K,K′,L,SKi∈A,SK).SK*通过密钥校验算法且K′≠(c1,c2,…,cq).如果事件εA没有发生,B随机选择(cs,ws)∈1来解决l-SDH问题.如果事件εA发生,B使用长除法将多项式展开为 f(y)=γ(y)(y+K′)+γ′, 其中 假设L′=gb,其中b∈挑战者B计算K=gα/(a+K′)wb,1/γ′(modp),其中gcd(γ′,p)=1.计算(cs,ws)∈1如下: (24) (25) cs=K′, (26) 将εSDH(cs,ws)定义为成功解决l-SDH问题的事件.在A获胜且gcd(γ′,p)=1的条件下,多项式算法B输出(cs,ws),求解l-SDH问题的概率为1,如果满足以下方程: (27) 因此,B解决l-SDH问题的概率为 Pr[εSDH(cs,ws)]= (28) B以不可忽略的优势解决了l-SDH问题,这与l-SDH假设相矛盾,证明本文方案是完全可追溯的. 证毕. 3.2.1实验环境 本文基于Java和Go语言实现了PPSS-BC平台.本文实验环境主要包括数据所有者服务器、数据消费者服务器和Fabric区块链. 数据所有者服务器为1台笔记本电脑(CPU:Intel i7-4710MQ;OS:Windows 10;内存:16 GB;硬盘:500 GB),数据消费者采取相同配置. 部署的Fabric区块链由3个组件组成,每个组件有1个区块链节点(3个Peer节点)、3个IPFS节点、3个Zookeeper服务节点、4个Kafka服务节点和3个排序排序服务节点.这些组件根据服务器类型序列号分别部署在1台工作站上(CPU:Intel Xeon E2236(6核,3.4 GHz);内存:8 GB;硬盘:500 GB). 此外,本文的实验是在真实数据集Kosarak上进行的.但是Kosarak数据集大约为12.2 MB,而本文的实验是用10 MB进行的,所以Kosarak数据集中的记录已经被部分删除. 3.2.2 加解密性能 访问控制策略中的属性个数会直接影响加解密的时间.本文实验对比了BSDS-FA[22]与本文提出的PPSS-BC的加解密性能.另外作为参考,本文也测试了传统的CP-ABE在相同模型下的加解密性能.三者的区别如下:采用传统CP-ABE的系统需要对隐私数据直接应用CP-ABE进行加密;BSDS-FA使用与本文所提出的PPSS-BC相同的加密方式,先使用对称密钥对隐私数据进行加密,再对对称密钥使用CP-ABE进行加密,而二者的区别则是BSDS-FA将部分解密过程放在区块链上进行,本文提出的PPSS-BC则是在本地进行解密,实验结果如图3、图4所示(图4中的解密时间为总解密时间): 图3 加密时间对比 图4 总解密时间对比 从图3可以看出与应用传统CP-ABE的模型相比,BSDS-FA与本文提出的PPSS-BC在加密时的性能方面有很大提高.因此应当避免使用CP-ABE直接对隐私数据进行加密.而由于BSDS-FA与本文提出的PPSS-BC在进行加密时的过程类似,所以在加密的性能上二者无明显区别.然而从图4可以看出,在进行解密时本文提出的PPSS-BC的性能要优于BSDS-FA.这是由于BSDS-FA将部分解密过程放在区块链的智能合约上运行,相较于本文系统中的本地解密,在智能合约上进行解密工作会一定程度上影响系统的性能.因此相较于BSDS-FA,本文提出的PPSS-BC在隐私数据共享的性能上具有一定优势. 为了保护互联网网民的个人隐私数据,本文设计了一种策略灵活的可追溯的细粒度个人隐私数据共享平台PPSS-BC.本文首先提出一种具有动态访问控制以及可追溯特点的改进的CP-ABE加密方案DTABE,在可追溯的基于属性的加密算法的基础上对访问控制策略进行更新,解决了用户解密密钥非法共享、盗用问题的同时,也使得访问控制更加灵活.从而在海量数据、海量用户的情况下,DTABE也可以在保证用户数据安全的同时,为用户提供细粒度的访问控制.然后将结合智能合约技术的DTABE方案应用到PPSS-BC中,使得PPSS-BC不仅可以防止非法用户访问共享数据,还可以更改访问控制策略.最后对PPSS-BC进行了安全验证,并进行了相关实验.实验结果表明,PPSS-BC在一定程度上提高了用户隐私数据共享的性能,为用户提供更安全可靠的数据共享服务,同时提供细粒度的访问控制.
Pr[Awin∧gcd(γ′,p)=1]=
Pr[Awin]·Pr[gcd(γ′,p)=1]=ε.3.2 性能分析
4 结束语