解析FHEML:全同态加密在机器学习中的应用

MarsBit
媒体专栏
热度: 7250

全同态加密(FHE)是一种加密技术,允许在加密数据上进行有意义的计算,保护数据隐私。它在机器学习领域的应用促进了保护隐私的计算能力,如私密训练和预测。FHEML是一种基于FHE的机器学习方法,允许在加密数据上进行计算。已有一些流行的框架和库用于构建FHEML程序,如Concrete-ml和Tenseal。FHEML的用例包括外包计算、加密推断和加密训练洞察,允许组织在保护隐私的同时利用数据来提升运营效率和优化决策过程。

摘要由 Mars AI 生成
本摘要由 Mars AI 模型生成,其生成内容的准确性、完整性还处于迭代更新阶段。

原文标题:WTF is FHEML

原文作者:Nitanshu Lokhande

原文来源:medium

编译:火星财经,MK

全同态加密(FHE)代表一种加密技术,使得在加密数据上执行有意义的计算成为可能。这意味着,当这些计算的结果被解密时,它们与在明文数据上执行相同计算所获得的结果一致。

In short

数据

fenc 是一种同态加密函数

Where

数据

其同态性在加密空间中保持计算不变。

在 FHE 的广泛类别中,我们通常将 FHE 方案分为以下三种:

  1. 部分同态加密(SHE):支持有限数量的密文加法和乘法操作。
  2. 全同态加密(FHE):支持在密文上进行任意数量的乘法和/或加法操作,解密时保持数据完整性。
  3. 选择性同态加密(Partial HE):仅支持密文上的加法或乘法操作,但不同时支持两者。

早期在机器学习(ML)中探索 FHE

全同态加密(FHE)在机器学习(ML)领域的应用促进了保护隐私的计算能力,使在加密数据上执行计算成为可能。

在这一领域,有几个显著的贡献,例如 Lauter(2021)探讨了如何将同态加密与 AI 集成以进行私密训练和预测,强调了密码学与机器学习的结合,以在利用 AI 力量的同时保护数据隐私。

此外,有关使用 FHE 的隐私保护深度神经网络的工作,详细介绍了一项研究,它探索了使用 FHE 和多方计算(MPC)对 ML 模型中的非算术函数进行混合模型评估,推动了在计算过程中保持数据和模型保密性的边界。

Graepel, Lauter 和 Naehrig(2012)的开创性论文《ML Confidential》介绍了如何将部分同态加密应用于安全地委托 ML 计算给计算服务的方法,确保机密 ML 算法的数据保密性。此外,关于在加密数据上进行逻辑回归和无监督学习算法的研究,展示了将传统 ML 方法调整以在加密约束下操作的实际应用和可能性,证明了这些方法在保护数据隐私方面的可行性和效率。这些工作共同强调了机器学习与密码学的关键交汇点,为未来安全、保护隐私的 ML 算法研究提供了蓝图。

介绍 FHEML

基于全同态加密的机器学习(FHEML)是一种利用全同态加密方案实现机器学习算法的方法。它确保正在处理的数据保持保密,允许在加密数据上进行计算。

FHEML 可以看作是零知识机器学习(ZKML)的补充,ZKML 专注于证明机器学习算法的正确执行,而 FHEML 强调在加密数据上执行计算以维护数据隐私。

FHEML 的核心在于它允许在加密数据上进行计算,使得计算结果一旦解密,就与在原始明文数据上执行计算所得到的结果相匹配。这种能力为机器学习应用开辟了重要的新范畴,因为它允许算法在不损害数据隐私或安全的情况下在加密数据上运行。

它可以可视化为:

数据

FHEML包括被调整以与全同态加密方案协同工作的机器学习算法。通过利用这些方案,FHEML 为一系列以隐私为中心的机器学习用例开辟了新的可能性。从更高层次来看,这包括保密计算、加密训练和私密推断等。这些进展不仅增强了数据的安全性,也扩展了机器学习在处理敏感和隐私要求高的场景中的潜在应用。

关于 FHEML 的现有库和框架

目前,尽管没有统一的标准用于编写 FHEML 程序,但存在一些流行的框架和库,用于构建 FHEML 程序:

Concrete-ml 是由 Zama 创建的库,建立在他们的低级 TFHE(全同态加密)编译器 Concrete 之上。它允许将任意 Python 代码编译成 FHE 电路,使开发者能够编写可以在加密数据上执行计算的 Python 函数。

Concrete-ml 让开发者可以使用熟悉的机器学习 API(如线性模型、基于树的模型、神经网络),这些在 scikit-learn 或其他框架中可用,允许将 PyTorch 模型转换为其 FHE 兼容版本。基于随机梯度下降的分类器可用于加密数据上的训练。Concrete-ml 显著降低了实现加密数据上机器学习操作的难度。

Tenseal,由 OpenMined 社区开发,专注于在张量上启用同态操作(张量是神经网络中处理和表示数据的基本单元)。建立在 Microsoft SEAL(简单加密算术库)之上,Tenseal 提供了一个高效的、可通过 Python 访问的 API,其底层操作使用 C++ 实现,以提升在加密张量上实现同态加密操作的性能。

PySyft 是 OpenMined 的另一个贡献,旨在 Python 中实现安全和私有的深度学习。它结合了 Tenseal 的同态加密能力,增强了其保护隐私的功能。PySyft 引入了基于 CKKS 同态加密方案的 CKKS 张量,允许对实数进行操作并提供近似结果。这不仅涵盖同态加密,还包括安全多方计算和差分隐私,为保护隐私的机器学习提供了全面的解决方案。

TF Encrypted 是专为 TensorFlow 生态系统内的加密机器学习设计的框架。它模仿 TensorFlow 的体验,特别是通过 Keras API,促进了在加密数据上的训练和预测。TF Encrypted 利用安全多方计算和同态加密技术,提供保护隐私的机器学习能力。TF Encrypted 旨在使加密机器学习易于那些不熟悉密码学、分布式系统或高性能计算的人员使用,以推动加密机器学习的普及。

FHEML 的几个通用用例

外包计算

因为计算是在加密的数据上进行的,所以现在各方可以安全地将数据以加密形式共享给第三方来处理。

加密推断

这一过程促进了加密推断,其中用户请求的推断不会泄露给模型,并且默认情况下保持加密状态,仅用户可以使用他们的密钥进行解密。

加密训练洞察

此功能使企业能够使用敏感数据的加密形式来训练机器学习模型并获得洞察力。这允许组织利用其数据来增强运营效率,开发新策略,并优化决策过程,同时确保涉及数据的最高级别的隐私和安全保护。

声明:本文为入驻“MarsBit 专栏”作者作品,不代表MarsBit官方立场。
转载请联系网页底部:内容合作栏目,邮件进行授权。授权后转载时请注明出处、作者和本文链接。未经许可擅自转载本站文章,将追究相关法律责任,侵权必究。
提示:投资有风险,入市须谨慎,本资讯不作为投资理财建议。
免责声明:本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况,及遵守所在国家和地区的相关法律法规。