支持策略隐藏的属性基加密不仅可以保护明文,还可以保护用户的敏感信息。现有方案对访问结构有所限制,策略表达能力比较弱。本文提出一种隐藏访问策略的属性基加密方案,通过将访问结构转换成属性列表,然后对属性列表加密处理实现了策略隐藏,并且该方案对访问结构没有任何的限制。此外,将部分解密计算外包,减轻了用户的计算负担。分析表明,新方案在实现策略隐藏的同时增强了策略表达
随着云存储的发展, 越来越多的企业选择在云上存储数据, 而不是花费昂贵的费用来购买存储设备。
然而云存储目前最大难题之一就是安全隐患[1],为了保证数据的机密性,Shamir 和Bonehe [2]首次提出了身份加密机制的概念,在加密明文前,数据拥有者需要知道用户的身份信息,用户解密密钥和用户的身份信息相关联,该机制为公钥密码体系的一对一加密。在实际应用中常常需要一对多的加密模型,例如数据拥有者共享的数据多个用户都可以解密查看。Sahai 和Waters [3]首次提出了模糊身份基加密,增加了访问控制策略[4],用属性来标记用户身份信息,实现了公钥密码体系的一对多加密。随后Goyal 等人[5]将基于属性加密体制分为密文策略ABE (CP-ABE)和密钥策略ABE (KP-ABE)两种。
在CP-ABE 中, 数据拥有者具备制定策略的权利,密文和加密者定义的访问策略相关联,密钥则是和属性相关联;在KP-ABE 中密文则是和属性相关, 而密钥与访问策略相关联。
属性基加密要求将访问策略在明文中公开, 攻击者可以根据访问策略推测出用户的敏感信息,从而泄露用户隐私。
随着近年来对属性加密方案的研究[6] [7],为了进一步保护用户信息的安全性,Nishide 等人[8]提出了一个隐藏访问策略的加密方案,将访问策略隐藏在密文中,实现了在保护消息机密性的同时保护了访问策略,但该方案只支持“与”操作,访问策略的可表达性受到较大影响。Lai 等人[9]在合数阶双线性群上提出一种在标准模型下证明是完全安全的隐藏访问结构的CP-ABE 方案。
文献[10] [11]提出了可支持任意门限或者布尔表达式的属性基加密方案, 增加了访问结构的灵活性。
宋衍等人[12]提出了一种基于访问树的策略隐藏属性加密方案,该方案是通过定义末端节点实现访问策略的隐藏,并证明是自适应安全的。基于属性基加密的方案中,往往用户需要大量的计算才能够获得明文,为了提高计算效率,Green等[13]提出了带外包解密的属性基加密概念,将部分计算交给云服务器计算。Lai 等人[14]提出了改进的带可验证的外包解密的属性基加密概念,从用户可以验证云服务器计算的是否正确。文献[15] [16] [17]相继提出了一些基于外包解密的ABE 方案。
本文在文献[12]的基础上,通过将树型访问结构转换成属性列表,取消了文献[12]中定义的末端节点只能表示与的限制。
采用分割加密的思想, 将访问策略加密和明文加密分别加密, 实现访问策略的隐藏。
用户只能判断自己是否符合访问策略,但无法知道具体的访问策略是什么,在解密步骤通过引入了外包计算简化用户的计算开销,提高了解密效率。
2. 预备知识 2.1. 双线性映射 设G1, G2 是阶为素数p 的循环群,*pZ 表示模p 循环群, g 是G1 的生成元。
112:e G XGG→是从(G1, G1)