APP下载

改进的属性撤销权重属性基加密方案

2018-02-07储转转王志伟

计算机工程与应用 2018年3期
关键词:密文解密密钥

储转转,王志伟

南京邮电大学 计算机学院/软件学院,南京 210003

1 引言

PHR系统是一个以患者为中心的健康信息的访问、存储和交流的系统[1-3]。由于新型网络环境的兴起,促进了PHR系统的快速发展。PHR系统能够让患者和医生之间联系和交流更紧密、更具有持续性,医生可以及时地得到患者的健康信息并给予患者及时诊断和医治。然而,当前PHR系统还面临一些急需解决的问题。比如PHR系统中存储有患者和医生的敏感信息,这关系到个人信息的安全、隐私等问题。其次,在使用移动终端设备访问PHR系统时资源受限,因此密码学方案需要考虑移动终端设备的计算量。此外,在PHR系统中,用户是动态地加入或离开,但在密文策略的属性基加密中,密钥是与属性集相关的,一旦用户动态地改变,相应用户的属性集也改变。用户属性一旦撤销,相应的该用户应该失去相对应解密密文的能力,所以方案设计需要考虑属性撤销问题。每个用户拥有很多属性,不同的用户相同的属性应该具有不同的角色地位。所以,设计方案时,可以考虑引入属性的权重概念,更加迎合PHR系统的需要。

ABE(Attribute-Based Encryption,属性基加密)的雏形是来源于2005年,由Sahai和Waters[4]提出的FIBE(Fuzzy Identity-Based Encryption,模糊的基于身份的加密)的概念,ABE提供了细粒度的密文访问控制,即,如果用户的属性集与访问结构能够匹配可以解密密文。2006年Goyal等人[5]将FIBE的概念进一步扩展为一般的ABE,对此提出并发展为两个研究分支:一个是KP-ABE(Key-Policy ABE,密钥策略的属性基加密)[5],密钥与访问策略有关,密文和用户的属性集有关;另一个是CP-ABE(Ciphertext-Policy ABE,密文策略的属性基加密)[6],密文与访问策略有关,密钥和用户的属性集有关。当新环境的不断变化,ABE模型也需要不断地发展和改进,以符合实际应用。此后,ABE得到较大发展,主要有多机构ABE、可追踪ABE和可撤销ABE。对于可撤销ABE来说,最初Pirretti等人[7]给出的解决方案是通过给每个用户额外颁发一个额外的终止日期的属性来限制密钥的使用时间。随后也有很多撤销的ABE方案[8-9]被提出,但都是把用户作为最小单位进行撤销,即每次撤销一个用户,而不是在撤销一个用户的某些属性的同时,允许用户的其他的有效属性仍然可以用来解密。Waters[10]提出了一个密文策略的功的属性基加密方案,但没有考虑属性撤销和用户外包解密的问题。随后,Wang等人[11]提出的改进方案,使其具有外包解密和属性撤销的功能,但该方案的属性撤销是仲裁者预先存有一张属性撤销列表,在解密阶段首先判断属性是否撤销才决定是否解密,不能做到及时的属性撤销。Hur等人[12]和Xie等人[13]提出的方案可以实现属性的及时撤销,但密文和密钥的更新使得方案的效率不高。此外,现有的方案很少有考虑到属性的重要性,但在实际应用中,每个属性有不同的角色和地位,属性带有权值具有实际意义。PHR系统是对用户开放的,合法的用户都可以去访问。但是不同角色和地位的用户应该有不同的访问权限。比如,职位属性都为医生的两个访问用户,不同的年龄应该对应不同的权限,年龄越大的医生应该要比年龄小的医生更有经验,相应的经验丰富的人的权限应该比经验少的人拥有高一点的访问权限。因此引入属性的权值概念更加适合PHR系统的需要。Jin等人[14]提出用链状权重秘密共享方案来构造属性基加密,但是用链状Mignotte序列来构造访问控制树局限性比较大;后来刘等人[15]提出了权重属性概念,将其引入到密文策略属性基加密方案中。

基于以上分析,本文基于Wang等人[11]提出的方案,利用Hur等人提出方案中的KEK树的性质,提出了一种可以及时撤销的密文策略属性基加密方案,使得方案不仅因外包解密减少了用户端计算量,而且使得属性撤销更加细粒度化;此外,将权重属性概念引入到本文方案中,使得方案更加适合当下新型网络环境下的PHR系统。

2 准备知识

2.1 双线性映射

假设G和GT是两个阶为素数p的循环群,其中G是加法群,GT是乘法群。双线性映射e:G×G→GT同时满足以下三个特征:

(2)非退化:∃g1,g2∈G,有e(g1,g2)≠1。

(3)可计算:∀g1,g2∈G,都有有效的算法计算e(g1,g2)的值。

2.2 访问结构

2.3 LSSS(Linear Secret Sharing Scheme 线性秘密共享)方案

(1)每个参与者的秘密份额λi来自于ZP上的一个向量。(2)随机选择一个列向量其中是 待 共 享 的 秘 密 ,计 算是待共享的秘密s的第i个秘密份额,秘密份额λi属于参与者f()i。

线性秘密共享方案满足以下性质:假设方案π是访问结构A上的一个秘密共享方案,F∈A,F是授权的属性集合,定义如果{λi}是待共享的秘密s的有效秘密份额,则一定存在常数,使得

2.4 KEK(Key Encryption Key,密钥加密密钥)树

KEK树是指基于用户的二叉树,它可以为未撤销用户提供密钥更新信息,未撤销用户利用密钥更新信息更新自己的私钥,从而实现解密。如图1所示,假设系统中所有用户的集合为是拥有属性θk的用户集合,称为属性群。PHR系统按以下方式构造KEK树,为P中每个用户分发属性密钥:

(1)将P中每个用户都分布到二叉树的叶子节点,为每个节点vj都生成一个随机数存储 ,记为KEKj。

(2)每个叶子节点到根节点所经过的节点的密钥KEK集合即为每个用户ut∈U的路径密钥,记为Kut。例如:用户u2所存储的路径密钥为

(3)能够覆盖属性群Gk中所有用户的最小的节点集合称为Gk的最小覆盖元,记为KEKGk。例如:Gk=

(4)KEKGk与Kut的交集可以得到:每个用户ut∈Gk且拥有唯一的KEKj。

图1 KEK树

3 方案设计

3.1 方案模型描述

本文所描述的系统模型如图2所示,该系统模型由5部分构成:PHR数据拥有者、PHR系统、外包解密仲裁者、可信第三方PPT和访问用户。PHR数据拥有者将密文上传到PHR系统中,PHR系统为用户生成KEK树。当某一用户想要访问PHR系统时,可信第三方分别为仲裁者和用户分发密钥,然后仲裁者先对密文进行预解密得到半明文T,以此减少用户端计算量,最后用户再利用自己的私钥对预解密得到的半明文进行最终的解密而得到明文。

图2 模型示意图

3.2 改进算法描述

本文的改进方案由8个算法组成,如下所示:

(1)属性分割:由属性机构运行。属性集分割算法输入系统中的所有属性集中的属性。对于属性集F中的每个属性attj,分配属性attj允许在系统中的最大权值为ηk=weight(atti),注意到这里的权值仅为整数。将属性集F中的每个属性atti,依据权重进行分割,分割后的属性atti对应于( )atti,1,设定分割后的最小份额为1,其构成的集合称为属性权重的分割集F*,将其输出。

(2)系统建立:由属性机构运行。系统建立算法输入安全参数λ,并定义属性权重的分割集F*中的全体元素。该算法生成一个阶为素数p的群G和GT,g为G的生成元。记双 线 性 映 射e:G×G→GT。随机选择a,α∈Zp,h1,h2,…,hz∈G(h1,h2,…,hz与属性权重的分割集F*相关)。然后,输出主公钥主私钥MSK=gα。最后,设属性群集G={}Gkθk∈F,其中Gk是拥有属性θk的用户集合,将其发送给PHR系统。

(3)密钥生成:密钥生成算法由一个可信第三方执行。该算法输入属性权重的分割集F*,主私钥MSK。随机选择t∈ℤp,uid1和uid2,使得uid1-uid2=1。然后,输出两个私钥对,最后,将第一个秘密分派给仲裁者,第二个秘密分派给用户。

(4)数据加密:由PHR数据拥有者运行。加密算法输入主公钥MPK,属性权重的分割集F*,秘密共享方案(其中函数f将属性权重的最小份额与M中的行对应起来。将矩阵中的第j个位置对应于属性atti的第ηk个权重分割位置,即f(i)→(a tti,ηk))和消息m。随机选择s∈ℤp和向量V=( )s,v2,v3,…,vn,其中i=2,3,…,n。 然 后 计 算 λi=Mi⋅V 。 随 机 选 择输出密文其中i=[n]。PHR数据拥有者将密文存储到PHR系统。

(5)密文更新:假设Gk中的成员发生变化,即假设某一用户ut获得或者失去属性θk。当属性机构接收到属性群变化的请求后,将更新后的属性群发送给PHR系统。随机选择属性群密钥根据KEK树的构造Kut。该算法输出更新后的密文

(6)密钥更新:假设Gk中的成员发生变化,即假设某一用户ut获得或者失去属性θk,根据KEK树的性质拥有属性,PHR数据提供者将属性群密钥Sf()j秘密发送给TTP。TTP则输出更新后的密钥,并将更新后的密钥发送给仲裁者。

(7)预解密:此算法由仲裁者执行。假设属性权重的分割集F*满足访问结构(M ,f),若密文没有更新,则仲裁者预解密同Wang等人的方案;若密文已更新,则使用更新后的密钥进行预解密得:

(8)解密:此算法由用户执行。若密文是原始密文预解密的,则用户解密同Wang等人的方案;若密文是更新后的密文预解密的,则用户计算:然后用户可以从密文中得到明文m。

4 方案分析

4.1 安全性分析

数据的机密性:一方面,在PHR系统中,根据LSSS方案线性重组的性质,如果访问用户的属性集不能满足密文的权重访问结构,则不存在常数ωi,使得此时由于不能恢复秘密值s,仲裁者不能解密得到T,因此用户就不能解密得到最终明文m;另一方面,仲裁者没有私钥SKF*,2,只能预解密,所以不可信的仲裁者不能解密T得到明文m;并且,由于向量V中s的随机选取,因此仲裁者不能根据预解密出来的半密文得到与明文相关的信息。

抗共谋攻击:在本文方案中,即使多个恶意用户相互共用私钥,且满足密文的访问结构,仍然不可以解密密文。因为,在密钥生成阶段,为每个用户随机选择不同的值t、uid1和uid2,随机化了用户私钥。这样每个用户可以计算出自己相应的,但不能得到

前向、后向安全:当某一用户离开属性群,属性机构将变化的属性群发送给PHR系统,PHR系统更新属性群密钥,根据KEK树的构造可知,离开的用户将不能解密密文获取属性群密钥,也就无法让PPT更新相应的私钥,因此,用户就不能最终解密得到明文;同样的,当某一用户加入PHR系统,PHR系统收到属性机构的属性变化发起后,更新属性群密钥,根据KEK树的构造可知,加入的用户将能解密密文获取属性群密钥,让PPT更新相应的私钥,因此,用户就能最终解密得到明文。

4.2 性能分析

本文方案与其他方案做了功能上的比较,如表1所示。

表1 功能比较

表1的结果表明,本文方案相较于其他方案,功能上有显著改进,不仅具有外包解密,大大减少资源受限用户端的计算量;而且具有灵活的属性撤销,做到了属性层次的及时撤销;并且引入权重属性的概念。方案功能上的改进更加丰富了基于Intel Edison开发芯片(该芯片是Intel公司推出的智能硬件产品,内包含有Yocto Linux操作系统,可将C++程序导入该芯片运行)做了本文方案的实验:将芯片作为资源受限的用户端,结合一台笔记本电脑进行实验,针对该方案的各个阶段,进行了各个阶段随着属性个数的增加,运行时间上的变化进行统计分析,如图3所示。

本文方案与其他方案算法的一些阶段进行了计算量规模上的比较,如表2所示。

表2 计算量比较

表2中的各字母代表含义:m代表访问结构上的属性;|G|代表群G上的幂运算;|GT|代表双线性对运算;dl代表双线性对运算。由实验统计分析结果和表2的比较结果可以看出,本文方案相较于其他方案,在密文更新和密钥更新以及用户端解密阶段的计算量规模都很小,并且都是常量级。

图3 各阶段的运行时间

5 结束语

本文在Wang等人提出方案的基础上进行了改进,结合了Hur方案中KEK树的性质和刘等人提出的权重属性的概念,使得改进的方案在功能上不仅具有外包解密,还可以做到细粒度的属性及时撤销。并且属性带有权重特征,更加适合大数据、物联网、云计算的新型网络环境下PHR系统的需求。同时,改进方案能够保证数据的安全和用户的隐私信息。同其他方案对比,本文方案在功能和性能上都有较大程度提高。

[1]U.S.Department of Health and Human Services National Institutes of Health National Cancer Institute.Personal health records and personal health record systems[EB/OL].[2014-05].http://ncvhs.us/wp-content/uploads/2014/05/0602nhiirpt.pdf.

[2]Tang P C,Ash J S,Bates D W,et al.Personal health records:definitions,benefits,and strategies for overcoming barriers to adoption[J].Journal of the American Medical Informatics Association,2015,13(2):121.

[3]The US Department of Health and Human Services.Sumamary of the HIPAA privacy rule[EB/OL].[2003].https://www.hhs.gov/hipaa/for-professionals/privacy/lawsregulations/index.html.

[4]Sahai A,Waters B.Fuzzy identity-based encryption[C]//Advances in Cryptology-International Conference on Theory&Applications of Cryptographic Techniques,EUROCRYPT 2005.Berlin Heidelberg:Springer,2005:457-473.

[5]Goyal V,Pandey O,Sahai A,et al.Attribute-based encryption for fine-grained access control of encrypted data[C]//ACM Conference on Computer and Communications Security,CCS 2006,Alexandria,Va,USA,2006:89-98.

[6]Bethencourt J,Sahai A,Waters B.Ciphertext-policy attribute-based encryption[C]//IEEE Symposium on Security&Privacy,2007,2008(4):321-334.

[7]Pirretti M,Traynor P,McDaniel P,et al.Secure attributebased systems[C]//Proceedings of ACM Conference on ComputerandCommunicationsSecurity.Alexandria:Springer,2006.

[8]Yu Shucheng,Ren Kui,Lou Wenjing.FDAC:Toward finegrained distributed data access control in wireless sensor networks[J].IEEE Transactions on Parallel and Distributed Systems,2011,22(4):673-686.

[9]Luan I,Petkovic M,Nikova S,et al.Mediated ciphertextpolicy attribute-based encryption and its application[C]//International Workshop on Information Security Applications,Wisa Busan,Korea,August 25-27,2009:309-323.

[10]Ostrovsky R,Sahai A,Waters B.Attribute-based encryption with non-monotonic access structures[C]//ACM Conference on Computer&Communications Security,CCS 07,2007:195-203.

[11]Wang Z,Chu Z.Efficient mediated ciphertext-policy attribute-based encryption for personal health records systems[J].Journal of Internet Technology,2015,16(5).

[12]Hur J,Noh D K.Attribute-based access control with efficientrevocation in dataoutsourcing systems[J].IEEE Transactions on Parallel&Distributed Systems,2011,22(7):1214-1221.

[13]Xie X,Ma H,Li J,et al.An efficient ciphertext-policy attribute-based access control towards revocation in cloud computing[J].Journal of Universal Computerence,2013,19(16):2349-2367.

[14]Jin Lianwen,Wei Gang.Handwritten Chinese character recognition with directional decomposition cellular features[J].Journal of Circuits System&Computers,1998,8(4):517-524.

[15]刘西蒙,马建峰,熊金波,等.密文策略的权重属性基加密方案[J].西安交通大学学报,2013,47(8):44-48.

猜你喜欢

密文解密密钥
一种支持动态更新的可排名密文搜索方案
基于模糊数学的通信网络密文信息差错恢复
炫词解密
解密“一包三改”
密码系统中密钥的状态与保护*
炫词解密
TPM 2.0密钥迁移协议研究
一种对称密钥的密钥管理方法及系统
一种基于密文分析的密码识别技术*
云存储中支持词频和用户喜好的密文模糊检索