加入收藏 | 设为首页 | 会员中心 | 我要投稿 开发网_开封站长网 (http://www.0378zz.com/)- 科技、AI行业应用、媒体智能、低代码、办公协同!
当前位置: 首页 > 服务器 > 安全 > 正文

当联邦学习保障数据隐私,如何保证其自身的安全性?

发布时间:2021-05-22 20:54:15 所属栏目:安全 来源:互联网
导读:安全性分析(结论):vanilla 横向联邦学习虽然避免了中心服务器直接接触用户数据,但仍无法保证用户的隐私数据安全,中心服务器在接收到用户的明文梯度后,可以使用梯度攻击模型恢复出用户的隐私数据。 多种保护机制下横向联邦学习的安全性 在 vanilla 横向
安全性分析(结论):vanilla 横向联邦学习虽然避免了中心服务器直接接触用户数据,但仍无法保证用户的隐私数据安全,中心服务器在接收到用户的明文梯度后,可以使用梯度攻击模型恢复出用户的隐私数据。
 
多种保护机制下横向联邦学习的安全性
在 vanilla 横向联邦学习不安全成为共识的背景下,大量联邦学习数据保护方法被提出,下面我们将对最常用的两种进行讨论:(1)基于 Secure Aggregation 的横向联邦学习(2)基于同态加密的横向联邦学习。
 
基于 Secure Aggregation 的横向联邦学习
vanilla 横向联邦学习的隐私数据泄漏发生在中心服务器参数聚合的步骤中,中心服务器获得了每个参与者单独的梯度,进而可以使用梯度攻击窃取隐私数据。假设系统保障中心服务器无法获得单个参与者的梯度信息,即可很大程度保护参与者的数据,使得中心服务器无法对某一个参与者直接发起攻击。
 
Secure Aggregation 就是借助了这种思想,每个参与者在上传模型数据前,在自身的模型上加入大量噪声,然后控制噪声的分布,使得多个参与者的模型在聚合后,数据上的噪声会相互抵消,进而不会影响联邦学习的模型收敛。
 
这里我们介绍一种使用 one-time pad 进行安全聚合的方法 [6],给定 K 个参与者,假设每两个参与者之间都有一条安全通信的通道,参与者两两之间首先协商一组扰动噪声,参与者 u 会对所有其他参与者生成随机向量 r∈(0,R],其中 R 是一个大整数。随后,参与者 u 和 v 之间会通过他们之间的安全通道交换随机向量 r_(u,v) 和 r_(v,u),然后计算扰动噪声 p_(u,v)=r_(u,v)-r_(v,u) (mod R)。在完成扰动噪声生成后,每个参与者将噪声应用到模型数据上并发送给中心服务器:
 
当联邦学习保护数据隐私,如何保证其自身的安全性?
,中心服务器进行以下参数聚合:
 
当联邦学习保护数据隐私,如何保证其自身的安全性?
以上聚合公式也提供了准确性验证,即在聚合过程中,不同参与者模型上的扰动噪声会相互抵消、保证最终聚合模型不受影响。
 
安全性分析(结论):在使用了 Secure Aggregation 方法后,中心服务器无法获得单个参与者的梯度信息,大大提升了系统的安全性,中心服务器也无法单独使用梯度攻击对参与者的隐私数据进行攻击。
 
基于同态加密的横向联邦学习
除了 Secure Aggregation 方法外,我们亦可使用同态加密技术对参与者的梯度信息进行保护。同态加密是密码学研究中的「明珠」,其特殊性质在于,可以直接在密文上进行计算而无需解密。根据同态加密算法在密文上支持算子的不同,可以将其分为:加法同态、乘法同态和全同态算法。
 
在横向联邦学习中一般使用支持加法的同态加密算法,即参与者在上传模型数据前,首先对其进行加密,然后中心服务器收到密文后,在密文上进行加法聚合,再将密文结果返回给参与者,假设使用的同态加密为部分同态,则参与者需要先解密、再完成模型更新;如果使用的同态加密为全同态加密,则参与者无需进行解密,可以在密文的模型上进行更新。
 
下图 6 展示了一个标准的基于加法同态加密的横向联邦学习框架,该框架的运算流程可以概括为以下三个步骤:
 
Map:中心服务器将当前加密模型分发给参与者,收到模型的参与者先对模型进行加密,再在本地数据上进行参数的有偏估计;
Aggregate:中心服务器收集参与者的加密参数估计,进行聚合,得到新的、密态下的模型参数;
Reduce:中心服务器使用聚合后的新加密参数最为当前模型。
当联邦学习保护数据隐私,如何保证其自身的安全性?
图 6:基于加法同态加密的横向联邦学习 [3]。
 
基于全同态的横向联邦框架:除了使用加法同态算法之外,还可以使用全同态对横向联邦里的参数信息进行保护。在使用了全同态加密后,不止中心服务器上的参数聚合在密文下,参与者本地的模型更新也是在密文下,多方需要预先规定训练次数,在达到指定数量后停止训练。
 
安全性分析(密钥管理):在对基于同态加密的联邦学习系统进行安全性分析之前,还有一点需要我们额外注意的,那就是同态加密算法在使用中如何管理密钥。大部分同态加密算法仅有一个私钥,即在使用中,所有的参与者持有同一组公私钥、然后将公钥分享给中心服务器。但这种模型安全性较低,一旦有一个参与者与中心服务器共谋,系统的安全性就下降到了 vanilla 联邦学习。以上问题目前有一个较好的解决方案,即使用阈值同态加密算法 [10,11],该类型的同态加密算法支持多个私钥存在,并且当一定数量以上的私钥参与,才能将密文成功解密,近期阈值同态加密研究火热 [7,8,9],受到了广泛关注。
 
安全性分析(总结):在使用了同态加密之后,中心服务器无法获取任何有效的明文信息,所以也无法进行梯度攻击。并且借助阈值同态加密,多个参与者可以各自持有一个私钥,可以大大提升了系统的安全性,可以说参与者的数据十分安全。
 
纵向联邦安全性分析
除了横向联邦学习之外,另一种在实际中大量应用的是纵向联邦学习。从分布式计算的角度考虑,横向联邦是一种数据并行的思路,而纵向联邦是模型并行的思路。不同点是,横向联邦(数据并行)对模型没有要求,不管是线性模型、神经网络,都可以很轻松的套用横向联邦的框架进行实现;而纵向联邦(模型并行)中,每个解决方案都和模型紧密绑定,一般需要对单机版本的模型进行拆解,规定好每个参与者本地需要计算的内容、以及多方之间需要交换的信息。所以说纵向联邦的安全性分析需要对每个算法进行,不同的算法实现方式可能会有不同的安全性。
 
在本文中,我们将以 FATE 联邦学习框架中的纵向线性回归为例,对其数据安全性进行分析。
 
下图 7 展示了 FATE 中使用的纵向线性回归算法模型, ⟦.⟧ 代表同态加密后的密文。我们可以发现,联邦建模中 A、B 双方交换的信息均为同态加密后的,每一轮训练中 A、B 仅能获得自身模型的梯度,无法反推对方的隐私数据。

(编辑:开发网_开封站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读