基于属性的加密

更新时间:2023-07-03 20:24

基于属性加密(ABE),又称模糊的基于身份的加密(Fuzzyidentity-basedencryption),最先由Waters提出,也被看作是最具前景的支持细粒度访问的加密原语。

方案简介

与以前的公钥加密方案,如RSA和身份基加密最大的不同点就是,ABE实现了一对多的加解密。不需要像身份加密一样,每次解密都必须知道接收者的身份信息,在ABE中它把身份标识被看做是一系列的属性。当用户拥有的属性超过加密者所描述的预设门槛时,用户是可以解密的。但这种基于预设门槛的方案不具有通用性。因为在语义上无法表述一个普遍通用的情景。

基于属性加密主要分为两大类:密文策略的属性加密(CP-ABE)和密钥策略的属性加密(KP-ABE)。在CP-ABE中密文和加密者定义的访问策略相关联,密钥则是和属性相关联;在KP-ABE中密文则是和属性相关,而密钥与访问策略相关联。属性加密算法一般包含四个部分:

Setup阶段:也称系统初始化阶段,输入系统安全参数,产生相应的公共参数(PK)和系统主密钥(MK);

KeyGen阶段:也称密钥生成阶段,解密用户向系统提交自己的属性,获得属性相关联的用户密钥(SK);

Enc阶段:也称加密阶段,数据拥有者对数据进行加密得到密文(CT)并发送给用户或者发送到公共云上;

Dec阶段:也称解密阶段,解密用户获得密文,用自己的密钥SK进行解密。

属性加密的优点

(1)、解决了对称加密密钥传输带来的密钥泄露的问题,因为对称加密的加密密钥与解密密钥相同。

(2)、实现了加密数据的细粒度访问控制,即数据拥有者可以指定谁可以访问加密的数据,数据拥有者对数据具有完全的控制权。

属性加密的缺点

加密是应用了大量的双线性映射,而双线性对的计算比较消耗时间,这成为属性加密实际应用的一个难题,相信随着计算机硬件的不断提升,这个问题会得到解决。根据《基于配对的密码学》一书指出,一次双线性对运算大约需要消耗16.064ms。

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}