同态加密(Homomorphic encryption)
同态加密最初是由 Rivest等人于1978年提出的,是一种允许直接对密文进行操作的加密变换技术。本质上,同态加密是指对明文进行环上的加法和乘法运算再加密,与加密后对密文进行相应的运算,结果是等价的。由于这个良好的性质,人们可以委托第三方对数据进行处理而不泄露信息。具有同态性质的加密函数是指两个明文a、b满足Dec(En(a)⊙En(b))=a⊕b的加密函数,其中En是加密运算,Dec是解密运算,⊙、⊕分别对应明文和密文域上的运算。当⊕代表加法时,称该加密为加同态加密:当⊕代表乘法时,称该加密为乘同态加密。
1.如果2个密文 E ( x )和 E ( y ) 通过运算计算出 E ( x + y),即 F( E ( x ) , E ( y ) ) = E ( x + y), F 代表任意运算,并且不泄漏 x 和 y,则 E 是加法同态算法.
2.如果 E ( x ) 和 E ( y )可以通过运算计算出 E ( x + y),即 F ( E ( x ) , E ( y ) )= E ( x × y),并且不泄漏 x 和 y,则 E 是乘法同态.
3.如果 E ( x ) 和 y 通过运算计算出 E ( x × y),即 F ( E ( x ) , y )= E ( x × y ),并且不泄漏 x,则 E 是混合乘法同态.
4.如果 E ( x ) 和 E ( y )可以通过运算计算出 E ( x / y),即 F ( E ( x ) , E ( y ) )= E ( x / y),并且不泄漏 x 和 y,则 E 是除法同态.
5.如果2个密文 E ( x )和 E ( y ) 通过运算计算出 E ( x - y),即 F( E ( x ) , E ( y ) ) = E ( x - y), F 代表任意运算,并且不泄漏 x 和 y,则 E 是减法同态算法.
如果一个加密方案同时满足加法同态和乘法同态称之为全同态加密