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

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 联邦学习是一种多方联合计算技术,最早由谷歌于 2016 年提出,其核心思想是在保证多方数据不出域的前提下完成模型的训练与推理、多方之间仅交换必需的中间结果。在本文中,星云 Clustar 首席联邦学习架构师 & 港科大博士柴迪将对不同类型的联邦学习技术进行安全性评估,深入探讨联邦学习是否会造成隐私数据泄漏。

联邦学习(Federated Learning)是一种由多方参与的联合计算技术,多方在不泄漏各自隐私数据的前提下,完成模型的训练与推理。


在实际应用中,联邦学习既可以发生在同一企业的不同部门,也可以在不同企业之间。一般在联邦学习框架中,各个参与者的明文数据不出本地,以降低隐私泄漏的风险,多方之间仅交换必需的中间结果以完成训练。


在目前的学术研究与应用中,根据应用场景的不同,联邦学习可以分为横向联邦学习和纵向联邦学习 [1]。在本文中,我们将重点对以上两种联邦学习进行安全性分析,深入探索多方在横向联邦学习和纵向联邦学习中交换的中间结果是否会带来隐私数据泄漏。


Vanilla 横向联邦学习的安全性


Vanilla 横向联邦是联邦学习的一种最初形态,由 Google 在 2016 年提出 [2],该方案最早地展示了如何在不接触用户本地数据的前提下完成模型训练,从而在一定程度上减少了用户的隐私数据泄漏。 

微信图片_20211205111431.jpg

图 1:Google 的 Vanilla 横向联邦学习。


上图 1 展示了 Vanilla 横向联邦学习的过程,该方案由以下三个步骤组成:

  • Map:中心服务器将当前模型分发给参与者,收到模型的参与者在本地数据上进行参数的有偏估计;
  • Aggregate:中心服务器收集参与者的参数估,进行聚合,得到新的模型参数;
  • Reduce:中心服务器使用聚合后的新参数作为当前模型。


该方案将重复步骤(1)-(3)直到模型收敛,Google 已将该方案实践于 Google- keyboard 应用。


安全性分析


在 vanilla 横向联邦中,中心服务器获取到了参与者每轮训练的梯度明文,基于这些明文梯度信息,中心服务器可以使用梯度攻击的方法,反推参与者的训练数据。


目前常用的梯度攻击方法有两种:

(1)全连接网络层攻击 [3]

(2)非全连接、深度模型的攻击 [4]。

1.全连接网络层攻击当神经网络模型第一层为全连接层时,中心服务器可以使用方法(1)进行攻击,假设第一层网络为:a=wx+b则在反向传播中,w 的梯度为:

微信图片_20211205111438.jpg


其中 ∂l/∂a 为反向传递到第一层的梯度,对每一个神经元,输出维度为 1,即 ∂l/∂a 为标量,∂l/∂w 是原数据 x 的 ∂l/∂a 倍。以图像数据为例,其数据区间为 0~255,中心服务器只需要将某一个神经元的梯度进行 rescale,调整到 0~255 之间,即可直接获得参与者的训练数据。 

微信图片_20211205111448.jpg

图 2:全连接网络层攻击结果(2 层网络,每层 512 个 unit)[5]。


上图 2 展示了在该方法在 MLP 模型上的攻击结果,可以看到攻击结果中的数字清晰可辩别。
2.非全连接、深度模型的攻击
当模型为非全连接、深度模型时,例如卷积神经网络、循环网络,中心服务器可以使用方法(2)进行攻击,该方法的基本思路是使用梯度信息作为输入、训练一组假数据。当假数据产生的梯度和真实梯度相近时,假数据就会十分接近真实数据。下图 3 展示了该攻击方案的基本原理。 微信图片_20211205111451.jpg

图 3:针对卷积神经网络的梯度攻击方法。

下图 4、图 5 展示了图像任务和 NLP 任务的攻击结果,可以看到中心服务器可以使用该梯度攻击方法较好地还原图像和文本训练数据。 

微信图片_20211205111454.jpg

图 4:卷积神经网络的攻击结果(图像任务)。 

微信图片_20211205111456.jpg

图 5:语言模型的攻击结果(NLP 任务)。
安全性分析(结论):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)。在完成扰动噪声生成后,每个参与者将噪声应用到模型数据上并发送给中心服务器:微信图片_20211205111505.jpg,中心服务器进行以下参数聚合:

微信图片_20211205111509.jpg


以上聚合公式也提供了准确性验证,即在聚合过程中,不同参与者模型上的扰动噪声会相互抵消、保证最终聚合模型不受影响。
安全性分析(结论):在使用了 Secure Aggregation 方法后,中心服务器无法获得单个参与者的梯度信息,大大提升了系统的安全性,中心服务器也无法单独使用梯度攻击对参与者的隐私数据进行攻击。


基于同态加密的横向联邦学习


除了 Secure Aggregation 方法外,我们亦可使用同态加密技术对参与者的梯度信息进行保护。同态加密是密码学研究中的「明珠」,其特殊性质在于,可以直接在密文上进行计算而无需解密。根据同态加密算法在密文上支持算子的不同,可以将其分为:加法同态、乘法同态和全同态算法。在横向联邦学习中一般使用支持加法的同态加密算法,即参与者在上传模型数据前,首先对其进行加密,然后中心服务器收到密文后,在密文上进行加法聚合,再将密文结果返回给参与者,假设使用的同态加密为部分同态,则参与者需要先解密、再完成模型更新;如果使用的同态加密为全同态加密,则参与者无需进行解密,可以在密文的模型上进行更新。下图 6 展示了一个标准的基于加法同态加密的横向联邦学习框架,该框架的运算流程可以概括为以下三个步骤:

  • Map:中心服务器将当前加密模型分发给参与者,收到模型的参与者先对模型进行加密,再在本地数据上进行参数的有偏估计;
  • Aggregate:中心服务器收集参与者的加密参数估计,进行聚合,得到新的、密态下的模型参数;
  • Reduce:中心服务器使用聚合后的新加密参数最为当前模型。


微信图片_20211205111515.jpg

图 6:基于加法同态加密的横向联邦学习 [3]。
基于全同态的横向联邦框架:除了使用加法同态算法之外,还可以使用全同态对横向联邦里的参数信息进行保护。在使用了全同态加密后,不止中心服务器上的参数聚合在密文下,参与者本地的模型更新也是在密文下,多方需要预先规定训练次数,在达到指定数量后停止训练。
安全性分析(密钥管理):在对基于同态加密的联邦学习系统进行安全性分析之前,还有一点需要我们额外注意的,那就是同态加密算法在使用中如何管理密钥。大部分同态加密算法仅有一个私钥,即在使用中,所有的参与者持有同一组公私钥、然后将公钥分享给中心服务器。但这种模型安全性较低,一旦有一个参与者与中心服务器共谋,系统的安全性就下降到了 vanilla 联邦学习。以上问题目前有一个较好的解决方案,即使用阈值同态加密算法 [10,11],该类型的同态加密算法支持多个私钥存在,并且当一定数量以上的私钥参与,才能将密文成功解密,近期阈值同态加密研究火热 [7,8,9],受到了广泛关注。
安全性分析(总结):在使用了同态加密之后,中心服务器无法获取任何有效的明文信息,所以也无法进行梯度攻击。并且借助阈值同态加密,多个参与者可以各自持有一个私钥,可以大大提升了系统的安全性,可以说参与者的数据十分安全


纵向联邦安全性分析


除了横向联邦学习之外,另一种在实际中大量应用的是纵向联邦学习。从分布式计算的角度考虑,横向联邦是一种数据并行的思路,而纵向联邦是模型并行的思路。不同点是,横向联邦(数据并行)对模型没有要求,不管是线性模型、神经网络,都可以很轻松的套用横向联邦的框架进行实现;而纵向联邦(模型并行)中,每个解决方案都和模型紧密绑定,一般需要对单机版本的模型进行拆解,规定好每个参与者本地需要计算的内容、以及多方之间需要交换的信息。


所以说纵向联邦的安全性分析需要对每个算法进行,不同的算法实现方式可能会有不同的安全性。在本文中,我们将以 FATE 联邦学习框架中的纵向线性回归为例,对其数据安全性进行分析。下图 7 展示了 FATE 中使用的纵向线性回归算法模型, ⟦.⟧ 代表同态加密后的密文。我们可以发现,联邦建模中 A、B 双方交换的信息均为同态加密后的,每一轮训练中 A、B 仅能获得自身模型的梯度,无法反推对方的隐私数据。 

微信图片_20211205111521.jpg

图 7:带第三方的纵向线性回归模型算法流程 [1]。
安全性分析(总结):纵向联邦学习算法和模型紧密相关,不同的联邦算法设计可能会有不同的安全性,所以我们在设计纵向联邦学习算法时,就需要对安全性进行考虑。本文以 FATE 中使用的线性回归模型为例进行了分析,FATE 使用同态加密作为基础隐私保护技术,多方之间传递的信息均为同态加密后的,所以可以保障参与者的隐私数据安全不泄漏。


结语


最近,我们看到网络上有很多针对联邦学习安全性的讨论,绝大部分的质疑主要集中在联邦学习可以被梯度攻击,从而使其安全性下降。但是,梯度攻击只能被利用在 vanilla 联邦学习上,而 vanilla 联邦学习不会被用于生产系统中。在生产系统中,如本文的分析和介绍,联邦学习往往会利用同态加密或者差分隐私等技术进一步保护传递的参数,从而使得联邦学习无法被攻击,保证安全性。我们希望通过文本为读者们展示一个更加准确的联邦学习全貌,从而使得读者们可以更加准确地了解到联邦学习的安全性现状。


作者简介


柴迪,星云Clustar首席联邦学习架构师,香港科技大学博士,他的研究兴趣点为隐私保护机器学习,联邦学习。曾在IJCAI、IEEE TIST、SIGSPATIAL等期刊与会议发表文章,近期工作有:(1) FedEval: A Comprehensive Evaluation System for FL(https://github.com/Di-Chai/FedEval) 中,提出了一个完整的联邦评估框架,(2) Secure Federated Matrix Factorization中提出了一种安全的联邦矩阵分解算法。


联系方式:dchai@cse.ust.hk


参考文献

[1] Yang, Qiang, et al. "Federated machine learning: Concept and applications." ACM Transactions on Intelligent Systems and Technology (TIST) 10.2 (2019): 1-19.[2] McMahan, Brendan, et al. "Communication-efficient learning of deep networks from decentralized data." Artificial Intelligence and Statistics. PMLR, 2017.[3] Aono, Yoshinori, et al. "Privacy-preserving deep learning via additively homomorphic encryption." IEEE Transactions on Information Forensics and Security 13.5 (2017): 1333-1345.[4] Zhu, Ligeng, and Song Han. "Deep leakage from gradients." Federated Learning. Springer, Cham, 2020. 17-31.[5] Chai, Di, et al. "FedEval: A Benchmark System with a Comprehensive Evaluation Model for Federated Learning." arXiv preprint arXiv:2011.09655 (2020).[6] Bonawitz, Keith, et al. "Practical secure aggregation for federated learning on user-held data." arXiv preprint arXiv:1611.04482 (2016).[7] Sav, Sinem, et al. "POSEIDON: Privacy-Preserving Federated Neural Network Learning." arXiv preprint arXiv:2009.00349 (2020).[8] Chen, Hao, et al. "Efficient multi-key homomorphic encryption with packed ciphertexts with application to oblivious neural network inference." Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security. 2019.[9] Li, Ping, et al. "Multi-key privacy-preserving deep learning in cloud computing." Future Generation Computer Systems 74 (2017): 76-85.[10] Chen, Hao, Ilaria Chillotti, and Yongsoo Song. "Multi-key homomorphic encryption from TFHE." International Conference on the Theory and Application of Cryptology and Information Security. Springer, Cham, 2019.[11] Hazay, Carmit, et al. "Efficient RSA key generation and threshold paillier in the two-party setting." Journal of Cryptology 32.2 (2019): 265-323.

相关文章
|
5月前
|
区块链 数据安全/隐私保护
现有的区块链隐私保护技术有哪些局限性
现有的区块链隐私技术在透明度与隐私平衡、技术复杂性、性能、可扩展性、成本、监管合规及用户教育上面临挑战。虽然ZKP和环签名等能增强隐私,但增加计算复杂性,降低交易效率,且可能加重网络拥堵。此外,高成本和监管难题也是待解问题。用户理解和使用不足进一步凸显了教育和意识培养的重要性。
|
5月前
|
机器学习/深度学习 分布式计算 算法
联邦学习是保障数据隐私的分布式机器学习方法
【6月更文挑战第13天】联邦学习是保障数据隐私的分布式机器学习方法,它在不暴露数据的情况下,通过在各设备上本地训练并由中心服务器协调,实现全局模型构建。联邦学习的优势在于保护隐私、提高训练效率和增强模型泛化。已应用于医疗、金融和物联网等领域。未来趋势包括更高效的数据隐私保护、提升可解释性和可靠性,以及与其他技术融合,有望在更多场景发挥潜力,推动机器学习发展。
117 4
|
1月前
|
存储 人工智能 安全
数据治理:强化数据安全与隐私保护的基石
在当今这个数字化时代,数据已成为推动社会进步和企业发展的核心驱动力。从个人消费习惯到企业运营策略,从政府决策支持到科研创新突破,数据无处不在,其价值不言而喻。然而,随着数据量的爆炸性增长和流通范围的扩大,数据安全与隐私保护问题也日益凸显,成为制约数据价值最大化利用的重要瓶颈。因此,构建完善的数据治理体系,特别是强化数据安全与隐私保护,成为了时代发展的必然要求。
|
6月前
|
自然语言处理 监控 安全
如何应对大模型带来的安全性挑战
如何应对大模型带来的安全性挑战
111 1
如何应对大模型带来的安全性挑战
|
3月前
|
存储 安全 Java
隐私保护与数据安全:FunAudioLLM的安全性设计
【8月更文第28天】随着人工智能技术的普及,隐私保护和数据安全变得尤为重要。FunAudioLLM(虚构名称)是一款专注于语音合成的软件库,它不仅提供高质量的语音合成服务,还非常重视用户的隐私和数据安全。本文将详细介绍FunAudioLLM如何确保用户数据的安全性和隐私保护,并通过具体的代码示例展示如何使用该引擎时实施最佳实践。
77 0
|
4月前
|
存储 算法 安全
网络安全中的加密技术与解密算法:保障数据安全的基石
【7月更文挑战第1天】网络安全依赖加密技术与解密算法确保数据安全。本文探讨加密原理、对称与非对称加密(如AES、DES、RSA、ECC)及它们在数据传输、存储安全和身份验证中的应用。加密是数据保密的核心,面对不断升级的网络威胁,加密技术将持续进化以适应新挑战。
|
5月前
|
存储 安全 算法
如何保证区块链项目的安全性和稳定性?
**区块链安全与稳定性关键点:** - 密码学保护数据传输与存储,哈希确保不可篡改 - 安全共识算法(如PoW、PoS)保证节点共识 - 智能合约审计与应急响应机制提升安全性 - 加密、身份验证增强网络安全 - 持续技术改进,采用零知识证明、侧链 - 有效运营团队与社区参与,风险评估和维护 这些措施协同作用,确保区块链项目的稳健运行。
|
6月前
|
监控 安全 网络安全
云端防御策略:保障云计算环境下的数据安全与完整性
【5月更文挑战第27天】 随着企业数字化转型的加速,云计算已成为支撑现代业务架构的关键平台。然而,云服务的广泛采用也带来了前所未有的网络安全挑战。本文深入探讨了云计算环境中面临的主要安全威胁,分析了云服务模型(IaaS, PaaS, SaaS)特有的风险点,并提出了一系列创新的安全策略和最佳实践,以增强数据安全性和确保信息完整性。我们重点讨论了多因素认证、加密技术、入侵检测系统、安全配置管理以及持续监控的重要性,旨在为组织在迁移和运营云基础设施时提供全面的安全指导。
|
6月前
|
存储 安全 算法
【专栏】保护数据安全的重要性以及安全加密算法在数据保护中的应用
【4月更文挑战第27天】在数字化时代,数据安全至关重要,关系到个人隐私、企业商业机密、国家安全及经济发展。安全加密算法(如对称加密、非对称加密和哈希算法)在保护数据方面发挥关键作用。它们应用于电子商务、金融、物联网、云存储和数字签名等领域,确保信息传输和存储的安全。面对日益复杂的挑战,我们需要持续研究和应用加密技术,提高数据安全意识,共同维护数字世界的繁荣与安全。
176 2
|
6月前
|
监控 安全 网络安全
云端防御策略:在云计算时代维护网络安全与信息完整性
【5月更文挑战第14天】 随着企业逐渐将数据和服务迁移至云平台,云计算的便捷性和成本效益显著提升。然而,这种转变也带来了新的安全挑战。本文深入探讨了云服务中的网络安全威胁、信息安全的重要性以及相应的防御机制。我们将分析当前的安全漏洞,提出创新的安全框架,并讨论如何通过综合措施确保数据的保密性、完整性和可用性。我们的目标是为读者提供一套实用的策略,以保护他们在云端的资产不受日益复杂的网络攻击。