什么是同态加密

同态加密(Homomorphic Encryption)是一种允许在不先解密的情况下对数据进行计算的方法,从而消除数据被窃取的可能。计算直接在密文上进行,产生加密结果;解密后该结果与对明文直接计算所得一致。它允许你或第三方在不知晓实际数值的前提下对加密数据执行操作——公司内外部人员均可处理加密数据,而无需访问或知晓明文内容。

与其他加密方法类似,同态密码系统使用公钥加密,但其独特之处在于采用代数系统,使你能对加密数据执行多种计算。实践中,多数同态加密方法对整数计算效果最佳,主要使用加法与乘法。

同态加密的作用

加密对保护静态数据(存储中)与传输中数据至关重要,现代加密标准几乎不可破。但所有加密系统存在一个局限:无法在加密态下运算——若要进行计算必须先解密,而解密的瞬间数据便可能被窃取(内部员工或外部黑客)。同态加密正是为解决此问题而生,它消除了使用前解密的需求,在处理数据的同时保障安全与隐私。

同态密码系统的起源

同态密码系统的历史可追溯至 2010 年。当时受美国国家科学基金会资助的研究生 Craig Gentry 提出了一种全新加密方法,即今日的「全同态加密(FHE)」。其初始方案属部分同态,仅支持密文上的加法与乘法,但可构建执行任意计算的电路。此后 FHE 持续发展,在 Gentry 指导下又衍生出第二代(2012)、第三代(2013),并于 2014 年(FHEW)与 2016 年(TFHE)进一步优化。

同态加密的类型与原理

同态加密(HE)有多种类型,均使用算术电路(而非布尔电路)进行计算,将数据以整数形式呈现后运算,使员工可在不知晓内容的情况下处理数据。常见三类:

- 部分同态加密(PHE):仅支持特定数学函数(如加法、乘法)免解密运算,其他函数仍需先解密。
- 某种同态加密(SHE):允许某些函数对加密数据无限次运算,其他函数仅限固定次数或复杂度。
- 全同态加密(FHE):允许所有函数无限次、任意复杂度运算且无需解密,是当前最安全的类型。

什么是全同态加密

以贷款审批为例:你提取客户的信用分与收入税表(均加密存储),连同现有贷款总额一并加密后交由员工处理。员工运行贷款资格算法得出加密评分,你用私钥解密查看结果。全程员工不知晓客户身份、具体收入、信用分与结果,彻底杜绝数据泄露。

全同态加密的安全性

FHE 的安全性根植于「环上带误差学习(RLWE)」这一复杂数学难题,与高维格结构密切相关。学界已广泛验证 RLWE 的计算难度,为 FHE 系统奠定了坚实的安全基础,其安全性至少等同于当前主流加密技术。

全同态加密的应用

- 云端敏感数据存储:将数据以加密态存于云中,仍可搜索与运算,无需先解密。
- 银行与金融机构数据分析:员工可判断贷款资格而不接触账户号、余额等敏感信息。
- 电子投票:借助 Paillier 等方案,在电子投票中实现隐私保护下的公平计票。
- 增强供应链完整性:将数据加密后交由合作方处理,即便合作方端遭泄露,己方数据仍安全。
- 满足合规要求:如 GDPR 对数据处理的严格限制,加密数据不受同等地域约束,便于合规。
- 解析私有数据洞察:科技企业在不窥探个人信息的前提下完成深度分析,使隐私与个性化并存。

全同态加密的局限

- 速度慢:FHE 计算开销极大,有报告称其比明文计算慢约 100 万亿倍,暂难投入实际使用。
- 多用户支持有限:所有 FHE 系统依赖单一数据库进行运算与解密,数据库一旦被访问即可还原明文;为每用户建独立库不现实,多密钥 FHE 仍在研究中。

全同态加密的实现

微软、IBM、谷歌等正加速 FHE 研发,已有实现包括:微软的 SEAL(可直接对加密数据计算)、谷歌的 Private Join and Compute(加密态数据分析开源工具)、IBM 的 HElib C++ 库(2016 年发布,目前仍较慢)。

总结

尽管 FHE 当前存在局限,业界正全力攻克。毋庸置疑,FHE 将成为未来的加密标准,建议持续关注其发展,在具备实用条件时尽早评估采用。