查看原文
其他

当联邦学习遇上同态加密

杨赟博 隐私计算研习社 2024-01-09

优秀的机器学习模型需要优质的训练数据,但由于隐私或监管限制,我们很难获得这些训练数据。联邦学习是一种技术,通过允许多个参与方合作训练单个机器学习模型,而不共享任何训练数据。联邦学习不仅改善了模型的泛化能力,还为企业训练机器学习模型创造了新的机会,并帮助其提取无法直接访问的训练数据。在某些情况下,我们可能需要更多的联邦学习的标准版本来保护数据的隐私。

1



严格的隐私要求

一些联邦机构具有严格的隐私要求,或受到法规的约束,可能要求系统添加额外的保护机制,以防止个人信息的推断。在这些情况下,以明文传输模型更新可能会让潜在的敌手推断出个人数据。全同态加密(FHE)可以通过隐藏最终模型,并仅向各方披露最后的聚合结果来帮助我们降低风险。

 

FHE是一种密码算法,允许实体在不解密的情况下对加密数据进行计算。换句话说,同态加密可以直接对密文进行运算,并获得最后的结果。

 

 

 在标准的FHE联邦学习实现中,各方共同商定一个私钥,用于在发送给聚合器之前,对所有模型的更新进行加密。


2



FHE在联邦学习中的应用

将全同态加密引入到了IBM的联邦学习框架中,这种方法有一些明显的优势:


  1. 聚合器无法访问任何模型更新,从而防止潜在的推理攻击,这使得各方可以信任第三方聚合器来协调学习过程,而不需要透露生成的模型或传输原始数据。


  2. 只有各方可以访问全局模型,防止聚合器进行模型窃取攻击。


  3. 由于各方直接在明文模型上操作,所以我们可以训练的模型类型没有限制。例如,神经网络可以具有任何激活函数,即使整个系统受到完全同态加密的保护。


  4. 可以使用利用融合步骤中数据样本数量的算法,例如FedAvg,而不需要透露数据集中的训练样本数量。

 


上图是联邦学习过程的执行方式,有趣的是,训练过程以明文进行,并可以利用任何类型的模型。

 

 

完全同态加密(Fully Homomorphic Encryption,FHE)是一种基于格的公钥加密系统,允许对加密消息进行任意操作,FHE是一种公钥加密系统,意味着可以使用公钥对消息进行加密,使用密钥对密文进行解密,通过FHE,我们可以在密文上直接进行运算,主要包括加法和乘法。给定两个密文,这些函数输出一个密文,其底层消息是输入中底层消息的和和积。

 

这意味着可以对两个数字进行加密,发送给一个不可信的参与方方,该参与方可以计算出这两个数字的和和积,而不需要解密和获知数字的值。由于FHE是基于格的,它是抗量子安全的,并且具有可变的安全参数,以在标准假设下数学上证明对任何拥有有限资源的敌手是安全的。

 

尽管加法和乘法看起来像是两个简单的基本操作,但它们实际上非常高效。事实上,任何多项式都可以通过这两个操作来计算,并且已经证明对于任何算法,其输出可以表示为其输入的多项式。这就是我们所说的“图灵完备”(即能够计算图灵机可以计算的任何内容),同理,所有的计算机都实现了布尔操作,并且我们观察到或和与的布尔操作可以通过二进制数据上的加法和乘法来实现。


3



实现中遇到的挑战

虽然这在理论上是可行的,但在实践中,有一些需要克服的障碍才能使FHE在合理的时间内运行。有两个主要的挑战:

 

二进制操作、算术操作和近似

要考虑的第一个挑战是我们所做的二进制操作的简化。想想如何添加两个16位数:它需要一个执行多位数加法的电路,就像我们小学学到的那样,这非常低效,特别是每个FHE操作都被转换为两个格点的操作,最终转化为高次多项式的操作。幸运的是,FHE支持对数字而不仅仅是位进行操作。

 

问题出现在我们需要进行非多项式操作时,例如逆操作,这在执行加权平均或sigmoid(x)时需要进行。在这些情况下,我们可以计算我们感兴趣的操作的多项式近似。

例如,我们可以使用泰勒展开式来计算逆函数,或者我们可以使用多项式

0.5−1.73496·(x/8)+4.19407·(x/8)^3−5.43402·(x/8)^5+2.50739·(x/8)^7

作为Sigmoid函数在区间[-8,8]上的近似。

 

当然,我们也可以用其他操作替换非多项式操作,正如一些研究人员用多项式激活函数(例如平方)替换非多项式激活函数(如RELU或Sigmoid)所做的那样。

 

单指令多数据(SIMD)

第二个挑战主要涉及加速FHE操作的格密码学的数学结构,将一组消息打包到一个单一的密文中,这实际上使得FHE操作等同于向量机操作。

 

编写向量机代码并不总是容易的,为了更轻松地编写高效的代码,IBM开发了HELayers库,为开发人员提供利用SIMD功能编写代码的工具。


本文来源:

https://research.ibm.com/blog/federated-learning-homomorphic-encryption

作者:IBM

翻译: 杨赟博

分享仅供学习参考,若有不当,请联系我们处理。


END

1.论文详解丨联邦学习开源框架

2.SPDZ 学习笔记-基于Somewhat的全同态加密构造的安全多方计算(1)

3.论文详解丨基于错误学习难度实现联邦学习的高效差分隐私安全聚合

4.论文合集|2023 PETS会议 (CCF-C) 论文名单


继续滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存