收敛加密(CE)是一种对称加密算法,目前已被证明满足PRV$-CDA安全性。
严格地讲,symmetric encryption加密算法本身通常都是randomized或者stateful,即除了key之外,算法本身会生成一些随机数(例如Initialization vector或IV),或者维护一个计数器之类的状态,这样即使多次加密同样的信息也会有不同的结果,目的还是为了获得类似semantic security这样的安全性。这里CE的做法可以理解为h(x)输出的一部分作为key,另外一部分作为算法所需的随机数(如IV)。这样做的结果是,不管是哪个用户加密,同样的数据块一定会被加密成同样的密文,后续可以做去重了。CE已经被广泛应用于很多研究[14, 7]和商业系统中比如Freenet [5], GNUnet [6], flud [4], Ciphertite [2], Bitcasa[1]等。
注:熵是一种不确定性的度量。
云存储系统中使用支持去重的加密问题的主要挑战有两点:
1. 加密之后的密文需要保留原文的冗余,即原文相同的数据块加密后的密文仍相同(这里的相同不一定是密文的全等,系统只要一种识别包含相同内容的密文的手段即可),这样去重才能够起作用。
2. Cross-user decryption (CUD),即由某个用户加密上传的数据块应该能够被所有有读取权限的用户解密,即使后者不是最初的上传和加密者。
所有权证明协议发展:
Halevi等人在2003年提出