基本介紹
- 中文名:全同態加密
- 外文名:Full Homomorphic Encryption
- 分類:密碼學
同態加密,同態分類,同態加密算法,
同態加密
如果我們有一個加密函式 f , 把明文A變成密文A’, 把明文B變成密文B’,也就是說f(A) = A’ ,f(B) = B’ 。另外我們還有一個解密函式 ,能夠將 f 加密後的密文解密成加密前的明文。
對於一般的加密函式,如果我們將A’和B’相加,得到C’。我們用對C’進行解密得到的結果一般是毫無意義的亂碼。
但是,如果 f 是個可以進行同態加密的加密函式, 我們對C’使用進行解密得到結果C, 這時候的C = A + B。這樣,數據處理權與數據所有權可以分離,這樣企業可以防止自身數據泄露的同時,利用雲服務的算力。
同態分類
a) 如果滿足 f(A)+f(B)=f(A+B), 我們將這種加密函式叫做加法同態
b) 如果滿足 f(A)×f(B)=f(A×B), 我們將這種加密函式叫做乘法同態。
b) 如果滿足 f(A)×f(B)=f(A×B), 我們將這種加密函式叫做乘法同態。
如果一個加密函式f只滿足加法同態,就只能進行加減法運算;
如果一個加密函式f只滿足乘法同態,就只能進行乘除法運算;
如果一個加密函式同時滿足加法同態和乘法同態,稱為全同態加密。那么這個使用這個加密函式完成各種加密後的運算(加減乘除、多項式求值、指數、對數、三角函式)。
第一個滿足加法和乘法同態的同態加密方法直到2009年才由Craig Gentry提出。
同態加密算法
- RSA 算法對於乘法操作是同態的。
- Paillier 算法則是對加法同態的。
- Gentry算法則是全同態的。