同态加密是一种允许直接对加密数据执行计算而无需解密密钥加密方案。从理论上讲其功能强大且在学术上很具有吸引力,但是实际使用门槛较高。
原文标题:《隐私保护计算技术指南 4》
撰文:陈智罡
概述
同态加密是指具有特殊代数结构的一系列加密方案,该结构允许直接对加密数据执行计算而无需解密密钥。
自 1970 年代以来,支持单一算术运算(加法或乘法)的加密方案就已广为人知,通常被称为单同态。Rivest,Adleman 和 Dertouzos 意识到同态性质的实用价值 , 并就此领域进行了探索研究。
2009 年,Craig Gentry 提出了第一个全同态加密方案。该方案允许对加密数据执行加法和乘法。
这是一项重要的发明,因为原则上,这种加密方案可以允许对加密数据计算任意布尔和算术电路,而无需向执行计算的一方透露输入数据或结果。取而代之的是,结果只能由有权访问密钥的特定方(通常是输入数据的所有者)解密。
该功能使同态加密成为用于云存储和计算安全的强大工具,并且是依赖于此类功能的高级加密和协议的基础。
尽管从理论上讲其功能强大且在学术上很具有吸引力,但第一代全同态加密方案在性能和密钥大小方面的原因,使其无法得以实践应用,只处于理论阶段。
在接下来的几年中,为发明和实现更简单,更快的同态加密方案,学术领域进行了大量工作。这项工作最终由 IBM 研究院发布了全同态加密库 HElib。该库将先前的同态加密实现的性能提高了几个数量级。如今,有多个开源的同态加密库可用,它们实现了适用于不同应用程序的各种同态加密方案。
关于术语的注意事项
虽然原则上全同态加密方案允许对加密数据进行任意计算,但实际上几乎所