支持隐私保护的多机构属性基加密方案

2018-04-16 12:02闫玺玺李子臣汤永利
计算机研究与发展 2018年4期
关键词:敌手挑战者密钥

闫玺玺 刘 媛 李子臣 汤永利

1(河南理工大学计算机科学与技术学院 河南焦作 454003) 2 (北京印刷学院信息工程学院 北京 102600) (yanxx@hpu.edu.cn)

随着互联网的发展以及云计算的应用,越来越多的人趋于将数据存储在云端,然而在这些数据中可能包含一些敏感信息(比如个人病历),为了保护用户隐私,经常需要对敏感的隐私信息进行加密处理.属性基加密(attribute based encryption, ABE)[1]作为一种新兴的公钥加密技术,将用户的身份用一系列的属性表示,通过对用户的私钥或密文设置属性集或访问结构,只有属性集和访问结构相匹配时才能解密,从而实现了一对多的通信以及对文件的细粒度访问控制,解决了传统公钥密码体制无法满足云环境下的访问控制、安全和效率问题,被认为是云环境中高效的信息分享的最佳选择.但是由于加密者制定访问策略的属性中往往会包含一些敏感的隐私信息,如个人健康病例系统中病人设置访问策略为{人民医院,医生,心脏科},这些属性信息很容易泄露病人的隐私.因此,如何实现云环境数据共享中敏感信息的隐私保护便成为学者们研究的热点.

传统的ABE只有一个可信的机构来管理所有的属性,但在实际应用中属性往往是由多个机构管理运行的.单个属性机构的ABE机制不能满足大规模分布式环境的需求,属性权威机构易受到集中攻击,另外,属性权威机构需要为所有的用户认证属性分发密钥,工作负荷过重,成为系统的性能瓶颈.在此基础上Chase[2]提出第1个多机构属性基加密方案(multi-authority attribute based encryption, MA-ABE),多个机构分别管理不同的属性集,并为其权限内的属性用户分发密钥,该方案有一个可信的中央机构及多个属性机构,允许属性机构独立地监控属性及分配密钥,但该方案要求中央机构完全可信,一旦中央机构被破坏,则整个系统都会崩溃.

文献[3]中Lin等人首次提出无中央机构的安全门限多机构ABE,该方案采用密钥分配技术和零秘密共享技术,代替了文献[2]中的伪随机函数.文献[4]中Müller等人提出密钥策略的多机构ABE,该方案的中央机构只负责秘密用户的密钥分发,而属性密钥的分发由多个属性机构来完成,每个属性分别和一个单独的属性机构相关.文献[5]中Chase等人提出提高隐私和安全的多机构ABE,该方案移除了可信的中央机构,每个用户都有一个唯一的全域身份标识(global identifier, GID),采用匿名证书技术隐藏用户的GID,以防止机构累积用户的信息来保护用户的隐私.文献[6]中Lewko等人提出分权的多机构ABE,该方案中任何一方都可以通过为不同的用户生成公钥和发放私钥成为机构,且提出一种将用户的密钥与GID相连的技术以抵抗共谋攻击.文献[7]中Xhafa等人提出云计算中具有隐私意识的基于属性的个人健康记录共享系统,该方案是一种密钥策略的多机构的ABE,通过隐藏访问策略保护访问用户的隐私.文献[8]中Han等人提出提高隐私和安全的分权的密文策略的多机构ABE,该方案采用承诺方案和零知识证明技术来保护用户的GID和属性,这是第1篇保护用户属性的方案.但是,在文献[9]中Wang等人指出文献[8]中所提的方案并不能很好地保护用户的属性.文献[10]中Qian等人提出基于多机构属性基加密的可撤销属性和隐私保护的个人健康病例系统,该方案提供用户属性的撤销及策略更新.文献[11]中关志涛等人提出面向云存储的基于属性加密的多授权中心访问控制方案,该方案采用最小化属性分组算法大大减少了用户访问文件时所需的密钥量,系统开销较小.文献[12]中陶启等人提出基于密文策略多机构属性基加密方案,该方案去除中央机构,采用访问树策略及Shamir秘密共享技术,并支持属性撤销.文献[13]中吴光强提出适合云存储的访问策略可更新多中心CP-ABE方案,该方案设置的多授权机构可以防止密钥泄露,增加系统的灵活性和安全性.但文献[11-13]并不提供用户的属性隐私保护.

从上述分析可以看出,多机构ABE方案一般通过保护用户GID来保护用户隐私,而很少考虑用户的其他属性泄露所引起的隐私问题.例如高校招生系统中,系统将考生的报考档案信息保存至云服务器,高校使用考生的姓名、身份证号、报考院校等加密考生的信息,访问策略如图1所示,但在这些属性中,身份证号和报考院校等都是较为敏感的信息,其内容涉及考生隐私,所有的属性信息都需要进行保护.已有的多机构ABE方案[6-11]大多数都是线性秘密共享(linear secret-sharing schemes, LSSS)技术,但是LSSS中分享矩阵如何表达访问控制策略并没有进行详细的描述.在标准假设下,LSSS矩阵和访问树结构都支持属性的与、或、门限操作,但是LSSS秘密分享矩阵构造相对复杂.而访问树通常利用拉格朗日多项式插值来实现,构造复杂度相对较低,因此基于访问树的ABE方案在应用中更为实用.

Fig. 1 General access policy图1 普通访问策略

结合文献[14]中的思想,本文基于访问树结构,提出一种支持隐私保护的多机构ABE方案,实现对用户属性的隐私保护,只利用属性名进行加密,从而有效保护用户的隐私,具体访问策略如图2所示:

Fig. 2 Partially hidden access policy图2 半隐藏访问策略

本文主要包括3点创新:

1) 将属性分为属性名和属性值2部分,加密时只针对属性名进行加密,而将属性值隐藏,解密时只需提供其属性值,看其是否满足该属性名下的属性值.

2) 采用半策略隐藏的方式进行加密访问策略的设置,加密时仅对与用户相关的属性进行加密,而不是对系统所有属性进行加密,改变了已有的隐私保护属性基加密方式.

3) 实现对用户所有属性的保护,不再单一通过对GID隐藏进行隐私保护,而是将GID作为用户的一种属性,通过保护属性保护用户的GID,实现对用户的隐私保护.

1 相关知识

1.1 双线性对

令G0,G1为2个阶为素数p的乘法循环群,g0为G0的生成元,存在双线性映射e:G0×G0→G1,且有3个特征:

1) 双线性.∀x,y∈p,∀m,n∈G0,有e(mx,ny)=e(m,n)xy.

2) 可计算性.∀m,n∈G0,存在有效算法计算e(m,n).

3) 非退化性.e(g0,g0)≠1.

1.2 访问结构

假定{p1,p2,…,pn}为参与方的集合,集合P⊆2{p1,p2,…,pn},若对于∀X,Y:若X∈P且X⊆Y,有Y∈P,则称P是单调的;访问结构是{p1,p2,…,pn}的非空子集P,即P⊆2{p1,p2,…,pn}{∅},包含在P内的集合是授权集合,不包含在P内的集合是非授权集合.

1.3 Shamir(t,n)门限秘密共享

Shamir(t,n)门限秘密共享[15]是将秘密s按一定的方法分成n个共享,任意t个共享都可恢复出s,其中t≤n;它是以一个t-1阶的多项式y=p(x)为基础的,其具体描述如下:

1.4 素数阶群上的判断双线性Diffie-Hellman假设(DBDH假设)

令G0,G1为2个阶为素数p的乘法循环群,g0为G0的生成元,存在双线性映射e:G0×G0→G1,随机选择a,b,c∈和V∈G1,给定元组判断V=e(g0,g0)a bc是否成立.如果对于任一多项式时间的敌手A的优势

2 算法定义与安全模型

2.1 算法定义

本文方案包括系统初始化Setup(1λ)、属性机构初始化Authority-Step(PP)、密钥生成KeyGen(PP,SKi,Auser)、加密Encrypt(PP,m,(A,T))、解密Decrypt(PP,CT,SKuser)这5个算法,具体如下:

1) 系统初始化Setup(1λ)→PP.系统初始化算法由系统执行,输入安全参数1λ,输出系统公共参数PP.

2) 属性机构初始化Authority-Step(PP)→(PKi,SKi).算法由属性机构执行,输入公共参数PP,输出属性机构的公私钥对.

3) 密钥生成KeyGen(PP,SKi,Auser)→SKuser.算法由机构与用户交互完成,输入公共参数PP、属性机构私钥SKi、用户属性值Auser,输出用户私钥SKuser.

4) 加密Encrypt(PP,m,(A,T))→CT.算法由用户执行,输入公共参数PP、明文m、访问结构(A,T),输出密文CT.

5) 解密Decrypt(PP,CT,SKuser)→m.算法由用户执行,输入公共参数PP、用户私钥SKuser、密文CT,输出明文m.

2.2 安全模型

本方案的安全模型是选择属性和选择明文攻击下的不可区分性(indistinguishability against selective attribute and chosen-plaintext attack, IND-sAtt-CPA)游戏,游戏中包含一个挑战者和一个敌手,挑战者模拟系统运行并回答敌手的询问.具体游戏如下:

1) 初始化.敌手选择要挑战的访问结构树(A,T*),并将它发送给挑战者.

2) 建立.挑战者执行Setup(1λ)和Authority-Setup(PP)算法,生成公共参数PP及属性机构的公私钥(PKi,SKi),并将PP及PKi发送给敌手.

3) 阶段1.敌手为其属性集合AD发出私钥请求,且AD⊄(A,T*),挑战者返回其私钥SKD.

4) 挑战.敌手发送2个等长的消息m0,m1给挑战者,挑战者随机选取c∈{0,1},对mc进行加密,返回Cc=Encrypt(PP,mc,(A,T*)).

5) 阶段2.敌手继续如阶段1一样地限制查询私钥.

6) 猜想.敌手输出对c的猜想c′∈{0,1}.

3 本文方案

方案将属性分为属性名和属性值2部分,假设系统的全部属性包括n个不同的属性名,且n=(a1,a2,…,an),每个属性名ai下有ni个不同的属性值Ai=(ai,1,ai,2,…,ai,ni),用户的属性集合为Auser=(a1:a1,t1,a2:a2,t2,…,an:an,tn),其中ai,ti∈Ai.假设系统有n个不同的属性机构AA1,AA2,…,AAn,属性机构AAi管理属性名为ai下的ni个属性值,ai,ni表示由机构AAi管理的属性名为ai的属性值.

1) 系统初始化.该算法输入安全参数1λ,输出系统公共参数PP={e,G,G1,g1,g2,p},其中g1,g2是循环群G的生成元,p为群的素数阶,双线性映射e:G×G→G1.

2) 属性机构初始化.该算法输入PP,输出机构AAi的公私钥对;属性机构AAi随机选择αi∈计算:Xi=e(g1,g1)αi;对其管理的属性名ai,随机选取ωi∈计算:对其下的每个属性值ai,ni,随机选择ωi,ni∈计算:

则: 属性机构公钥PKi={Xi,Yi,(Wi,ni)∀ai,ni∈Ai},

属性机构私钥SKi={αi,ωi,(ωi,ni)∀ai,ni∈Ai}.

3) 密钥生成.该算法由用户与属性机构AAi交互,属性机构首先检查用户的属性值ai,ti是否是其权限下的属性值,若不是,则输出⊥;否则,随机选择γi∈计算:

则用户私钥SKuser={Di,Di,ti}(1≤i≤n).

4) 加密.该算法输入明文m、访问结构(A,T),输出密文CT.利用Shamir门限秘密共享构造访问树,将叶子节点与加密者设置的属性名ai相对应,秘密共享如下:随机选取s∈设置访问树根节点为s,并标记该节点已分配,其孩子节点标记为未分配,对所有未分配的非叶子节点做3个操作.

① 若操作符为∨,且其孩子节点未分配,则为其孩子节点赋值s,并标记已分配;

② 若操作符为∧,且其孩子节点未分配,则随机选择si∈其中n为其孩子节点个数,第n个孩子节点赋值并标记已分配;

③ 若操作符为of,且其孩子节点未分配,则随机选取一个t-1阶的多项式p(x),令p(0)=s,利用Shamir(t,n)对s进行分割,其中t为门限值,n为孩子节点数,对其孩子节点赋值si=p(i),并标记为已分配.

同样,随机选取s′∈按上述方法进行分割,对叶子节点赋值.

令Aτ为叶子节点表示的属性名集合,IA为被选属性机构的索引集,对访问树的每个叶子节点进行计算:

则密文C=(CT,CT′).

5) 解密.解密时,算法首先计算满足访问结构(A,T)的最小子树min(A,T),确定解密者是否存在与最小访问子树相匹配的属性值,使得:

Δi(0)为拉格朗日系数,若存在,则计算:

否则,判断解密失败.

4 方案分析

4.1 安全性证明

定义2. 如果DBDH假设成立,则不存在任何多项式时间内的敌手攻击成功.

游戏开始前挑战者生成双线性群(e,p,G,G1),随机选择生成元g1∈G,a,b,c∈抛掷一枚均匀的硬币,得到数θ∈{0,1},如果θ=0,将发送给敌手,否则,发送给敌手,其中a,b,c,v∈挑战者与敌手的游戏如下:

1) 初始化.敌手选择要挑战的访问结构树(A,T*),并发送给挑战者.

2) 建立.挑战者随机选择xi∈令Xi=e(g1,g1)αi=e(g1,g1)abe(g1,g1)xi,显然αi=ab+xi,对于机构AAi,对其管理的属性名ai,随机选取ki∈若αi∈(A,T*),计算:其中ki=ωi;若αi∉(A,T*),计算:其中对其下的每个属性值ai,ni,随机选择ki,ni∈若ai,ni∈αi∈(A,T*),计算:其中ki,ni=ωi,ni;若ai,ni∈αi∉(A,T*),计算:其中则属性机构公钥PKi={Xi,(Yi)∀ai,(Wi,ni)∀ai,ni},属性机构私钥SKi={xi,(ki)∀ai,(ki,ni)∀ai,ni};挑战者将属性机构公钥PKi发送给敌手.

4) 挑战.敌手随机选择2个等长的消息m0,m1给挑战者,挑战者随机选取c∈{0,1},对mc进行加密.

① 计算:

挑战者将密文Cc=(C0,C1,C2,C3)发送给敌手.

5) 阶段2.敌手继续如阶段1同样地限制查询私钥.

6) 猜想.敌手输出对c的猜想c′∈{0,1}.如果c′≠c,则输出θ=1,V=e(g1,g1)v,此时敌手不能得到任何有用的信息,即敌手输出c′≠c的优势为Pr[c′≠c|θ=1]=12,所以敌手输出c′=c即猜出明文的优势为Pr[c′=c|θ=1]=1-Pr[c′≠c|θ=1]=12.如果c′=c,则输出θ=0,V=e(g1,g1)a bc,挑战者挑战成功,此时敌手的优势Pr[c′=c|θ=0]=

因此,敌手攻击DBDH假设的优势为

任何多项式时间内敌手赢得IND-sAtt-CPA游戏的优势是可忽略的,因此本文是选择明文攻击安全的.

4.2 性能分析

本文通过属性机构公钥长度、用户密钥、密文长度、加解密代价、隐私保护和安全性假设6个方面进行比较,结果如表1所示.其中n表示属性机构的个数,N表示系统属性个数,ni表示属性机构AAi所管理的属性个数,LG和LG1分别群G和群G1中一个元素的比特长度,Lver表示版本号的长度(文献[10]中引入了版本号),Auser和Acip分别表示用户和密文的属性个数,Icip表示加密时使用的属性所属的属性机构个数,ρ表示用户GID的大小,exp表示指数运算,e表示双线性映射,解密代价指解密运算的双线性对的次数.

Table 1 Comparison of Multi-Authority ABE Schemes表1 多机构ABE方案对比

从表1可以看出,本文方案提供对用户属性和GID进行保护;文献[6,10]仅仅是保护用户GID;文献[7]通过隐藏访问策略保护用户的隐私;文献[8]保护用户的GID及属性,这是首次提出保护用户属性的思想,但文献[9]证明其并不能很好地保护属性,本文方案将用户的属性分为属性名和属性值2部分,通过隐藏属性值保护用户的隐私,并将GID作为属性进行保护.从安全方面来看,文献[6]仅仅满足一般群模型下安全,而本文方案和文献[7,10]是满足DBDH假设的.

性能方面,本文在通信代价及计算代价两方面,与其他方案相比相对较优.通过对属性机构公钥长度比较,本文方案比文献[6-8]缩短了近乎一半,比文献[10]减少了1个版本号的长度.用户密钥长度方面,本文方案比文献[7-8]大大缩短,达到了文献[6]相同的长度.文献[10]中用户密钥尽管较短,但用户密钥的生成需要用户与n个属性机构运行匿名密钥生成协议生成,大部分计算由用户执行,计算量较大.密文长度方面,本文方案相比其他方案长度得到优化,仅与加密访问策略中属性个数和属性机构个数相关,而文献[7]与属性总个数呈线性相关,文献[10]与属性机构总个数相关,都远远大于本文方案.计算代价方面从加密计算和解密计算2部分进行分析,加密代价本文方案减少了指数运算和双线性映射的计算次数,比其他方案更显优势.解密代价方面,本文方案远远小于同样保护隐私的文献[7-8],仅和用户的属性个数相关,而文献[7-8]中如果每个属性机构管理的属性个数比较大,用户解密所付出的代价太大.虽然本文方案解密代价相比文献[6,10]略高,但是文献[6,10]并不提供对用户所有属性的保护.

综合分析,本文方案实现对用户所有属性的隐私保护,性能方面也有很大的提高,适用于实际应用中用户属性规模远远小于系统属性规模的情况.

5 结束语

针对云存储环境中敏感信息保护需求,本文提出一种支持隐私保护的多机构ABE方案,并证明其在标准模型下满足自适应性选择明文安全.本文方案中将属性分为属性名和属性值两部分,通过对属性值进行隐藏,仅仅对属性名进行加密,有效保护了用户的隐私,避免用户的具体属性值泄露给其他任何第三方,恶意的用户无法分析出任何潜在的隐私信息.与其他方案对比结果显示,该方案在计算代价和存储代价方面都有明显优势.

云环境中数据拥有者经常需要动态地更新访问策略,这种策略半隐藏方式有利于用户属性的动态更新,只需要对用户的属性值进行更新,属性名保持不变,下一步工作我们将针对策略更新进行深入地研究.

[1]Sahai A, Waters B. Fuzzy identity-based encryption[C]Proc of the 24th Int Conf on Theory and Applications of Cryptographic Techniques. Berlin: Springer, 2005: 457-473

[2]Chase M. Multi-authority attribute based encryption[C]Proc of Theory of Cryptography Conf. Berlin: Springer, 2007: 515-534

[3]Lin Huang, Cao Zhenfu, Liang Xiaohui, et al. Secure threshold multi-authority attribute based encryption without a central authority[C]Proc of Int Conf on Cryptology in India. Berlin: Springer, 2008: 426-436

[4]Müller S, Katzenbeissior S, Eckert C. On multi-authority ciphertext-policy attribute-based encryption[J]. Bulletin of the Korean Mathematical Society, 2009, 46(4): 803-819

[5]Chase M, Chow S S. Improving privacy and security in multi-authority attribute-based encryption[C]Proc of the 16th ACM Conf of Computer and Communication Security. New York: ACM, 2009: 121-130

[6]Lewko A, Waters B. Decentralizing attribute-based encryption[G]LNCS 6632: Proc of the 30th Int Conf on Theory and Applications of Cryptographic Techniques. Berlin: Springer, 2011: 568-588

[7]Xhafa F, Feng Jianglang, Zhang Yinghui, et al. Privacy-aware attribute-based PHR sharing with user accountability in cloud computing[J]. Journal of Supercomputing, 2015, 71(5): 1607-1619

[8]Han Jinguang, Susilo W, Mu Yi, et al. Improving privacy and security in decentralized ciphertext-policy attribute-based encryption[J]. IEEE Trans on Information Forensics and Security, 2015, 10 (3): 665-678

[9]Wang Minqian, Zhang Zhenfeng, Chen Cheng. Security analysis of a privacy-preserving decentralized ciphertext-policy attribute-based encryption scheme[J]. Concurrency & Computation Practice & Experience, 2016, 28(4): 1237-1245

[10]Qian Huiling, Li Jiguo, Zhang Yichen, et al. Privacy-preserving personal health record using multi-authority attribute-based encryption with revocation[J]. International Journal of Information Security, 2015, 14(6): 487-497

[11]Guan Zhitao, Yang Tingting, Xu Ruzhi, et al. Multi-authority attribute-based encryption access control model for cloud storage[J]. Journal on Communications,2015, 36(6): 116-126 (in Chinese)(关志涛, 杨亭亭, 徐茹枝, 等. 面向云存储的基于属性加密的多授权中心访问控制方案[J]. 通信学报, 2015, 36(6): 116-126)

[12]Tao Qi, Huang Xiaofang. Multi-authority ciphertext-policy attribute-based encryption scheme[J]. Journal of Wuhan University: Nature Science, 2015, 61(6): 545-548 (in Chinese)(陶启, 黄晓芳. 基于密文策略多机构属性基加密方案[J]. 武汉大学学报: 理学版, 2015, 61(6): 545-548)

[13]Wu Guangqiang. Multi-authority CP-ABE with policy update in cloud storage[J]. Journal of Computer Research and Development, 2016, 53(10): 2393-2399 (in Chinese)(吴光强. 适合云存储的访问策略可更新多中心CP-ABE方案[J]. 计算机研究与发展, 2016, 53(10): 2393-2399)

[14]Lai Junzuo, Deng Huijie, Li Yingjiu. Expressive CP-ABE with partially hidden access structures[C]Proc of the 7th ACM Symp on Information, Computer and Communications Security. New York: ACM, 2012: 18-19

[15]Ibraimi L, Tang Qiang, Hartal P. Efficient and provable secure ciphertext-policy attribute-based encryption schemes[C]Proc of the 5th Int Conf on Information Security Practice and Experience. Berlin: Springer, 2009: 1-12YanXixi, born in 1985. PhD. Member of CCF. Her main research interests include the digital rights management, digital content security.

LiuYuan, born in 1989. Master candidate. Her main research interests include network and information security, cryptography.

LiZichen, born in 1965. PhD. Professor. His main research interests include information security, electronic commerce, and cryptography.

TangYongli, born in 1972. PhD. Professor. Senior member of CCF. His main research interests include the cryptography algorithm detection, network and information security.

猜你喜欢
敌手挑战者密钥
“挑战者”最后的绝唱
幻中邂逅之金色密钥
幻中邂逅之金色密钥
与“敌”共舞
密码系统中密钥的状态与保护*
图解英国挑战者-2主战坦克
不带着怒气做任何事
TPM 2.0密钥迁移协议研究
建筑节能领域的挑战者 孟庆林
不带着怒气作战