本篇以一篇综述为例,进行讲述联邦学习中的安全与隐私问题。该篇是2021年发表在《Future Generation Computer Systems》期刊上的一篇综述论文,主要介绍了联邦学习中可能面对的所有安全与隐私威胁问题,比较详细和具体的进行了综述,是篇还不错的文章,建议读原文。以下是个人的读书笔记,结合自己的理解,只截取部分关键或重要的部分。
先附上原文下载链接:查阅or下载
(长文警告,本篇大约1.8w个字,谨慎阅读!)
文章目录预览
《A survey on security and privacy of federated learning》联邦学习的安全性和隐私综述
摘要
联邦学习(FL)还处于起步阶段,主要思因为它未知的安全性和隐私含义。本文旨在提供关于FL的安全和隐私方面的全面研究,并对相关方法和各种实现风格进行了说明下描述,对FL当前面临的挑战进行了调查,对需要在彻底和清晰的背景下考虑的安全和隐私问题进行了详细审查。研究结果表明,与安全威胁相比,FL相关的特定隐私威胁更少。当前最具体的安全威胁是通信瓶颈(Communication bottlenecks)、中毒(poisoning)和后门(backdoor)攻击等,而基于推理的攻击(inference-based attacks)对FL的隐私至关重要。
一、引言
集中式的ML方法面临着不同的挑战,包括计算能力和时间,以及最重要的、长期被忽视的用户数据的安全性和隐私。联邦学习[2]通过将数据从中央服务器分散到终端设备,提供了一种保护用户隐私的方法,并使AI能够受益于具有敏感数据和异构性的领域。主要有两个原因:1)由于对此类数据的直接访问限制,没有足够的数据集中驻留在服务器端;2)数据隐私保护使用来自边缘设备的本地数据。基于去中心化的数据概念,FL是近年来ML领域中发展迅速的领域之一,因为它具有安全和隐私特性,承诺遵守新兴的用户数据保护法律[3, 4]。
正如[1]FL中的作者所说,它将代码引入数据,而非将数据引入代码,并解决隐私、所有权和数据位置等基本问题。由于FL还处于研究的初始阶段,许多不同社区的研究人员都在努力改进现有框架,并确保FL中用户数据的隐私和安全。因此,本文旨在阐明面咯的安全和隐私问题。
FL隐私保护吸引了可能包含敏感数据的不同领域。某种程度上,FL解决了ML环境中敏感数据的隐私问题,与此同时,模型参数共享以及训练迭代和通信数量的增加使联邦环境面临一系列新风险,并为黑客攻击开辟了新途径[5],以及好奇的攻击者跟踪漏洞以操纵ML模型输出或访问敏感的用户数据。为此,本文通过识别和评估开放的安全和隐私威胁,以及通过回答几个具体的研究问题来解决FL的缓解策略,来解决研究目标。
1.1 贡献
目前理解FL的安全性和隐私风险方面还没有取得足够的进展。这项工作希望在正式定义、成就和挑战等方面对FL安全性做出全面的概述。贡献如下:
- 1)对FL实现的方法和技术进行了分类和概述;
- 2)识别和检查FL环境中的安全漏洞和威胁,包括与FL相关的特定FL和一般基于ML的攻击;
- 3)识别和评估FL环境中的隐私威胁、缓解技术,以及在FL环境中与隐私保护技术相关的权衡成本;
- 4)提供对现有防御机制和未来方向的见解,以增强FL实现的安全性和隐私性。
二、联邦学习概貌
近年来,大数据的可用性、计算能力和深度学习模型三个因素帮助了ML取得了成功。虽然ML [7] 取得了巨大成功,由于两个主要障碍,许多领域的使用受到限制:
- 关注用户数据隐私和机密性以及监管它们的法律;
- 涉及的计算成本在ML实现上的数据或训练成本不足,无法建立ML模型。
FL通过提供一个高度训练的ML模型来解决隐私或机密性等问题,而没有暴露训练数据的风险。FL还通过在异构域之间提供信任因子来解决数据不足问题。FL被认为是一个迭代过程,每次迭代都对中心ML模型进行更新。实现大概分为以下三个步骤:
- 1)模型选择:启动全局模型及初始参数,并将其与FL环境中所有客户端共享;
- 2)局部模型训练:与所有客户端共享初始模型和参数后,在客户层的初始ML模型(称为局部模型)用个人训练数据进行训练;
- 3)本地模型聚合:本地模型在客户端级别进行训练,更新被发送到服务器,以聚合和训练全局模型。全局模型被更新,改进后的模型将在各个客户端之间为下一次迭代共享。
FL处于一个持续的迭代学习过程中,重复上述2和3训练步骤,以保存所有客户端的全局模型更新。
- 移动应用程序。FL已经应用于键盘上下一个单词预测的移动应用程序中[15-18],如Android手机上谷歌的Gboard,以及唤醒词检测 [19] ,它可以让语音辅助应用程序检测唤醒词而无需暴露手机敏感数据的风险。还有一些有用的应用程序用例试验使用FL在不同领域构建保护隐私的ML解决方案。例如, [21, 22] 中的研究通过避免通信开销,总结了使用FL进行无线通信的可能应用。
- 医疗领域。FL可用于保存患者数据的私密性,并增强ML能力,以帮助医疗从业者,类似于 [20] 的工作。维护患者健康记录 [33] 敏感信息的医疗网络物理系统中的攻击检测,以及利用FL [34] 管理数字健康记录都是FL应用的例子。
- 安全领域应用中。FL已经提供了恶意软件分类 [23] 、人类活动识别 [24] 、异常检测 [25] 、入侵检测 [26] 等。
- 智能交通行业中的应用程序。自动驾驶汽车与驾驶之间的数据共享 [27, 28] ,防止车辆信息物理系统 [29] 中的数据泄露,交通流预测 [30] ,检测空中车辆 [31] 中的攻击都是这类工作的例子。
- 计算机视觉领域的应用实例。微众银行在 [32] 中提出了基于安全FL的Fedvision目标检测方法。
本文的主要关注点是研究FL内部潜在的安全和隐私相关问题。
三、联邦学习技术/方法的分类
本节从不同角度收集并概述相关技术的内部工作原理,后面章节更深入地理解安全性和隐私方面内容。如下图,FL实现网络拓扑用于构建FL环境,基于数据可用性和分区分类,聚合/优化算法建立在中央服务器保存通信带宽/成本和聚合逻辑,和开源框架在实践中实现FL。
3.1 网络拓扑结构
根据网络拓扑结构,FL可分为集中式和完全去中心化两种 [35] 。
3.1.1 集中式和集群式FL
尽管FL从根本上是基于去中心化的数据方法,仍然依赖于一个中央服务器来管理从涉及FL环境的客户端收集训练过的模型,构建一个全局模型并与所有客户端共享它。主要借助建立可信第三方,以建立它们之间的信任。采用单服务器和多客户端拓扑 [36] ,确保了一个中央权威机构监视和管理持续学习过程。与传统集中式服务器不同,集中式服务器承载数据并在共享数据上训练给定模型,FL环境中的集中式服务器仅通过客户端的同步或异步更新共享模型上工作。
为解决集中式网络拓扑中客户端数据的异构性,提出了聚类技术。聚类是一种有助于检测恶意更新的技术。 [37] 中谷歌的研究工作提出了三种算法,以最小的通信轮数实现本地模型的个性化版本。 [38] 提出了一种基于联邦多任务学习的方法,利用局部模型的余弦相似度识别客户端的FL簇。
[39] 的研究工作提出了联邦随机期望最大化来训练多个全局ML模型并得到一个解决方案。损失函数称为基于距离的联邦损失,是多中心FL的目标,它是在多聚类环境下,在不同全局模型中寻找最优全局模型。 [40] 中,作者提出了迭代联邦聚类算法(IFCA)框架,该框架试图最小化每个FL客户端的损坏函数,并在每轮训练中将客户端标记到一个聚类中。
3.1.2 完全去中心化FL
完全分散的方法排除了模型聚合对中心服务器的依赖。集中式的权威被建立信任和可靠性的算法所取代。针对完全去中心化的实用方法,提出了各种附加技术或算法。 [42] 作者提出了一种基于拜占庭概念的自适应平均算法,该算法假设FL中超过2/3的系统是诚实的。通过这种方法,一组来自不同领域、具有共同目标的客户可以协作、共享数据和建立ML模型,并利用高精度的优势 [43,44] ,而无需依赖第三方集中服务器。 [45] 作者提出了一个名为MATCHA的框架,通过为客户端之间的通信提供关键链接来解决网络延迟问题。
3.2 数据分区
本解的分类可以被认为是设置FL环境的“前期工作”。对具有价值的用户数据做相关的前期工作是对整个FL过程至关重要。根据数据分布特征,即参与FL的异构数据和客户之间的分化和碰撞因素,可大致分为水平、垂直和迁移联邦学习(HFL, VFL, TFL)三种。 (此部分的介绍可看上一篇博文,此部分就简略截取)
3.2.1 水平联邦学习
HFL定义为设备上的数据集与不同实例共享相同特征的情况。在FL这一类别中,客户端在领域、派生统计信息的使用风格或FL的任何其他结果方面具有类似的特征。
3.2.2 垂直联邦学习
VFL使用不相干领域之间的公共数据来训练全局模型。使用这种方法的参与者希望有一个中间的第三方组织/资源来提供加密逻辑,以确保共享唯一的公共数据统计。然鹅,并不是必须有一个第三方中间实体 。
3.2.3 联邦迁移学习
TFL是一种在一个已经在类似数据集上训练过的模型训练新的需求,以解决完全不同的问题。在ML模型中,与在全新的模型上进行训练相比,在预先训练过的模型上进行训练的结果要好得多。
3.3 数据可用性
正如谷歌[36]中讨论的那样,根据数据可用性和客户端节点数量,FL可分为Cross-silo FL和Cross-device FL。
3.3.1 Cross-silo FL(跨筒仓式联邦学习)
在这种情况下的客户端通常范围从2到100个设备的小数目,通常有索引,几乎总是在训练轮中可用。训练数据可分为水平联邦学习和垂直联邦学习。计算和通信瓶颈是主要问题。与Cross-device FL相比,Cross-silo FL更加灵活,可用在组织或组织组的场景中使用它们的机密数据来训练ML模型。在垂直和迁移学习中,首选加密技术来限制来自每个客户端的信息推断。
3.3.2 Cross-device FL(跨设备联邦学习)
FL方法具有来自全局模型的相似领域的大量客户端的FL方法被称为跨设备FL。由于客户端数量庞大,很难跟踪和维护交易历史日志。大多数客户使用不可靠的网络连接,在这些网络中,选择/参与训练是随机发生的。
3.4 聚合/优化算法
基于FL的优先级和体系结构,实现客户端绑定更新以实现目标全局模型的算法有所不同。配置这个逻辑至关重要,因为它解决了客户端的异构性和权重变化,以及通信问题。在集中式FL中,有一个聚合算法可以从协调训练到优化更新。很少有提出的算法专注于客户的优化选择,优化训练轮以实现高效通信和FL成本。本节覆盖了FL 不同方法中用于集成、强化、优化、聚合和达成共识的算法。
3.4.1 聚合算法
聚合算法在任何集中式拓扑和水平联邦学习环境中都起到关键作用。逻辑 [65] 结合了来自参与训练轮所有客户端的本地模型更新。许多算法的目的是增强本地模型更新的隐私性,或保持通信带宽,或促进来自客户端的异步更新。基于预配置参数,联邦学习在FL的每个实现中都有所不同。如下:
- 1)FedAvg:FL的 [1] 实现,引入了基于随机梯度下降(SGD)优化算法的联邦平均算法(称为FedAvg)。
- 2)SMC-Avg:正如在 [66] 中所解释的,安全聚合基于安全多方计算(SMC)算法的概念,该算法聚合相互不信任的各方的私有值,而不揭示其私有值信息。
- 3)FedProx:文献 [67] 提出了一种改进的FedAvg [1] 算法来处理FL的异构性。
- 4)FedMA:作者在 [68] 中提出了在FL环境中构建基于CNNs和LSTM的ML
- 模型更新的共享模型。
- 5)Scaffold:随机控制平均FL提出了 [70] 地址梯度不同/客户漂流(client-drift)问题面对联邦平均算法3.4.1FL方法,客户端是有状态的,算法可以在客户端和服务器端维护/控制变异,以确保客户端更新与全局收敛性。
- 6)Tensor Factorization:在医学领域,很少有应用倾向于张量因子分解 [71,72] 来限制共享信息的数量。张量因子分解将大量的医疗记录转换为有意义的外表型。
- 7)Personalization-based 算法:文献 [73] 的研究工作提出了一种方法,将神经网络分离为每个客户节点的基础层和个性化层。
3.4.2 通信效率和开销
本章节将讨论FL训练中降低通信效率和成本的算法。(这里可能是作者打错了,应该是提升通信效率,降低成本吧)
- 1)FedBCD:在 [75] 中提出了联邦随机块坐标下降(FedBCD)算法,它类似于FedAvg算法。
- 2)FedAttOpt:在 [76] 中提出的注意联邦聚合(FedAttOpt)增加了一种注意力增强机制,在FL的中央服务器上对聚合进行模块化,根据每个客户端的贡献计算注意力得分。
- 3)异步FL训练轮:客户端数量越多,通信瓶颈和计算成本的风险就越大。很少有研究工作是通过在FL的训练轮种以最小通信成本为目标来解决通信效率问题。
- 4)通信开销: [80] 中提出的方法设置了在FL训练轮中选择客户端更新的预定义规则,这种有助于通过消除贡献最少的FL客户端更新来减少通信成本。
3.5 开源的框架
目前有一些开源框架供研究人员探索FL解决方案。主要工具如下:
- 1)Tensorflow Federated:谷歌的TensorFlow Federated在Gboard中有一个产品化的版本,它可以让Android手机用户在使用手机键盘时预测下一个单词 [82-86] ,这是社区中将FL变为现实的最早尝试。
- 2)PySyft:Pysyft是在PyTorch框架之上用Python编写的,它提供了一个虚拟hook,通过WebSocket端口连接到客户端 [90,91] 。
- 3)FATE:来自微众银行开发人员名为FATE的软件,每次发布都在即兴创作。FATE提供了一个在水平、垂直和迁移学习模式下实施FL的框架。它可以通过docker镜像或手动步骤实现。
(TFF:https://www.tensorflow.org/federated/federated_learning)
(Pysyft:https://blog.openmined.org/tag/pysyft/)
(FATE:https://fate.fedai.org)
四、联邦学习中的安全性(文章重点)
FL技术在采用者和开发人员应该坚持信息安全的基本原则,如机密性、完整性和可用性。拥有大量客户进行协作训练和暴露模型参数的去中心化方法使FL容易受到各种攻击和风险。FL安全方面的研究问题如下:
- 问题1:FL生态系统的脆弱性来源是什么?
- 问题2:FL域的安全威胁/攻击有哪些?
- 问题3:与分布式ML解决方案相比,FL特有的安全威胁是什么?
- 问题4:针对FL安全漏洞的防御技术是什么?
4.1 问题1:FL生态系统的脆弱性来源是什么?
漏洞可以定义为系统中的一个弱点,它为好奇/恶意攻击者提供了获得未经授权访问的机会 [98] 。了解系统或框架公开的漏洞有助于管理和防御可能的攻击。通过实现防御漏洞的先决条件,识别漏洞将有助于构建一个更安全的环境。下面列出五种不同的资源被认为是开发的弱点。
- 1)通信协议:FL使用随机选择的客户端实现迭代学习过程,这涉及给定网络上的大量通信。
- 2)客户端数据操作:在一个更大的环境中,FL拥有大量的客户端,这些客户端对攻击者开放,以便攻击者利用模型参数和训练数据。对全局模型的访问可能更容易受到数据的重构攻击。
- 3)中央服务器:中央服务器是健壮和安全的,中央服务器负责共享初始模型参数,聚合本地模型,并向所有客户端共享全局模型更新。
- 4)较弱的聚合算法:聚合算法是中心权威。换句话说,作为本地模型的更新,它应该能够智能地识别客户端更新的异常,并且它应该有一个配置来删除来自可疑客户端的更新。
- 5)FL环境的实现者:有意或无意地,参与FL实现的架构师、开发人员和部署人员团队可能会成为安全风险的来源。由于混淆或缺乏对敏感用户数据和非敏感用户数据的理解,可能是安全和隐私被侵犯的原因。
4.2 问题2:FL域的安全威胁/攻击有哪些?
威胁/攻击是指漏洞可能被恶意/好奇的攻击者利用,从而影响系统安全性并违反其隐私策略。在FL中,通常恶意代理利用漏洞 [99] 控制一个或多个参与者(即客户端),以最终操作全局模型。在这种情况下,攻击者针对不同的客户端,希望访问本地静止数据、训练过程、超参数或传输中更新的权值 [100] ,在全局模型中修改并发动攻击。对安全威胁/攻击进行分类:
4.2.1 中毒攻击(poisoning)
在FL中最有可能发生的攻击称为中毒攻击 [101,102] ,因为FL中每个客户都可以访问训练数据,因此被篡改的数据权重添加到全局ML模型的可能性非常高。中毒可能发生在训练阶段,影响训练数据集或局部模型,反过来/间接篡改全局模型的性能/准确性。一个或多个客户端数据的中毒攻击的概率很高,威胁的严重程度也很高。
- 1)数据中毒(data poisoning):数据中毒攻击ML算法的概念首次提出 [103] ,作者在攻击者的目标支持向量机算法的脆弱性,并试图将恶意数据点在训练阶段,希望最大化分类错误。虽然FL环境使客户端能够主动贡献训练数据并向服务器发送模型参数,但它为恶意客户端提供了通过操纵训练过程来毒害全局模型的机会。FL中的数据中毒定义为生成“脏样本”来训练全局模型,以期产生伪造的模型参数并将其发送到服务器。数据注入也可以看作是数据中毒的一个子类,恶意客户端可以将恶意数据注入到客户端本地模型处理中。因此,恶意代理可以控制多个客户端的本地模型,并最终使用恶意数据对全局模型进行操作。
- 2)模型投毒(model poisoning):在数据中毒中,恶意代理的目的是利用假数据操纵全局模型,而在模型中毒中,恶意代理的目标是全局模型。在最近的研究中,模型中毒攻击被证明比数据中毒攻击更有效 [100,104,105] 。
- 3)数据修改(data modification):数据篡改/修改攻击可能涉及改变训练数据集,如特征碰撞 [106] ,它合并数据集中的两个类,试图欺骗ML模型,使其总是错误地分类目标类。
4.2.2 推理(inference)
推理攻击更多的是对隐私的威胁,其严重性余投毒攻击非常类似,因为推理攻击的可能性非常高,无论是来自参与者,还剩来自FL过程中恶意的中央服务器。
4.2.3 后门攻击(backdoor attacks)
与后门攻击相比,投毒和推理攻击更透明。后门攻击是将恶意任务注入到现有模型中,同时保持实际任务的准确性的一种方法。由于实际ML任务的准确性可能不会立即受到影响,因此识别后门攻击既困难又耗时。后门攻击的严重程度较高,需要很长时间才能识别攻击的发生。此外,后门攻击的影响是高的,因为后门攻击能够混淆ML模型,并自信地预测假阳性的能力。
4.2.4 GANs(对抗生成网络)
许多研究者对FL中的生成对抗网络攻击进行了实验和分析 [114] 。基于GAN的攻击能够发起中毒和推理攻击,对给定系统的安全性和隐私构成威胁。由于基于GAN的威胁的所有可能性都无法预见,因此它被归类为高影响和优先级的威胁。
4.2.5 系统中断IT停机时间
停机是生成系统中无法避免的威胁,经常观察到,由于后端服务器上的计划外或计划中的活动,高度配置和安全的应用程序需要一个停机阶段。在FL中,这种威胁的严重性较低,因为我们在每个客户节点上都有一个局部-全局模型,并且在中断后可以恢复训练过程。即使严重程度较低,这也是一个相当大的威胁,因为停机可能是一种精心策划的攻击,从FL环境中窃取信息。
4.2.6 恶意服务器
受影响的或恶意的服务器会产生巨大的影响,而诚实但好奇的或恶意的服务器可以很容易地提取私有客户端数据或操纵全局模型,利用共享的计算能力在全局ML模型中构建恶意任务。
4.2.7 通信瓶颈(communication bottlenecks)
从多个异构设备的数据中训练ML模型的挑战之一是通信带宽。在FL方法,通过传输训练过的模型而不是发送大量的数据来降低通信成本,但我们仍然需要保持通信带宽。这种威胁的严重性是很高的,因为通信瓶颈可以显著破坏FL环境。
4.2.8 搭便车攻击(Free-riding attacks)
很少有客户扮演被动的角色,仅仅为了利用全局ML模型的好处而与环境联系,而没有对培训过程做出贡献。这种被动客户端也可能插入虚拟更新,而不使用其本地数据训练ML模型。由于这种攻击发生的概率较低,因此严重程度为中等。
4.2.9 不可用性(unavailability)
在训练过程中,客户的缺失或流失可能会导致全球模型的培训效率低下。这类似于搭便车攻击,但在此场景中,由于网络问题或任何其他意想不到的障碍,客户机无意中错过了参与训练过程。这种威胁的严重性是中等的,因为概率较低,而且可以选择可以异步工作的聚合算法。
4.2.10 窃听(Eavesdropping)
在FL中,我们有一个学习过程的迭代,包括从客户机到中央服务器的通信轮。如果存在弱通信通道,攻击者可以通过弱通信通道窃听和提取数据。 窃听可以被认为是攻击FL模型的中度严重威胁,因为黑盒模型通常很难攻击。 攻击者更愿意接管安全性较弱的客户端,因为后者会提供模型参数和白盒全局模型。
4.2.11 数据保护法相互作用(Interplay with data protection laws)
这种威胁发生的可能性很低,因为配置FL环境的数据科学家要确保全局模型的部署在投入到所有客户的生产之前得到了很好的分析。该威胁的严重性较低,但仍然是一个相当大的威胁,因为在FL中有意或无意的配置错误可能会导致安全漏洞。
4.3 问题3:与分布式ML解决方案相比,FL特有的安全威胁是什么?
目前提出的分布式机器学习(Distributed Machine Learning, DML)解决方案旨在解决大数据和计算能力的挑战,同时训练ML模型。共享数据和计算能力来训练一个通用的ML模型。通过配置参数服务器或多个服务器节点,将数据或任务分配给DML的客户端节点。从架构的角度来看,DML与FL有一些共同的特性,也有一些研究工作解决了DML中的安全与隐私问题。然而,FL与现有的DML解决方案相比是独特的,默认情况下具有更高的安全性和隐私级别。本节旨在讨论FL的独特威胁和FL和DML之间共享的常见威胁。
威胁严重性ML 框架脆弱的地方中毒高DML/FL客户端数据操作,受损的中央服务器推理高FL客户端数据操作,受损的中央服务器后门攻击高DML/FL客户端数据操作GANs高FL客户端数据操作,受损的中央服务器恶意服务器高DML/FL受损的中央服务器通信瓶颈高DML/FL脆弱的通信带宽搭便车攻击中FLFL中的客户端不可用性中FLFL中的客户端窃听中FL脆弱的通信带宽数据保护法律相互作用低FLFL环境的实施者系统中断IT停机时间低FLFL中的客户端和中心服务器
4.4 问题4:针对FL安全漏洞的防御技术是什么?
防御技术有助于防范已知的攻击,降低风险发生的可能性。防御有两种类型,即主动防御和被动防御。主动防御是一种猜测与之相关的威胁和风险并采用成本效益高的防御技术的方法。反应性防御是在识别攻击后完成的工作,并作为缓解过程的一部分,防御技术在生产环境中作为修补程序部署。下表总结了当前FL的防御技术和它们所减轻的威胁类型。
4.4.1 Sniper
最近,作者在 [136] 中提出了Sniper方法,它可以识别合法用户,并显著降低中毒攻击的成功率,即使涉及多个攻击者。
4.4.2 知识蒸馏(Knowledge distillation)
它是模型压缩技术的一种变体,在模型压缩技术中,经过充分训练的神经网络将知识一步一步地转移到一个小模型中。知识精馏节省了训练模型所涉及的计算成本。在FL中,只共享知识而不共享模型参数的概念可以用来增强客户机数据的安全性。
4.4.3 异常检测(Anomaly detection)
这种技术经常使用统计和分析方法来识别不符合预期模式或活动的事件。一个有效的异常检测系统需要一个正常行为或事件的概要来检测攻击是否偏离正常行为概要。在FL环境中,可以使用不同的异常检测技术检测不同的攻击,如数据中毒、模型中毒或木马威胁。
4.4.4 移动目标防御(Moving target defense)
移动目标防御定义为一种部署各种机制和策略的方式,这些机制和策略会随着时间的推移不断变化,从而增加攻击者的成本和复杂性 [155] 。移动目标防御也增加了系统的弹性,同时限制了系统漏洞的泄露和攻击的机会。移动目标防御是在服务器级、网络级和应用程序级保护入侵的最佳防御类型。它是一种主动防御体系结构,旨在掩盖漏洞来源,不让攻击者发现。
4.4.5 联邦多任务学习(Federated MultiTask Learning)
联邦学习在考虑到本地数据隐私的大量移动设备上提供协作训练ML模型。这种设置也可以扩展到联合多任务学习环境,在该环境中,多任务学习驱动个性化但共享的设备模型。
4.4.6 可信执行环境(Trusted Execution Environment ,TEE)
这种技术也被用于不同的ML模型的隐私保护,其中计算资源的私有区域被隔离为一个特定的任务 [160] 。这种方法也适用于计算资源非常有限的联邦学习。TEE是一个抗篡改的处理环境,它提供了在主处理器的安全区域中执行的代码的完整性和保密性。
4.4.7 数据消毒(Data Sanitization)
[142] 首次提出的训练数据消毒主要是作为异常检测器来过滤掉看起来可疑的训练数据点。 [162,163] 最近的工作旨在通过使用不同的稳健统计模型来改进数据清理技术。在FL环境中,数据消毒技术是针对数据中毒攻击的常见防御技术之一,但是 [164] 的研究报告指出,更强的数据中毒攻击有可能打破数据消毒防御。
4.4.8 Foolsgold
恶意客户端创建多个假身份,并向中央服务器发送伪造的更新。这种类型的攻击可能会破坏FL环境的安全性和真实性。
4.4.9 剪枝(Pruning)
它是FL中的一种技术,使ML模型的大小最小化,以降低复杂性和提高精度。在FL中,客户端具有相对较低的计算能力和通信带宽。当我们在FL环境中训练大型深度神经网络时,问题就出现了,因为与大型数据中心中的机器相比,客户端通常具有相对较低的计算能力和通信带宽。
另一种基于GAN的针对FL安全性提出的防御技术称为PDGAN,它在 [165] 中提出,用于帮助防御来自FL恶意客户端的数据中毒攻击。还有一种防御技术,使用 [166] 中提出的垂直联邦学习方法,称为Secureboost框架,它基于梯度增强树算法。
五、联邦学习的隐私(文章重点)
默认情况下,FL通过减少网络(中央服务器)中用户数据的占用来提高隐私。受此启发,本节致力于探讨联邦学习技术中存在的隐私问题和当前的相关成就。
本节专门回答以下隐私有关的研究问题:
- 问题1:FL域中的隐私威胁/攻击有哪些?
- 问题2:有哪些技术可以减轻问题1中已识别的威胁,并增强FL的一般隐私保护特性?
- 问题3:与分布式ML解决方案相比,FL面临的独特隐私威胁是什么?
- 问题4:问题2中确定的隐私保护技术的相关成本是什么?
5.1 FL域中的隐私威胁/攻击有哪些?
根据最近的研究,FL仍然存在一些隐私威胁,因为对手可以根据每个参与者上传的参数部分揭示原始训练数据集中的每个参与者的训练数据。FL中的这些关键威胁可以概括为不同类型的推理攻击。
5.1.1 成员推理攻击
成员推理攻击 [167] 的目的是通过检查训练集上是否存在数据来获取信息。攻击者滥用全局模型来获取其他用户的训练数据。在这种情况下,通过猜测来推断训练数据集上的信息,并训练预测模型来预测原始训练数据。
5.1.2 无意的数据泄漏&通过推断重建
在这种情况下,来自客户机的更新或渐变会意外地泄露中央服务器上的信息。 [168] 作者利用了无意的数据泄露漏洞,并通过推理攻击成功地重构了其他客户端的数据。
5.1.3 基于GANs的推理攻击
GANs是近年来在大数据领域非常流行的生成式对抗网络,也适用于基于FL的方法。针对FL, [114] 中的作者提出了mGAN-AI框架,用于探索基于GAN的对FL的攻击。
在FL客户中可能存在潜在的对手,这些客户可能只使用旧的本地数据作为其贡献,以换取全局模型。在获得全局模型后,可以使用推理技术推断其他客户信息。由于对客户概况和声誉的了解有限,这种行为很难辨别。此外,只有参数更新的协同训练也使得FL服务器难以评估每个客户端贡献的效果。
5.2 有哪些技术可以减轻问题1中已识别的威胁,并增强FL的一般隐私保护特性?
主要FL中增强隐私保护和减少威胁的算法主要基于两类:安全多方计算(SMC)和差分隐私(DP)
5.2.1 安全多方计算(Secure multi-party computation)
在SMC中,通信采用密码学方法进行保护。最近,SMC已经被用来在FL框架中保护来自客户端的更新。与传统的SMC算法不同,FL算法只需要对参数进行加密,无需对大量的数据输入进行加密,大大提高了计算效率。这一性能特点使SMC在FL环境中成为一个较好的选择。
基于SMC的解决方案仍存在一些挑战。主要的挑战是效率和隐私之间的平衡。此外,如何为FL客户端设计一个轻量级的SMC解决方案仍然是一个开放的问题。
5.2.2 差分隐私(Differential privacy)
DP的主要概念是通过对个人敏感属性添加噪声来保护隐私 [174] 。因此,每个用户的隐私都受到了保护。同时,与增加隐私保护相比,每个用户增加的噪声造成的统计数据质量损失相对较低。在FL中,为了避免数据的反向检索,引入了DP对参与者上传的参数添加噪声。
但是,这样的解决方案会给上传参数带来不确定性,可能会影响训练的效果。此外,这些技术使FL服务器更难评估客户端的行为来计算收益。
5.2.3 VerifyNet
VerifyNet [180] 是一个隐私保护和可验证的FL框架。它被列为保护隐私的首选缓解策略,因为它提供了双重掩蔽协议,使攻击者难以推断训练数据。它为客户端提供了一种验证中心服务器结果的方法,保证了中心服务器的可靠性。这个框架的唯一问题是通信开销,因为中央服务器必须向每个客户端发送可验证的证明。
5.2.4 对抗训练(Adversarial training)
对抗性数据的例子是对现实世界数据的不完善的预测。攻击者试图用扰动数据来影响FL模型的鲁棒性。对抗性训练是一种主动防御技术,从训练阶段开始就尝试攻击的所有排列,以使FL全局模型对已知的对抗性攻击具有鲁棒性。
对抗性训练提高了用户数据的隐私性,因为增加了对抗性样本,最大限度地减少了通过推理揭示实际训练数据的威胁。
5.3 与分布式ML解决方案相比,FL面临的独特隐私威胁是什么?
由于FL默认提供用户数据隐私,因此针对FL的隐私威胁很少。如 [187] 所讨论和实验的,在保护用户数据隐私方面,FL优于DML。在带有参数服务器的DML解决方案中,发起推断攻击(如5.1节所述)从其他客户端窃取信息将是最不可取的方法,因为数据很容易在参数服务器上或通过客户端更新访问。然而,对于DML应用程序,例如 [8] ,训练良好的ML模型被外包为付费服务,因此很有可能受到基于推理的攻击 [188,189] 。
基于GANs的推理攻击(在第5.1.3节中讨论)在FL环境中是可行的,但对于DML解决方案是不太合适的方法,这使得基于GANs的推理攻击仅针对FL。
5.4 问题2中确定的隐私保护技术的相关成本是什么?
每一个附加增强都有它自己的一组额外的成本和影响。这里的成本定义了由于实现的增强方法而引起的开销或结果。安全多方计算和差分隐私增强了FL的隐私保护能力,但在准确性和效率方面付出了更高的代价。安全多方计算和差分隐私增强了FL的隐私保护能力,但在准确性和效率方面付出了更高的代价。在基于加密的安全多方计算方法中,每个客户机都需要花费额外的计算资源来执行加密。因此,使用加密技术来增强用户数据的隐私性,需要牺牲ML模型的效率。
六、其他文献工作
文献[197]的作者关注FL中的四个挑战,即昂贵的通信、系统异构性、统计异构性和隐私问题。作者在 [198] 中对现有的FL模型进行了分类,并对每个类别进行了总结。它强调从系统的角度来评估围绕FL的问题,从而建立一个健壮的FL环境。该文从数据隐私级别、机器模型、跨域数据划分和数据隐私的基本构建块等方面对数据隐私进行了分类,并对数据隐私进行了简要概述。
很少有论文关注与FL相关的领域特定领域,它们的目的只是在不同的现实世界领域中引入可能有用的用例场景。
七、未来FL安全与隐私方向
7.1 零日对抗性攻击及其辅助技术
FL的防御措施旨在防范已知的漏洞和特定的预定义恶意活动,在测试时,它们在检测设计参数之外的攻击方面的作用较小。尽管这种现象适用于几乎任何ML应用程序的防御机制,但在FL中这种可能性更大,因为我们在生产中没有很多版本能够证明各种攻击的可能性。
7.2 信赖的可溯源性
FL的一个主要挑战是在底层ML过程的整个生命周期中跟踪全局ML模型。有一些初步工作利用区块链技术 [210-212] 和FL提供并跟踪事务更新到全局ML模型 [129,131] ,希望在深度学习中实现更透明的训练过程跟踪ML模型。
7.3 使用APIs定义好的过程
FL需要详细分析用不同方法标记的所有优缺点,需要定义标准化的技术来支持不同领域的FL的新需求。由于隐私是FL的一个关键因素,需要进行进一步增强隐私,对每个需求的方法进行标准化,并定义一个过程(使用通用api)来实现这些增强的方法。
7.4 优化隐私保护增强和成本之间的权衡
目前的研究工作显示了如何以牺牲效率或准确性为代价来加强FL中的隐私保护。但是,目前还没有找到合适的SMC加密级别和加噪量的研究工作。如果加密级别或噪声量不够,参与者仍然存在隐私泄露的风险。相反,如果加密级别过高或参数中加入了过多的噪声,则FL模型的精度会较低。
7.5 在实践中建立FL隐私保护增强框架
发展FL增强的隐私保护框架可能是一个紧迫的研究方向,可以有利于学术研究和FL在行业中的应用。
7.6 FL的客户选择和训练计划
训练计划和训练轮客户选择策略在FL中至关重要。 [213] 的研究工作提出了最优的方法,但仍需要为FL中的每个ML算法用例制定标准化的方法。
7.7 不同ML算法的优化技术
基于不同的ML算法,需要有预定义的、标准化的优化算法来构建FL模型。有许多提议的聚合/优化算法建议优化或增强FL,但仍然有必要进行专门的研究,为当前所有ML应用/用例提供FL特定的优化算法。这有助于未来的实现者/适配器轻松开发FL特定的解决方案。
7.8 对训练策略和参数的愿景
由于FL的培训需要时间、成本和计算成本,因此,在设置最优值方面有远见将有助于建立鲁棒且具有成本效益的FL解决方案。
7.9 易于迁移和生产
没有简单直接的方法来生产FL环境。 [215] 中的研究工作提出了在转向生产时需要考虑的许多因素,但是,仍然需要建立完善的指导方针,以便在FL中实现新的用例或将现有的ML环境迁移到分散的FL方法。
八、结论
在本文中,我们提供了一个全面的研究安全和隐私成就问题,以及在FL环境中的影响。通过对安全与隐私的评估和结果,我们希望给社区提供新的视角,并引起社区对构建适合大规模采用的无风险FL环境的关注。未来方向部分,我们概述了FL需要深入研究和调查的领域。FL是一个相对较新的市场框架,需要进一步研究,以确定适合不同FL环境风格的增强充溢。
版权归原作者 crypto_cxf 所有, 如有侵权,请联系我们删除。