联邦学习作为一种使用分布式训练数据集构建机器学习模型的新兴技术,可有效解决不同数据用户之间因联合建 模而导致的本地数据隐私泄露问题,从而被广泛应用于多个领域并得到迅速发展。然而,现有的联邦学习系统已被证实在数 据收集阶段、训练阶段和推理阶段都存在潜在威胁,危及数据的隐私性和系统的鲁棒性。**本文从安全威胁和隐私威胁两类潜 在威胁入手,围绕机密性、完整性和可用性(CIA 三元组)给出了联邦学习场景中安全属性的详细定义,并对联邦学习中各 类攻击方式和防御手段进行了系统全面综述。**首先,本文对横向、纵向联邦学习过程,以及潜在威胁分别进行了概述,并从 对抗性攻击和非对抗性攻击两个角度,分析了投毒攻击、对抗样本攻击和推理攻击等常见攻击的基本概念、实施阶段和现有 方案。进一步地,依据不同的攻击方式,将防御手段划分为鲁棒性提升方法和隐私性增强技术两类:鲁棒性提升方法主要防 御系统遭受的对抗性攻击,包括有数据消毒、鲁棒性聚合、异常检测、对抗训练、知识蒸馏、剪枝和其他方法等,隐私性增 强技术主要防御系统遭受的非对抗性攻击,包括有同态加密、安全多方计算、差分隐私和区块链等。最后,本文给出了联邦 学习中鲁棒性和隐私性方面的未来研究方向。http://cjc.ict.ac.cn/online/bfpub/gy-2023222151851.pdf
**1. 引言****人工智能已成为引领新一代产业变革的新兴 技术,尤其对应用创新、企业转型及社会发展有着 重大影响,已经上升到国家战略层面。**作为人工智 能核心技术的机器学习却面临着隐私威胁和信任 危机等问题[1],迫使各个用户将数据存储在本地, 彼此之间难以流通,形成了“数据孤岛”。数据孤 岛问题阻碍了多个用户进行有效的数据合作,导致 数据的潜在价值难以发挥。此外,数据孤岛中非同 源的数据之间相互关联但又存在较大差异,致使这 些数据呈现非独立同分布(Non-Independent and Identically Distributed,NON-IID),带来了新的挑战。联邦学习(Federated Learning,FL)[2-4]作为机器学 习技术的新分支,能满足隐私数据不出本地的前提 下,在多个用户之间进行高效率的联合建模、模型 训练,充分释放数据潜在价值,近年来已被广泛应 用于键盘预测[5]、安全检测[6-7]和信号识别[8]等。虽然联邦学习能一定程度解决本地数据的隐 私问题,但在模型参数共享、模型聚合时又会给攻 击者带来新的可乘之机,如联邦学习的梯度会泄露 用户数据或学习过程的隐私信息[9-11],攻击者会对 训练数据或局部模型进行投毒[12]或在输入样本中 加入恶意扰动[13],从而危害系统的安全性。针对不 同目标、不同程度和不同类型的攻击威胁,联邦学 习系统往往需要预先制定好相对应的防御策略,以 增强系统的鲁棒性和隐私性。**目前,国内外已有许多联邦学习相关的研究, 例如,Yin 等[14]面向隐私保护的联邦学习进行了全面的综述,Abdulrahman 等[15]详细阐述了联邦学习 面临的主要技术挑战,但他们都未进一步区分安全 威胁和隐私威胁的差异。在联邦学习安全与隐私保 护的综述[16-18]中,分别探讨了安全和隐私方面面临 的挑战,但在鲁棒性和隐私性防御手段方面没有展 开分析与总结。He 等[19]分析了深度学习中安全威 胁相关的四种攻击,通过定量和定性分析这些攻击 方法的敌手能力和攻击目标,总结出这些方法的优 缺点,并讨论了其他的安全弱点和可能的防御措 施。但提到的攻击威胁在联邦学习模型中不一定具 有同等的攻击效果,防御措施在联邦学习模型中也 可能受到限制。Lyu 等[20-21]提供了一种独特的威胁 模型分类方法,侧重介绍联邦学习中的安全与隐私 问题,强调了隐私保护的重要性。但该篇文章只重 点介绍了投毒攻击和推理攻击两种攻击威胁,对防 御措施缺乏详细的梳理与分析。2021 年,Mothukuri 等[22]针对联邦学习中的安全和隐私问题,以及相应 的防御措施做出了系统性综述。但该篇文章中阐述 的防御手段都是较为传统的方法,缺少对前沿创新 性工作的介绍,如联邦学习结合同态加密、差分隐 私、安全多方计算和区块链等隐私增强技术。对比 以上这些综述,本文在文章架构、分析方法和侧重 点上都有所不同。本文更详细且全面地梳理了联邦 学习中的安全威胁和隐私威胁,系统地对攻击手段 与防御手段进行了分类与剖析,侧重分析了最前沿 的联邦学习与密码技术相结合的隐私保护方案,并 进一步讨论了横向和纵向联邦学习中攻击手段的 区别,以及在此基础上为后续研究者提供了具有发 展前景的研究方向。本文的组织结构安排如下。第 2 节对联邦学习 和其潜在威胁进行概述;第 3 节详细地介绍了几种 常见攻击的分类和研究进展;第 4 节在已有的攻击 手段和研究成果基础上,从鲁棒性和隐私性两个角 度对提升手段进行了具体分析;第 5 节讨论了联邦 学习未来研究发展趋势;最后,在第 6 节总结全文。2 联邦学习中的潜在威胁 **2.1 联邦学习概述 联邦学习是一种以分布式方式训练模型的机 器学习技术,其主要思想是确保参与方的数据保留 在本地,而将训练的模型进一步上传和聚合到服务 器。后续学习过程仅使用模型进行训练,保护了参 与方的数据隐私,从而保护了数据安全。在用户数据集中的训练样本包含多个特征数 据,其中选择一个或多个能够将不同训练样本区分 开来的特征作为样本的标识符,即样本 ID。在联邦 学习场景下,每个数据集的组织和使用形式存在差 异,其特征和样本 ID 可能存在差异。联邦学习从 不同数据分布方式可分为横向联邦学习(Horizontal Federated Learning,HFL)、纵向联邦学习(Vertical Federated Learning , VFL ) 和 迁 移 联 邦 学 习 (Federated Transfer Learning,FTL)三种类型。依照传统机器学习过程的划分,联邦学习则可 以分为三个阶段:数据收集阶段、训练阶段和推理 阶段。联邦学习在这三个阶段都具有新的特点。(1) 数据收集阶段:指训练模型所需要的数据 准备过程。在传统机器学习中需要对每个用户的数 据进行集中收集,为模型训练做准备。而在联邦学 习中,数据集不会离开本地,具体为本地的数据收 集、用户之间数据格式的协商等准备过程。(2) 模型训练阶段:指利用这些数据集执行机 器学习训练算法,挖掘数据的潜在价值,迭代训练 一定轮次后直至收敛的过程。在联邦学习中,由于 数据集的分布式划分以及隐私性要求,需要使用特 定的模型训练算法。(3) 推理阶段:指把训练好的模型部署在具体 的应用场景中,输入真实样本进行预测的过程。在 横向联邦学习中这一阶段和传统机器学习没有太 大差异,但是在纵向联邦学习场景中,由于每个用 户只拥有一部分模型,推理阶段需要用户之间的合 作才能完成推理过程。目前常用的联邦学习开源项目包括 Google 的 TensorFlow1、微众银行的 FATE2、百度的 PaddleFL3 以及 OpenMinded 的 PySyft4等。其中,Google 的 TensorFlow 应用最早,他们在数据不离开每个用户 本地的情况下训练了一个循环神经网络模型,之后 又将联邦学习操作进一步封装,发布了专门为联邦 学习开发的框架 TensorFlow Federated(TFF)5,并 提供了一组高级接口可以方便程序员实现基于联邦平均的 HFL 算法。微众银行的 FATE 是首个工业 级联邦学习框架,使用安全多方计算和同态加密等 技术构建底层安全计算协议,可以支持逻辑回归、 树模型和深度学习等多种机器学习算法,与 TFF 相 比其封装程度更高,可以多方部署后直接开始训 练。PaddleFL 是基于百度的深度学习框架 Paddle 开发的联邦学习框架,提供了多种联邦学习策略, 支持基于安全多方计算的纵向逻辑回归和神经网 络的安全训练与推理,也支持基于安全聚合的 HFL 和经典的基于联邦平均和异步随机梯度下降的 HFL,但不支持树模型。PySyft 是第一个隐私保护 深度学习框架,基于 PyTorch 开发,可以方便地实 现联邦深度学习并基于安全多方计算和差分隐私 提供隐私保护。
**2.2 联邦学习的安全属性 **
本节从机密性 ( Confidentiality )、完整性 (Integrity)和可用性(Availability)安全三元组[23] (简称 CIA 三元组)的角度给出了联邦学习场景中 安全属性的概念。(1) 联邦学习的完整性:依照数据收集和模型 训练的不同阶段可以进一步划分为数据集完整性 和训练过程完整性。数据集完整性是指联邦学习中 用户的数据始终是良性的、未被篡改的[24]。训练过 程完整性是指服务器、用户等参与方都严格地按照 联邦学习协议执行算法[25]。(2) 联邦学习的可用性:根据模型训练和推理 阶段可以进一步划分为训练可用性和模型可用性。训练可用性是指能够在预计时间内完成模型的训 练,其包含两个方面:一是收敛性,指模型能够在 经过可接受的训练轮数内达到收敛状态;二是合作 公平性,是联邦学习场景中特有的,指用户能够依 据自身的贡献获得公平的补偿[26]。模型可用性是指 在推理阶段模型部署后的准确性和公平性,其中公 平性是指保证训练的模型不会对某些属性存在潜 在的歧视性[27]。(3) 联邦学习的机密性:机密性是指本地数据、 全局模型等敏感信息不会泄露给非授权的用户。另 外,机密性还保证了用户不会因为网络不稳定、设 备问题被动退出工作流后,导致本地梯度的机密性 泄露[28]。 **2.3 潜在威胁 **
根据对安全属性的不同影响,本文将联邦学习 中存在的潜在威胁划分为两大类,即安全威胁和隐 私威胁。安全威胁会破坏联邦学习中的完整性和可 用性,对联邦学习造成安全威胁的攻击称为对抗性 攻击,其主要目的是干扰联邦学习训练或推理过 程,影响联邦学习训练时的收敛速度或推理结果。隐私威胁会破坏联邦学习中的机密性,对联邦学习 造成隐私威胁的攻击称为非对抗性攻击,其主要目 的是试图从联邦学习各个阶段获取隐私信息或其 它好处,但不会破坏模型训练和推理过程。在联邦学习的不同阶段会受到不同的安全威 胁和隐私威胁。在数据收集阶段,受到的安全威胁 包括数据投毒攻击(Data Poisoning Attack)、女巫攻击(Sybil Attack)和搭便车攻击(Free-riding Attacks),隐私威胁包括样本 ID 隐私泄露。在训练 阶段,受到的安全威胁包括模型投毒攻击(Model Poisoning Attack)、针对通信瓶颈(Communication Bottlenecks)的攻击和搭便车攻击,隐私威胁包括 推理攻击(Inference Attack)。在推理阶段,会受到 的安全威胁包括对抗样本攻击,隐私威胁包括模型 提取攻击(Model Extraction Attack)和推理攻击。联邦学习过程的三个阶段及潜在威胁如图 1 所示。 **3 联邦学习中的攻击手段 **
**3.1 对抗性攻击 **
**3.1.1 投毒攻击 **
机器学习中的投毒攻击[29-30]是指攻击者通过 控制和操纵部分训练数据或模型来破坏学习过程。而联邦学习中每个用户都拥有一个数据集,内部的 恶意攻击者可以轻易地对数据集、训练过程和模型 进行篡改,实现降低模型性能、插入后门等一系列 攻击效果。投毒攻击是联邦学习中应用最广泛、研 究最深入的攻击。通常,投毒攻击按照攻击方式的 不同可以分为数据投毒和模型投毒,而根据攻击目 标的不同可以分为拜占庭攻击(即非定向投毒攻 击)和后门攻击(即定向投毒攻击)。(1) 按攻击方式划分 ① 数据投毒:攻击者破坏训练数据集的完整 性,通过渗入恶意数据以降低数据集质量或有目的 的毒害数据。数据投毒根据对数据集标签的不同操 作分为脏标签攻击(Dirty-label Attack)[31]和清洁标 签攻击(Clean-label Attack)[32]。脏标签攻击会篡 改数据集的标签,如常见的标签翻转攻击[33],而清 洁标签攻击不篡改标签,仅对数据进行处理生成新 的样本。联邦学习中由于数据不出本地,只有模型 作为信息载体,因此基本不考虑数据投毒的不可感 知性,从而数据投毒攻击主要是更加简便有效的脏 标签攻击。② 模型投毒:攻击者破坏训练过程完整性, 通过完全控制部分用户的训练阶段,对上传的局部 模型进行篡改,实现对全局模型的操纵。常见的攻 击手段是通过提升(Boosting)恶意更新来加强攻 击效果[34]。为了增强提升的隐蔽性,Bhagoji 等[35] 还将提升过程转化为一个基于交替最小化找到合 适的提升值优化问题,使有毒更新与正常更新难以 区分。此外,还有其他实现更强隐蔽性和更高成功 率的模型投毒攻击[36]和针对服务器先进防御聚合 机制的隐蔽模型投毒攻击[37]等研究。虽然数据投毒和模型投毒两种攻击方式都对 模型训练产生影响,但单一的数据投毒相较模型投 毒表现不佳,是因为数据投毒本质上与模型投毒会 同样修改局部模型的更新权重,而后者可以针对联 邦学习聚合等特性实施针对性的攻击。(2) 按攻击目标划分 ① 拜占庭攻击:攻击者试图破坏训练可用性 和模型可用性,使其无法收敛或无法在主要训练任 务中达到最优性能,并且不针对任何特定的用户或 数据样本。在联邦学习中,通过发送恶意更新和其 他良性更新的线性组合能实现拒绝服务攻击[38],但 此类简单的攻击很容易被检测和过滤。文献[39]则 表明更新中轻微的扰动就能够实现投毒攻击的效 果,并且规避基于幅度的防御策略。已知聚合规则的攻击者可以针对性地实施更 具破坏性的拜占庭攻击,并且服务器为了吸引用户 或满足用户的知情权,其聚合规则常常是透明公 开。文献[40]提出了局部模型投毒攻击(Local Model Poisoning Attack),在已知聚合规则的情况下,攻击 者将构造恶意更新转化为在聚合规则下全局更新 偏移值的优化问题。同样通过优化实现拜占庭攻 击,文献[41]使用了最优比例系数γ和已优化数据 集的扰动向量∇ 𝑝对恶意梯度进行微调并在结果中 找到近似的最大值,实现更好的攻击效果。但文献 [40]的方案在一轮迭代中就能完成优化过程,而文 献[41]需要数十次的聚合迭代。当前,VFL 中拜占庭攻击的相关研究还很少, 由于模型被用户分割,数据投毒和模型投毒的隐蔽 性更强、危害更大,是一个值得深入研究的方向。② 后门攻击:又叫木马攻击(Trojan Attack) 攻击者试图使模型在某些目标任务上实现特定表 现,同时保持模型在主要任务上的良好性能[42]。不 同于拜占庭攻击由于会降低主要任务的总体性能 易被检测,后门攻击更难被检测,这是因为攻击目 的通常是未知的,难以确定检测标准。后门攻击可 以通过数据投毒和模型投毒来实现,其在缺乏防御 时的表现在很大程度上取决于当前敌手的比例和 目标任务的复杂性。此外,相同的后门触发条件可 能导致不同标签的样本错误的分类,这不同于后文 的对抗样本攻击只对特定修改后的图像进行错误 分类,不会影响到其他图像样本。用,包括基于深度神经网络(Deep Neural Networks, DNN ) 的 隐 蔽 后 门 攻 击 [43-45] 和 注 入 后 门 的 “BadNets”模型[46]等,以上方案都是在数据集上 实现的后门攻击。而在联邦学习中,结合模型投毒 实现的后门攻击更为常见。Bagdasaryan 等[47]指出 单一的数据投毒攻击可能对联邦学习无效,因为恶 意模型可能与数量众多的良性模型聚合,极大地降 低了攻击效果。他们提出了一种基于模型替换的投 毒方法,其依据模型收敛性导致局部模型更新趋于 零,利用模型替换在一轮迭代中将全局模型替换为 后门模型。此外,大多数后门攻击[48]并没有考虑联 邦学习分布式特点,Xie 等[49]则提出了新的分布式 后门攻击,即后门在恶意攻击者控制的用户之间被 拆分,并将每个模式嵌入敌对客户的训练集中,在 模型聚合后又将成为一个完整的后门并插入到模 型中,从而提高后门攻击的隐蔽性。与 HFL 中的后门攻击不同,在典型 VFL 模型 中的用户无需提供也不能获得标签信息,也就意味 着不具备特征实例所对应的目标标签的知识。Liu 等[50]为了研究 VFL 中的后门攻击,其中假设恶意 用户拥有至少一个训练实例对应标签的知识,使用 梯度替换的方法,将原本实例的中间梯度替换为投 毒实例的梯度,向最终模型中植入后门。 **3.1.2 对抗样本攻击 **
机器学习中的对抗样本攻击是指在推理阶段 中,刻意地给输入样本增加轻微的恶意扰动,使得 分类器以极高概率对样本进行错误分类,从而导致 模型输出错误的预测结果[13,51]。按照攻击者拥有的 信息,对抗攻击可以分为白盒攻击和黑盒攻击。在 白盒攻击中,攻击者能够获得机器学习算法以及模 型参数,并根据这些已知信息去制作对抗样本。在 黑盒攻击中,攻击者不知道机器学习的算法和参数 信息,通过与系统的交互过程来生成对抗样本。一 方面,联邦学习的分布式特性增加了模型参数泄露 的可能性,这意味着联邦学习比传统机器学习更容 易遭受白盒攻击的威胁。另一方面,与传统机器学 习类似,在联邦学习模型部署之后,攻击者也能够 通过与系统的交互实施黑盒攻击。对抗样本攻击在机器学习领域已有广泛研究。GoodFellow 等[13]发现了深度学习输入—输出映射 上的不连续性,通过施加难以察觉的扰动,最大化 网络的预测误差。Szegedy 等[52]验证说明了几种经 典神经网络模型容易受到对抗样本攻击的影响。Akhtar 等[53]对深度学习中的对抗样本攻击及防御进行了全面性的综述。llyas 等[54]开发了一种新的黑 盒攻击视角,将此类攻击的构造视为梯度估计问 题,打破了利用梯度中先验信息发起对抗样本攻击 的最优性障碍。在联邦学习场景下的模型部署与机器学习类 似,传统的对抗样本攻击可以拓展到联邦学习中, 但目前针对联邦学习的对抗样本攻击研究尚少。Wang 等[33]研究了对抗样本攻击与后门攻击之间的 联系,表明模型对后门的鲁棒性在通常情况下意味 着对于对抗样本攻击的鲁棒性。Pang 等[55]则针对 VFL 中用户的特征差异,提出了对抗性主导输入攻 击(Adversarial Dominating Inputs Attack)。与传统 的对抗性样本控制整个特征空间不同,对抗性主导 输入攻击仅仅控制部分特征输入,就能主导其他用 户的全部输入,实现对特定的输入进行错误分类。同时,对抗性主导输入使得其他用户做出非常少的 贡献,从而影响了激励用户贡献的奖励。 **3.1.3 搭便车攻击 **
搭便车攻击是指部分用户不参与协作或者不 具备足够的条件,而试图从集体性质的服务和公共 产品中获得优势。其主要发生在带有激励的联邦学 习中,破坏训练过程完整性和合作公平性。攻击者 一般不消耗或只消耗部分的本地数据和计算资源, 通过向服务器发送随机更新或与聚合模型相似的 更新,伪装成参与联邦学习训练的正常用户,以获 得相应激励,同时可能对模型性能造成一定影响。在联邦学习中,常见的搭便车攻击通过提供随 机参数更新实现攻击,而服务器可以使用传统的深 度学习异常梯度检测进行防御,如 DAGMM[56]。文 献[57]介绍了一个在基于模型平均的联邦学习中进 行搭便车攻击的理论框架,证明了在每次迭代中返 回全局模型会导致搭便车攻击。通过向构造的参数 更新中增加噪音、应用随机梯度下降(Stochastic Gradient Descent,SGD)来最大化与其他用户更新 的相似性,实现更加隐蔽的攻击。文献[58]提出了 一种新的搭便车攻击,在本地使用小数据集训练模 型,伪装成大数据集以获取更多奖励。此外,搭便 车攻击者也可能会通过提升方法来增大权重,从而 在全局服务器上表现出更大的贡献程度,以获得更 大的激励份额。在 VFL 中的用户也可能不进行完整的训练,而 应用未经充分训练的低质量模型,会降低整体模型 的性能。此外,VFL 的用户并不公开模型信息,服 务器更难区分低质量的模型,故 VFL 中的搭便车攻击值得进一步研究。 3.1.4 女巫攻击
女巫攻击(Sybil Attack)指在允许成员自由加 入和退出的系统中,单个攻击者通过多个合谋的身 份加入系统,从而巧妙地分配攻击,以增强隐蔽性 和攻击效果[59]。女巫攻击常被用于投毒攻击中,也 可以应用在其他对抗性攻击中,以扩大对抗性攻击 的优势。尤其在跨设备(Cross-device)联邦学习中, 用户认证强度低,攻击者可以通过伪造多个身份实 施女巫攻击,以便提高攻击效果。Fung 等[60]中测试了配合女巫攻击的投毒攻击 效果,并提出了防御女巫攻击的方案 FoolsGold。作为 FoolsGold 的后续研究,文献[61]进一步研究了 联邦学习对女巫攻击的脆弱性、目标和策略分类, 提出一种被称为训练膨胀的 DoS 攻击,评估了几种 分布式机器学习容错方案,证明了 FoolsGold 在防 御配合女巫攻击的投毒攻击中有更好的表现。而在 VFL 中,由于用户数量较少,认证强度高,女巫攻 击的应用将受到限制,较难实施。 **3.1.5 针对通信瓶颈的攻击 **
在联邦学习中,需要在大量参与设备和服务器 之间来回交换更新后的梯度,频繁的通信和传输的 数据量都会产生大量的通信开销;其次,大量异构 设备有限的网络带宽,会增加成员掉队的情况,进 一步导致通信时间增长;此外,攻击者可能通过破坏通信信道来影响联邦学习系统的稳定性和鲁棒 性。以上这些问题成为了联邦学习的主要通信瓶 颈,统称为针对通信瓶颈的攻击,它影响了联邦学 习的训练可用性,在 HFL 与 VFL 系统中都有可能 发生。针对通信瓶颈的攻击比投毒攻击、对抗样本攻 击和后门攻击的普遍性更低,但其导致的后果非常 严重,一旦系统遭受通信瓶颈攻击,可能会显著破 坏联邦学习环境,给系统带来严重的损失。这种攻 击最直接的解决方法是降低通信开销,把需要上传 的更新量化,显著减少需要传输的数据大小[62]。2019 年,Luping 等[63]指出移动边缘设备面对昂贵 的网络连接和复杂的 DNN 训练,需要更新一个很 大的梯度向量,使得通信开销成为严重的瓶颈。Yao 等[64]则指出脆弱的通信带宽和单一的联邦学习训 练模型,使得通信成本成为影响联邦学习模型收敛 的主要因素。由于对联邦学习完整性和可用性的破坏,以上 对抗性攻击体现出良性用户与恶意攻击者之间的 对抗关系,更可能会在攻击过程中被察觉,面临风 险更大,因此往往来自于敌对组织或势力。如表 1 所示,综合前文各类攻击的实施难度、 攻击效果及防御难度,直观地总结了联邦学习中各 种对抗性攻击的威胁等级,梳理了其对 CIA 三元组 的威胁情况、作用阶段和对应的鲁棒性提升方法。
3.2 非对抗性攻击
3.2.1 模型提取攻击 机器学习中的模型提取攻击是指攻击者尝试 反复发送数据以获取响应结果,从模型的 API 接口 中恢复出原始模型参数或功能,甚至构造出与原始 模型几乎等效的模型,一般发生在模型推理阶段, 破坏模型机密性。一些场景中模型具有较高的训练 成本,其信息是敏感的,易受到提取攻击。现有针 对模型提取攻击的研究主要集中在减少窃取目标 模型的次数、提高查询精准度和降低查询开销等。一般而言,受模型提取攻击影响最大的是预测即服 务系统,因为模型本身属于隐私信息,并且从模型 中可以推测出训练数据集的信息。 Tramèr 等[133]首次提出了机器学习中的模型提 取攻击,并对 Google 等公司部署在云服务器上的 预测系统发动攻击,在短时间内提取出与原始模型 完全等效的模型。2020 年,Chandrasekaran 等[134] 将模型提取攻击形式化并提出一种利用主动学习 的模型提取攻击,能够在无标签数据上训练攻击模 型;Jagielski 等[135]改进了基于训练的模型提取攻击 的效率,并提出了一种无需训练的可以直接提取模 型权重的攻击方案,围绕准确性和忠诚度两个对抗 目标对模型提取空间进行系统化,分别作为衡量盗 窃动机敌手和反映侦察动机敌手的成功率。在联邦学习中,攻击者同样可以对已经部署的 联邦学习模型发动模型提取攻击,由于大部分应用 场景的模型都公开,所以威胁较小。但是在 VFL 中,由于每个用户持有部分模型并允许保留隐私, 模型提取攻击可能由其中一个用户发起,尝试获得 完整的模型,并且由系统内参与方发起的攻击可能 更难防御,但目前这方面的相关研究较少。 **3.2.2 推理攻击 **
按照攻击目的不同,推理攻击可分为成员推理 攻击和属性推理攻击,其中成员推理攻击目的是推 断训练数据集中是否包含特定的个人数据记录,属 性推理攻击目的是推断训练数据集的某些属性。联 邦学习场景下的推理攻击利用了系统的一个弊端, 即每个用户和参数服务器随着训练迭代更新相同 的全局模型,攻击者往往能够推断出模型的信息。此外,对抗性攻击中的投毒攻击也会对全局模型训 练结果产生影响,这种影响也包含了可用于推理攻 击的泄露信息,不同于被动地获取模型信息,攻击 者可能会主动地实施投毒攻击来获取信息,这种攻 击也被称为主动推理攻击。(1) 成员推理攻击:成员推理攻击[10]尝试推断 某个样本点是否用于训练给定模型,是最简单的一 种推理攻击。当训练样本是敏感数据时,攻击者推 断出训练数据集中特定数据点的存在会构成隐私 威胁。文献[11]设计了一种白盒模型下的成员推理 攻击方案,并假设对手具有不同程度的先验知识, 在主动与被动攻击者、联邦与非联邦场景下进行了 实验和对比,实验结果表明,只要是用到 SGD 的 深度学习模型,对于有机会获取到模型参数的用户 或服务器,实施白盒模型下的成员推理攻击准确率 都可以达到 70%以上。在联邦学习场景下,每个用 户随着训练进程逐渐更新全局模型,很容易具有实 施攻击的条件。参数服务器是好奇或恶意的,从而 实施被动或主动的成员推理攻击也是值得考虑的 问题,而在集中式场景下白盒模型的条件通常难以 达到。在 VFL 中,数据对齐阶段需要进行样本 ID 对齐,因此训练集中的样本信息会被所有用户共 享,通常不需要进行成员推理攻击。但是这样的隐 私泄露在很多实际场景中可能是不合理的[136],有 必要进一步地研究在数据纵向划分时如何在不泄 露样本 ID 信息的前提下进行模型训练。(2) 属性推理攻击:属性推理攻击[137-138]是指攻 击者尝试推断训练数据集的特征信息,包括某个样 本的具体数值或数据集的整体属性,例如年龄分 布、性别分布等。属性推理攻击可能发生在模型训 练过程中或模型训练完成之后,后者又称为模型反 转攻击[139]。文献[138]的属性推理攻击方案通过调 用原始模型来训练影子模型,该影子模型一定程度 上包含了原始模型中包含的隐私信息,然后再用影 子模型来训练攻击者感兴趣属性的分类器。文献 [137]提出的属性推理攻击关注训练样本整体或子 集的属性,尤其是与类别特征无关的属性。在该攻 击方案中,攻击者同样利用了联邦学习的实时性, 获取全局模型镜像并训练攻击模型。文献[140]提出 了黑盒模型下的属性推理攻击,即使攻击者没有参 与训练过程,仅通过调用训练好的模型也可以推测 出关于数据集的敏感属性,即使敏感属性没有参与 训练,并且与训练属性相关度很低,也会被泄露。在 VFL 中,同样有可能发生属性推理攻击。虽 然恶意用户只控制部分的模型,而且不能独立运 行,但通过分析中间输出等交互消息,可以推断出 其他用户的数据属性信息。与 HFL 不同,VFL 中 标签信息通常只有一方拥有并且是敏感的,因此针 对标签信息的推理攻击尤其需要关注。 3.2.3 基于 GAN 的攻击 生 成 对 抗 网 络 ( Generative Adversarial Networks, GAN)[141]是一种很有前景的无监督深 度学习模型,通过生成模型和判别模型的互相博弈 产生很好的输出样本。通常,基于 GAN 的攻击能 够发起投毒攻击[142]或推理攻击,它是一种威胁程 度非常高的攻击方式,通常作用于模型的训练阶 段。2017 年, Hitaj 等[143]提出了基于 GAN 的属性推 理攻击,该文献指出大多数的联邦学习方案都容易 遭受该模型反转攻击,即使引入了差分隐私和同态 加密这样的防御措施,只要每个用户会在本地迭代 更新全局模型,且模型最终可以准确地进行分类, 该攻击方案就可以成功实施。但是该方案所使用的手写数字数据集 MNIST 每一种类别都是相似的, 如果同一种类别的训练样本并不相似,则该文献的 攻击结果和训练样本会有很大差异[10]。Wang 等[144] 提出了一种将 GAN 和多任务鉴别器相结合的 mGAN-AI 框架,该框架通过恶意服务器计算攻击 目标的本地更新来恢复用户指定的私有数据。mGAN-AI 在服务端隐蔽性的工作,不会影响训练 阶段。在 VFL 中,由于每个用户只有全局模型的一 部分,基于 GAN 的攻击可能会失效。表 2 总结梳理了联邦学习中各种非对抗性攻击 的威胁等级、对 CIA 三元组的威胁情况、不同的作 用阶段和对应的隐私性增强技术。
**4 联邦学习中的防御手段 **
4.1 联邦学习鲁棒性提升方法 4.1.1 数据消毒 数据消毒(Data Sanitization)是指对有害的、 异常的数据进行清理,是针对数据投毒攻击的防御 通用方法[65],在机器学习中较为常用。为抵御在联 邦学习环境中的数据投毒攻击,数据消毒成为了其 中的第一道防线。选用数据消毒技术虽然可以过滤掉那些中毒 信息,保护数据的可用性和有效性,但需要访问用 户的本地数据[66],无法保证数据隐私性,也难以在 联邦学习分布设置的服务器中实现。另外,随着数 据投毒攻击的增强,数据消毒可能很难达到期望的 防御效果。面对自适应投毒攻击时,数据消毒防御 效果并不乐观[67]。所以数据消毒在联邦学习中较难 实施,只能在少数情况下,例如强认证的跨孤岛 (Cross-silo)联邦学习,可依靠用户自身来进行。4.1.2 鲁棒性聚合 在经典联邦学习框架下,服务器的聚合方案是 联邦学习架构的核心部分。2017 年,McMahan 和 Ramage 1首次提出了实现多用户分布式训练的 FedSGD 算法,不泄露本地数据,仅将中间梯度发 送给服务器。随后的研究[3]为了减少用户与服务器 之间的通信量提出了 FedAvg 算法,选择直接上传 多轮本地训练的模型,并取平均值作为全局模型。FedAvg 是经典的聚合方案,确定了 HFL 的基本框架,后续聚合研究大多以此作为基础。然而,FedAvg 并不具备对投毒攻击、后门攻击等对抗性攻击的鲁 棒性。为了抵抗上述攻击,需要进一步利用更新的 内在属性,识别并减弱恶意模型更新效果,从而实 现鲁棒性聚合(Robust Aggregation)。目前,鲁棒 性聚合的研究大致可以分为 3 类。(1) 基于统计特征和相似性的鲁棒性聚合 ;(2) 基于局部模型性能的鲁棒性聚合;(3) 基于训练函数优化的鲁棒性聚合。
**4.1.3 异常检测 **
异常检测(Anomaly Detection)旨在使用统计 和分析方法对模型的训练模式、数据集或相关事件 进行甄别,若检测到不符合预期的模式、异常行为 或异常数据,则系统会预警并做出反应措施。目前 异常检测模型主要集中对系统中的客户端异常检 测和数据异常检测两个方面的研究。 **4.1.4 对抗训练 **
对抗训练(Adversarial Training)是指在模型训 练的过程中加入微弱扰动,以提高系统鲁棒性的防 御方式。传统对抗训练攻击方法[92-93]大多应用于集 中的机器学习框架下,并且主要关注对抗训练数据 的生成。例如,Tramèr 等[92]提出集合对抗训练方法, 通过从其他预训练模型中转移过来的单位输入一 起作为训练集。2019 年提出的 Deep Confuse 技术[93] 通过解耦交替更新过程来训练网络的稳定性,利用 训练好的噪声编码器向样本添加有界扰动,从而高 效地生成对抗训练数据。目前,对抗训练[94-95]已逐渐被研究人员用于提 升联邦学习系统鲁棒性,而不仅仅局限于集中式的 机器模型。例如,Shah 等[94]研究了在联邦学习环境 中使用对抗训练来减少模型偏移,显著提高了对抗 精度和模型收敛时间。但对抗训练对于更复杂的黑 盒攻击可能不具备稳定性,且加入的扰动必然会影 响分类的准确度,故需要进一步采用适当的优化技 术来改善这些问题。 此外,对抗训练本身需要大量数据集,并且增 加了计算资源的消耗。尤其在具有较多参与方的跨 设备式联邦学习环境中,轻量级用户可能无法负担 高昂的对抗训练成本。Hong 等[95]提出了新颖的共 享资源学习方案,即准备最充分或功能最强大的高 资源设备与其他低资源用户共享安全模型,从而在 NON-IID 用户之间有效地传播对抗鲁棒性。此外,为了防止对抗样本攻击中的逃逸攻击,文献[96]通 过采用高斯噪声在训练数据集中包含对抗性数据 来平滑训练数据。 就目前而言,对抗训练主要集中于针对联邦学 习环境中的对抗样本攻击进行防御,但分析发现 [94],对抗训练也极大地减少了推理攻击带来的威 胁,提高了用户数据的隐私性,对于如何利用对抗 训练来抵御其他类型的攻击研究值得进一步研究。 **4.1.5 知识蒸馏 **
在不同模型训练场景中,若想实现更好的预测 结果,往往会选择集成许多较弱模型,但这样会导 致更大的计算量和更多的资源空间占用。知识蒸馏 (Knowledge Distillation)作为模型压缩技术之一, 就是将大模型相关知识逐步传递到小模型中,并从 大模型学到的知识中学习有用信息来指导小模型 训练,使小模型具备和大模型相当的性能[86- 87]。在 需要频繁交换训练信息的联邦学习中,知识蒸馏可 以有效地降低通信开销、节省存储空间和降低参数 冗余,从而防御针对通信瓶颈的攻击。此外,知识 蒸馏还提高了模型的泛化能力,能够一定程度上防 御投毒攻击和对抗样本攻击[86]。 在联邦学习与知识蒸馏的融合研究方面,Li 等 [88]在 2019 年基于知识蒸馏和迁移联邦学习开发了 一个 FedMD 通用框架,其允许计算能力存在异质 性的不同用户设计不同的网络结构,保护数据集的 隐私性和提高本地模型的性能。与没有协作的情况 相比,FedMD 能显著提高局部模型的性能,但需要 用户适当牺牲一部分数据隐私来组成共享数据集。 之后,大部分方案[89-91]都是在 FedMD 框架上进行 探究。例如,Lin 等[89]提出了用于模型融合的集成 蒸馏,通过局部模型输出的未标记数据来进行模型 融合,与 FedMD 对比,该方案进一步提高模型训 练速度,并降低了通信轮数和数据隐私泄露风险。 知识蒸馏能够具有降低通信开销、提高模型鲁 棒性的特点,在深度学习领域已经成为一个研究热 点。当其与联邦学习技术融合时,需要考虑场景的 分布式等特点,包括针对投毒攻击等对抗性攻击的 防御效果研究,目前仍存在一些空白。 **4.1.6 剪枝 **
剪枝(Pruning)技术也是一种模型压缩技术, 可以在用户的计算能力和通信带宽相对较低的情 况下,将联邦学习模型的大小进行修剪,降低模型 复杂度和提高精度。此外,在联邦学习中受到投毒 攻击后的模型会产生异常的神经元,而应用剪枝技术可以删除这部分异常神经元用以净化整个模型。 2015 年,Han 等[128]首次提出了一种启发式和 迭代权重剪枝方法去除神经网络冗余连接,而不会 造成准确性损失。2018 年,文献[129]提出一种新剪 枝技术,通过对攻击者放回的模型进行修剪,在修 剪完成后微调神经元上的权重,以便掌握后门控制 的权重,最终能够抵抗在训练集上的后门投毒攻击 和通信瓶颈攻击。最近的一些研究成果[130-132]广泛 应用剪枝技术来提升联邦学习系统的鲁棒性。例 如,Jiang 等[130]提出一种在联邦学习环境中具有自 适应和分布式参数修剪的 PruneFL 方法,通过调整 模型大小显著减少训练时间,减少通信和计算开 销,同时保持与原始模型相似的精度。 作为模型压缩技术之一,剪枝可以提升模型的 泛化能力,避免过拟合现象。然而,不规则的剪枝 可能导致模型收敛需要更多的迭代才能完成,或导 致系统参数偏差,这在特定联邦学习场景下会消耗 额外的资源。因此,合适的剪枝应从问题本身出发, 保证不丢失正确的结果,并考虑整体效果设定一个 合适的阈值,尽可能的剪去一些不必要的枝条。在 此基础上,还应该减少搜索的次数以提高剪枝效 率,以上这些因素都是剪枝研究考虑的优化思路。 **4.2 联邦学习隐私性增强技术 **
为了应对联邦学习中的隐私威胁,在联邦学习 中引入密码学相关技术是目前主流的隐私保护研 究方向,本节对这些方案进行介绍。 4.2.1 基于同态加密的隐私性增强
同态加密(Homomorphic Encryption,HE)是 一种无需访问数据本身即可对数据进行处理的概 率加密技术[185],即对经过同态加密的数据进行运 算后再解密得到的结果与直接对明文进行运算得 到的结果一致。若同态加密算法支持对密文进行任 意形式或任意次数的计算,则称之为全同态加密 (Fully Homomorphic Encryption,FHE);若仅支持加法或乘法其中一种计算,则称之为半同态加密 (Partial Homomorphic Encryption,PHE)。其中 PHE 又可以分为加法同态加密(Additively Homomorphic Encryption,AHE)和乘法同态加密(Multiplicatively Homomorphic Encryption,MHE)[186]。本节按照基 于半同态加密和全同态加密两条隐私性增强路线, 对这些方案进行具体分析。
**4.2.2 基于安全多方计算的隐私性增强 **
安全多方计算 (Secure Multi-Party Computation,SMPC)指无可信第三方参与下,多 个参与方之间安全地计算一个模型或函数问题 [192-193]。不同于同态加密模型,SMPC 具备严格的 安全定义和独到的安全优势,能为联邦学习设计个 性化的安全多方计算协议,为中间参数提供计算安 全性,有效提升模型参数或梯度向量的隐私性。 目前,已有许多基于 SMPC 的联邦学习隐私性 增强相关工作,按采用的 SMPC 种类不同,可分为 基于加法秘密分享的隐私性增强、基于 Shamir 秘密 分享的隐私性增强和多种技术组合的隐私性增强。
**4.2.3 基于差分隐私的隐私性增强 **
差分隐私(Differential privacy,DP)旨在传输 的梯度信息中加入随机噪声,将其查询操作的实际 结果隐藏起来或模糊化直至无法区分,从而实现对 隐私数据的保护。差分隐私一般是用来促进敏感数 据上的安全分析,使敌手无法在输出结果中识别个 体之间的敏感性。通常,差分隐私可用于防御模型 提取攻击、成员推理攻击、基于 GAN 攻击和窃听 等。因此,基于差分隐私的联邦学习模型可作为保 护本地训练数据私密性、梯度信息机密性和衡量隐 私损失阈值的有效解决方案[169-172]。 **4.2.4 基于区块链的隐私性增强 **
以上提到的同态加密、安全多方计算和差分隐 私等密码技术能够实现较好的隐私保护,但这些技 术大都依赖中心化参数服务器发送的模型参数,即 无法保证全局模型的可信度,且多数用户之间存在 不信任等问题[107-108]。区块链作为一种以密码学、 共识算法和分布式存储等技术相结合的去中心化 存储架构,其特有的数据结构优势结合密码技术可 以增强联邦学习的完整性和机密性。以下梳理了基 于区块链的联邦学习隐私保护的研究现状。 **4.2.5 其他隐私增强技术 **
此外,还有其他一些隐私性增强技术。针对联 邦学习中梯度会泄露隐私的问题,梯度裁剪也可以 一定程度上避免这种信息泄露[205],可信执行环境 (Trusted Execution Environment,TEE)[179]可以通 过硬件手段提供一个安全区域来执行模型训练操作以保护数据完整性和隐私性,VerifyNet[28]提供双 重屏蔽协议来保证用户局部梯度的机密性,混合防 御[180]融合多个防御技术防范服务器与恶意用户勾 结问题,模型水印技术[206]通过将水印嵌入模型参 数中用来在遭受模型窃取攻击之后进行举证和维 权,及 Anti-GAN 方法[181]通过使用 GAN 来生成假 的训练数据来保证私密性。