MENU

同态加密算法

• September 15, 2022 • Read: 1521 • 隐私计算

概念

同态加密算法是指满足同态运算性质的加密算法。同态运算性质是指数据经过同态加密之后进行特定的计算,对得到的密文计算结果再进行对应的同态解密,所得结果等同于对明文数据直接进行相同的计算所得的结果。同态加密实现了数据的“可算不可见”。

例如,有一个加密函数 $ Enc $,对明文 $ A $ 进行加密可得密文 $ A' $,即 $ Enc(A) = A' $,同理,有 $ Enc(B) = B' $,另有一解密函数 $ Dec $,有 $ Dec(Enc(A)) = A $。对于一般的加密函数,若 $ C' = A' + B' $,$ Dec(C') $ 将是一个无意义的值,而如果 $ Enc $ 是满足同态运算性质的加密函数,则有 $ Dec(C') = C = A + B $

分类

  • 半同态加密(Partially Homomorphic Encryption, PHE)
    支持对密文进行部分形式的计算,如仅支持加法或仅支持乘法。仅支持加法操作的被称为加法同态加密算法,仅支持乘法操作的被称为乘法同态加密算法,RSA算法就是一种乘法同态加密算法
  • 类同态加密(Somewhat Homomorphic Encryption, SWHE)
    也称为有限次同态加密,只支持在密文上进行有限次数的加法和乘法操作(次数太多会导致噪声过大而无法解秘)
  • 全同态加密(Fully Homomorphic Encryption, FHE)
    支持对密文进行任意形式的计算(同时支持加法和乘法运算,理论上所有运算都能分解为加法和乘法)

参考文献

  • 深入浅出隐私计算:技术解析与应用实践 / 李伟荣著。北京:机械工业出版社,2022.1