紅岸智能 周雪松新系列知識點
Convergent Encryption的弱點
在MLE的框架下,CE被證明滿足PRV$-CDA安全性 [13]。這是一個有重大意義的成果,人們終於能夠準確刻畫一個已經被廣泛使用的技術的安全性了。萬事大吉了嗎?NO!至少還剩下兩個問題:
1. PRVCDA安全性對於存儲系統來說是否足夠強?2.是否還有可能獲得比PRV-CDA更強的安全性?
對1,我們的判斷是否定的。首先,我們知道,MLE智能保護具有比較高的不可預測性的數據。而在雲存儲系統的實際使用中,很多用戶數據恰恰是可預測。比如說很多公司的文檔都有共同的模板和格式,這可能導致有些數據塊只可能有很少的取值可能。其次,即使數據的不可預測性很高,對手仍然可以很容易地驗證一個信息:判斷給定的密文是否加密了一個來自於一個不大的集合的數據。只要將該集合內的所有元素分別加密後與給定密文比較即可。在很多情況下,這一信息可能是非常嚴重的洩露。例如,雲存儲的提供商可以很容易判斷一個用戶的加密數據中是否包括某些受版權保護的電影。
對於第二個問題,最新的研究給出的答案是肯定的。我們的CCSW』14工作指出,所有的CE或MLE,有一個關鍵的特性是public encryption,即任何一個人,只要拿到數據,就可以生成合法的密文。所有public encryption的MLE的安全都依賴於數據本身的隨機性,再加上MLE允許equality checking,這就決定了MLE只能保護具有足夠大的min-entropy的數據這一局限性。PRV$-CDA的定義對數據分布做了明確的限制。那麼這種局限是否可以突破呢?答案是肯定的。MLE之所以採取public encryption的模式,是考慮到不同的用戶需要獨立地完成數據加密,並且需要同樣的數據產生同樣的密文。
完成這一目標還可以採用另外一種server assisted模式。即引入一個第三方的服務,該服務協助用戶生成加密所需要的數據(key和IV等),並保證去重所需要的convergent特性。引入一個第三方的服務的好處是,該服務可以使用所有用戶都不知道的秘密數據(比如另外一個key)。這就意味著加密過程不再是公開的,從而杜絕前面提到過的問題。DupLESS [12]和我們最新的工作都是這方面的思路。