摘要
本文主要講述完全同態加密算法。
1. 是什么?
同態加密是一種對稱加密算法,由Craig Gentry發明提出。其同態加密方案包括4個算法,即密鑰生成算法、加密算法、解密算法和額外的評估算法。全同態加密包括兩種基本的同態類型,即乘法同態和加法同態,加密算法分別對乘法和加法具備同態特性。
2. 算法的原理
全同態加密的原理:
如果E為針對function_a的全同態函數,即
則存在可構造的函數操作function_b,使得
其中,加密操作為E,明文為m,加密得e,如果對於任意復雜的明文操作function_a,都能針對E構造出相應的function_b。那么,E就是一個針對function_a的同態加密算法,則稱E為針對function_a的全同態加密算法。全同態加密的目的在於找到一種能在加密的數據上進行任意數量的加法和乘法運算的加密算法,使得對加密數據進行某種操作所得到的結果恰好等於對加密前的數據進行預期操作再加密后得到的密文。
3. 算法的應用
全同態加密保證了數據處理方無法知道所處理的數據的明文信息,可以直接對數據的密文進行相應的處理,這樣以來,用戶的信息資料可以得到相應的安全保障。例如,銀行有一些交易數據需要進行分析,銀行可以把交易數據加密后交給數據處理中心來進行處理分析。數據處理中心拿到加密后的數據進行分析,得出銀行想要得到的分析結果,然后把結果返回。在這個過程中,數據處理中心得到的僅僅是加密后的數據,所以他的處理也是在加密數據的基礎上進行處理,而對於數據的明文,數據處理中心並不知曉。另外,完全同台加密算法也在雲計算領域有相當廣泛的應用。