目前大部分内容翻译自维基百科, 后续会根据调研情况不断丰富.
基本概念
同态加密(Homomorphic encryption) 是一种可以支持在密文上进行计算的加密方式, 对在密文上计算得到的结果进行解密后得到的内容与直接在明文上做计算的结果是相同的.
应用
- 安全外包计算(secure outsourced computation), 如安全云计算服务
- 不同实体之间的安全协作, 如计算汇率, 税费等等
- 其他安全系统, 如安全投票系统, 抗碰撞哈希函数, PSI(private set intersection), PIR(private information retrieval)方案.
特点
- 延展性(malleability). 从延展性的角度, 同态加密方案比非同态的方案在安全特性上更弱.
全同态加密
全同态加密 (fully homomorphic encryption, FHE) 是指支持对密文进行任意计算的密码系统. 通过FHE方案可以通过程序接收加密后的输入并产生加密形式的输出结果, 从而实现任意想要的功能, 并且这些操作可以由不可信方在不恢复出输入和中间状态对应的明文的情况下来执行. FHE在云环境下有广泛的应用前景.
现有的同态加密系统
- The Brakerski-Gentry-Vaikuntanathan cryptosystem (BGV) [1] (基于 Brakerski-Vaikuntanathan 的方案[2]).
- Brakerski’s scale-invariant cryptosystem [3].
- The NTRU-based cryptosystem due to Lopez-Alt, Tromer, and Vaikuntanathan (LTV) [4].
- The Gentry-Sahai-Waters cryptosystem (GSW) [5].
- The Brakerski/Fan-Vercauteren cryptosystem (BFV) [6].
- The Cheon-Kim-Kim-Song cryptosystem (CKKS) [7].
上述大多数方案都是基于LWE(Learning with errors)问题, LTV方案是基于NTRU计算性问题的变种, BFV方案基于Ring-LWE问题的变种. 这些密码学方案的显著特征就是它们在进行同态计算的过程中噪声的增长速度很慢.
Craig Gentry, Shai Halevi 和 Nigel Smart 提出的优化方案[8 – 10]实现了最理想的渐进复杂度: 对在安全参数 k k k 下加密的数据执行 T T T 次操作的复杂度只有 T ⋅ p