石宇清,凌 捷
广东工业大学 计算机学院,广州 510006
随着云计算技术的快速发展和广泛应用,越来越多的企业和个人将数据存储在云中以减少本地的存储和管理开销。然而,云服务提供商通常被认为是不受信任的,可能会对用户的数据内容感到好奇,甚至擅自将数据泄露给数据所有者的竞争对手以获取不当利益。因此,如何保护用户的敏感数据就显得尤为重要。一种可行的方法是将数据进行加密存储。传统的公钥加密技术虽然允许用户将数据秘密分享给一个指定用户,但是无法实现细粒度的访问控制。文献[1]首次提出了属性基加密(Attribute-Based Encryption,ABE)的概念,这种可扩展的一对多加密机制为云存储提供了良好的安全性和细粒度访问控制。文献[2]将ABE 分为密钥策略 ABE(Key-Policy ABE,KP-ABE)和密文策略ABE(Ciphertext-Policy ABE,CP-ABE)。
然而,传统的CP-ABE 方案中存在私钥泄露的问题:多个授权用户可能拥有相同的属性集,导致一个解密私钥可能会对应多个用户,因此用户敢于非法共享其私钥以获取不当利益而不受追责。从而,对泄露的私钥进行追踪并定位泄露源就显得尤为重要。
此外,在传统的CP-ABE 方案中,访问策略由访问结构表示,用于加密消息,并与密文一起显式发送。任何获得密文的人都知道相关的访问策略,而访问策略通常包含敏感信息。例如,一份病历通过CP-ABE机制加密,它的策略是只允许心脏病科专家访问,这条策略暴露了这份病历的病人极有可能心脏方面有问题。在类似场景中,出于隐私性的考虑,策略隐藏就显得十分必要。
文献[3-4]首先研究了CP-ABE中的密钥追踪问题,文献[5]提出了隐藏访问策略的CP-ABE方案,但是三者仅支持“与”门和通配符表达的访问策略,且安全性与效率均不高。为此,文献[6]提出了支持策略隐藏的完全安全的CP-ABE方案,能够处理任意可以表示成线性秘密共享方案(Linear Secret Sharing Scheme,LSSS)的访问结构。文献[7]提出了一种称为“match-then-decrypt”的方法,在解密阶段之前引入一个匹配阶段,通过生成冗余密文组件,在不进行解密的情况下,测试解密私钥中的属性是否与密文中隐藏的访问策略相匹配,以提高解密效率。文献[8-9]在合数阶群下分别提出了支持白盒可追踪(根据泄露私钥的具体组件对恶意用户进行追踪)和黑盒可追踪(通过包含泄露私钥的解密设备的输入输出特性对恶意用户进行追踪)的CP-ABE 方案,二者均支持策略的高表达力,并证明了在标准模型下方案的适应性安全。但是,文献[8]需要维护一个记录用户的列表来实现白盒可追踪,其用于追踪的存储开销随着系统用户的增加而线性增长。因为合数阶群的困难假设通常基于大整数分解的困难性,在相同的安全级别下,合数阶群中元素的比特长度要高于素数阶群中元素的比特长度,所以合数阶群上的计算开销要高于素数阶群。因此,文献[10]在素数阶群下提出了支持大属性域的白盒可追踪CP-ABE方案,并且消除了文献[8]中用于记录用户的列表,仅需在系统初始化时记录一小部分预先设定的参数即可,从而使追踪的存储开销降至常数级。相比于小属性域构造的方案,支持大属性域构造的方案,其系统属性域不需要在系统建立时确定,而且公共参数的大小并不随着属性的数量线性增长。文献[11]提出了支持属性撤销的策略隐藏与层次化访问控制方案,既保护了访问策略的隐私,又实现了属性的撤销,同时减少了单一授权的负担和风险。文献[12]在合数阶群下提出了一个支持大属性域和高表达力的策略隐藏CP-ABE 方案,证明了在标准模型下方案是完全安全的。文献[13]在合数阶群上构造了完全安全的白盒可追踪的CP-ABE方案,用于追踪的存储开销极低。但上述文献中,文献[3-4,8-10,13]均不支持策略隐藏,文献[5-7,11-12]均不支持密钥追踪。为此,文献[14]提出了支持白盒可追踪的策略隐藏CP-ABE 方案,文献[15]基于多属性授权机构提出了黑盒可追踪的策略隐藏CP-ABE方案。虽然文献[14-15]都在素数阶群中构造,但是都只支持带有通配符的多值“与”门的访问结构,并且仅达到标准模型下的选择性安全,访问策略的表达能力以及安全性都比较弱。
针对上述问题,本文在合数阶群下提出了一个隐藏访问策略的可追踪CP-ABE(Policies Hiding and Traceable Ciphertext-Policy Attribute-Based Encryption,PHT-CP-ABE)方案,证明了在标准模型下方案是完全安全和可追踪的。这是一个同时满足大属性域、高表达力和完全安全性的隐藏访问策略的可追踪CP-ABE 方案。本文使用线性秘密共享矩阵来表达访问结构,将用户的身份信息嵌入到该用户的私钥中实现可追踪性。为实现策略隐藏,将用户属性集S拆分为属性名集合IS=ℤN和属性值集合V={vi}i∈IS,即S=(IS,V)。利用解密测试技术提高解密效率,并且在标准模型下基于子群假设和q-SDH假设证明方案的完全安全性和可追踪性。
本文方案的特点包括以下六点:
(1)可追踪。追踪算法能够追踪到泄露或非法共享私钥的恶意用户的身份,并且不需要维护记录用户的列表,也不需要引入其他额外的参数,用于追踪的存储开销极低。
(2)策略隐藏。访问策略中的特定敏感属性值隐藏在密文中,只有通用属性名与密文一起发送。
(3)解密效率高。在完全解密之前,生成冗余密文组件来添加解密测试以提高解密效率,该测试仅涉及属性匹配检测中的少量双线性配对操作。
(4)大属性域。系统属性域不需要在系统建立时确定,而且公共参数的大小并不随着属性的数量线性增长,提高了方案的可扩展性。
(5)完全安全。敌手在知道公共参数之前不需要声明要攻击的访问结构,可以证明方案在标准模型下是抗自适应敌手的。完全安全又称为适应性安全。
(6)高表达力。访问策略支持任意单调访问结构,能够支持灵活的访问控制。
表1 与4个相关方案的特征比较
表2 与4个相关方案的性能比较
表1 和表2 分别给出了文献[12-13]的方案、已有的隐藏访问策略的可追踪CP-ABE方案[14-15]和本文提出的PH-T-CP-ABE 方案的特征对比和性能对比。表2 中的表示属性域大小,|S|表示私钥对应属性集的大小,l表示访问策略中涉及的属性数,EG表示群G中的指数运算,ET表示群GT中的指数运算,—表示无此过程,P表示对运算,|I|表示私钥中满足密文访问策略的属性个数,ρ表示用户全局身份标识的位长度。与群G和GT中的运算相比,ℤN中的运算开销很小,因此表2中忽略了ℤN中的运算开销。
从表1中可以看出,文献[12-13]的方案仅支持策略隐藏或可追踪,虽然文献[14-15]的方案同时支持策略隐藏和可追踪,但是不支持大属性域,访问策略表达能力受限(仅支持带通配符的多值“与”门),安全性也不够高。相比于上述相关方案,本文方案同时支持策略隐藏、可追踪和大属性域,访问策略表达能力和安全性都有所提高,并且利用解密测试以提高解密效率。
从表2 中可以看出,本文方案支持大属性域,即本文方案的公共参数大小不随属性域大小线性增长,而文献[13-15]的方案的公共参数大小随着属性域大小线性增长。文献[12]仅支持策略隐藏,文献[13]仅支持密钥可追踪,而本文方案以可接受的代价,同时实现策略隐藏和可追踪。本文方案通过生成冗余密文实现解密测试,为了同时实现策略隐藏和可追踪,密文相较于文献[14-15]的方案要大,对应的加密开销也有所增加。但是在解密测试阶段仅需4个对运算,便能大幅度地减少完全解密时的运算开销,从而提高解密效率。
本文基于合数阶群提出了一个隐藏访问策略的可追踪CP-ABE 方案。方案不仅可以追踪泄露解密私钥的恶意用户,还可以隐藏访问策略以保护隐私;通过解密测试,在完全解密之前检测属性是否匹配隐藏的访问策略,以提高解密效率;证明了在标准模型下方案是完全安全和可追踪的;对比分析结果表明,本文方案在解密运算方面有所优化,从而降低了解密运算的开销,提高了效率。此外,本文方案支持策略的高表达力以及大属性域,具有良好的扩展性。但本文方案只能进行白盒追踪,因此进一步的研究工作是设计能够进行黑盒追踪的方案。