最后更新:
同态加密(Homomorphic encryption)是一种加密技术,允许在不先解密的情况下对加密数据进行数学运算和分析。当结果被解密时,它与对原始数据进行相应操作的结果相一致。这使得服务可以在不看到底层信息的情况下为其所有者处理数据,包括在云计算等服务提供商可能不被信任处理明文的环境中。\[1\]\[2\]
同态加密的想法由 Rivest、Adleman 和 Dertouzos 在 1978 年提出。2009 年,计算机科学家 Craig Gentry 构建了第一个全同态加密方案。\[2\]
Gentry 将这种技术比作使用特制手套操作锁着的盒子里的物体:可以对内容物进行计算,但只有私钥持有者才能打开盒子并提取结果。\[2\]
“Homomorphic”一词源自希腊语,意为“相同结构”。在数学中,群同态是群之间保持群运算的映射;在同态加密中,相关的性质是密文上的操作对应于底层明文上的操作。\[1\]
数据所有者可以将加密数据发送到服务器,服务器对密文进行计算并返回加密结果,供所有者在本地解密。与传统的加密数据处理不同,这种方法不需要服务器在分析或处理数据之前对其进行解密。\[2\]
方案的区别在于它们支持哪些操作以及可以应用多少次操作。部分同态加密(PHE)支持加法或乘法中的一种,但不能同时支持两者,并且允许无限制地重复支持的操作。某种程度同态加密(SHE)支持加法和乘法,但仅限于有限次数的操作。随着操作的累积,准确性可能会下降。\[1\]\[2\]
层次全同态加密允许在预先指定计算序列的情况下进行任意数量的计算。全同态加密(FHE)允许无限次数的计算,而不需要预定义的序列,包括可以在明文上执行的任何计算。
这些功能可以支持比 PHE 或 SHE 更复杂的任务,但 FHE 的计算开销可能会使应用变得不切实际。\[2\]
RSA 展示了乘法的部分同态性。在所述方案中,消息 (m) 被加密为 (C = m^e \bmod n),其中 (e) 是公钥加密指数,(n) 是两个适当选择的大质数的乘积。将消息 (m\_1) 和 (m\_2) 的密文相乘会产生它们乘积的加密:
\[ (m\_1^e \bmod n)(m\_2^e \bmod n) = ((m\_1m\_2)^e \bmod n). \]
因此,将密文相乘对应于将明文消息相乘并对结果进行加密。\[1\]
同态加密可以允许机构在不向执行计算的服务披露原始信息的情况下分析敏感数据。
提议的用途包括根据加密的基因数据评估疾病风险、为医学研究分析医院记录,以及在敏感记录上训练或运行人工智能和机器学习算法。\[2\]
其他提议的应用包括加密搜索、向云服务安全外包计算,以及以可能帮助企业满足《通用数据保护条例》(GDPR)等隐私要求的方式分析数据。
在投票中,加密的选择可以保持私密,同时由第三方验证总数;部分同态的 Paillier 方案可以对加密选票进行加和。供应链参与者也可以通过后端系统使用加密数据进行协调,而无需向承包商或供应商暴露敏感的原始信息。\[1\]\[2\]
Chainlink 还描述了预言机网络在使人工智能算法能够以安全、可靠和去中心化的方式对存储在 blockchains 上的加密数据进行计算方面的潜在作用。\[2\]
同态加密比传统加密具有更高的计算开销,会增加处理时间,并可能产生更大的密文。
Splunk 的文章指出 RSA 比高级加密标准(AES)更慢且成本更高,并指出 RSA 通常用于小块数据(如密钥),而不是大型数据 blocks。更广泛地说,算法、硬件加速和开源库的进步正在使同态加密变得更加实用,尽管该技术仍然属于计算密集型,并继续向更广泛的应用发展。\[1\]
FHE 的计算开销仍然是许多应用的障碍。成本效益和可扩展性是需要进一步研究的领域。\[2\]