基于属性加密(ABE),又称模糊的基于身份的加密(Fuzzyidentity-basedencryption),最先由Waters提出,也被看作是最具前景的支持细粒度访问的加密原语。
与以前的公钥加密方案,如RSA和身份基加密最大的不同点就是,ABE实现了一对多的加解密。不需要像身份加密一样,每次解密都必须知道接收者的身份信息,在ABE中它把身份标识被看做是一系列的属性。当用户拥有的属性超过加密者所描述的预设门槛时,用户是可以解密的。但这种基于预设门槛的方案不具有通用性。因为在语义上无法表述一个普遍通用的情景。
基于属性加密主要分为两大类:密文策略的属性加密(CP-ABE)和密钥策略的属性加密(KP-ABE)。在CP-ABE中密文和加密者定义的访问策略相关联,密钥则是和属性相关联;在KP-ABE中密文则是和属性相关,而密钥与访问策略相关联。属性加密算法一般包含四个部分:
加密是应用了大量的
双线性映射,而双线性对的计算比较消耗时间,这成为属性加密实际应用的一个难题,相信随着计算机硬件的不断提升,这个问题会得到解决。根据《
基于配对的密码学》一书指出,一次双线性对运算大约需要消耗16.064ms。