差分隐私引入统计噪声来保护数据,安全多方计算使用交互协议,而同态加密 (HE) 为联邦学习中的安全聚合提供了一种独特的加密方法。HE 允许直接在加密数据上进行计算,无需首先解密。对于典型的联邦聚合任务,我们关注那些具有加性同态性的方案。
加性同态的奥妙
假设你有一种特殊的加密方式,我们称之为 Encryptpk(⋅),使用公钥 pk。一个加性 HE 方案具有一个显著的属性:如果你使用为密文定义的特定运算 ⊕ 将两个消息(例如 u1 和 u2)的加密版本结合起来,结果等同于原始消息之和的加密:
Encryptpk(u1)⊕Encryptpk(u2)=Encryptpk(u1+u2)
这一属性自然地延伸到多个消息。在联邦学习的背景下,每个客户端 i 计算其本地更新 ui。客户端不是明文发送 ui,而是使用公钥 pk 将其加密,得到 ci=Encryptpk(ui)。客户端将其密文 c1,c2,…,cN 发送给中心服务器。
服务器仅拥有公钥,无法解密任何单个 ci。然而,通过运用加性同态性,它可以计算密文之和:
C=c1⊕c2⊕⋯⊕cN
由于同态属性,得到的密文 C 实际上是所有客户端更新之和的加密:
C=Encryptpk(∑i=1Nui)
服务器现在拥有了加密的聚合结果。为了获取实际总和 ∑ui,密文 C 必须使用相应的私钥 sk 进行解密。重要之处在于,服务器通常不持有此私钥。
用于聚合的 HE 方案
几种密码方案具有加性同态性,并可能适用于联邦学习聚合。一些广为人知的例子包括:
- Paillier 密码系统: 一种被广泛研究的加性同态方案。它在加法方面相对高效,但密文可能显著膨胀。
- 基于格的密码学(例如 BGV、BFV、CKKS 变体): 这些方案可以支持加法和乘法(使其成为全同态或 FHE),但可以配置或以高效支持聚合所需的加法的方式使用。它们通常涉及更复杂的数学原理,但可以为某些操作或参数设置提供性能优势。
为了简单的聚合目的(∑ui),我们只需要严格支持加法的部分同态加密 (PHE)。FHE 方案虽然功能更强大,但会引入大量的计算和复杂度开销,这对于基本聚合通常是不必要的。
基于 HE 的安全聚合流程
让我们概述一下使用加性 HE 的典型联邦学习轮次中涉及的步骤:
-
设置:
- 某个实体(可以是受信任的第三方、客户端协作,或者在特定信任假设下是服务器)生成一个 HE 密钥对 (pk,sk)。
- 公钥 pk 分发给所有参与的客户端。
- 私钥 sk 保密,仅由指定的解密方持有。安全性取决于谁控制 sk。
-
客户端训练和加密:
- 每个客户端 i 执行本地训练并计算其模型更新 ui。
- 客户端 i 使用公钥加密其更新:ci=Encryptpk(ui)。此步骤对客户端来说计算量可能很大。
- 客户端 i 将密文 ci 发送给服务器。请注意,ci 通常比 ui 大得多。
-
服务器聚合:
- 服务器接收来自参与客户端的加密更新 c1,…,cN。
- 服务器对密文进行同态加法:C=⨁i=1Nci。此步骤要求服务器对密文进行计算,这根据 HE 方案的不同也可能是资源密集型的。
-
解密和模型更新:
- 服务器将聚合密文 C=Encryptpk(∑ui) 发送给持有私钥 sk 的实体。
- 该实体使用 sk 解密 C 以获取明文聚合总和:S=Decryptsk(C)=∑ui。
- 然后,解密后的总和 S 被用于(通常由服务器在从解密者接收后)更新全局模型参数。
以下图表说明了此流程:
使用加性同态加密进行安全聚合的联邦学习轮次中的数据流。客户端加密更新,服务器聚合密文,一个独立的实体解密总和。
权衡利弊
HE 提供了一种富有吸引力的方法,但也伴随着重要的权衡:
优点:
- 强隐私性: 提供密码学保证,确保服务器无法获知单个客户端更新,前提是服务器不持有私钥。
- 无精度损失: 与差分隐私不同,HE 不会对更新引入噪声。聚合结果是精确的,保持了模型精度。
- 非交互式聚合: 一旦密钥设置完成,客户端只需发送其加密更新;聚合本身无需客户端之间进行复杂的多次往返协议(不同于许多 SMC 方法)。
缺点:
- 计算开销: HE 操作(特别是客户端的加密和服务器端的聚合)与明文操作相比计算成本较高。这对于资源受限的客户端(例如移动设备)可能是一个主要瓶颈,并需要强大的服务器。
- 密文膨胀: 加密数据(密文)远大于原始明文数据(更新)。这大幅增加了通信成本,特别是从客户端到服务器的上行链路。
示意性比较显示了使用 HE 加密模型更新时数据大小的明显增加。实际膨胀系数在很大程度上取决于具体的 HE 方案和所选的安全参数。
- 密钥管理复杂性: 私钥 sk 的安全生成、分发和存储非常重要。如果服务器持有 sk,则针对服务器的隐私保证将失效。像门限 HE(在多个参与方之间分发 sk)这样的解决方案可以提高安全性,但会增加系统复杂性。
- 有限操作(PHE): 加性 HE 方案通常只支持加法。虽然足以用于基本的 FedAvg 式聚合,但它们不直接支持逐元素乘法或某些高级 FL 算法所需的更复杂函数,除非求助于 FHE 或将 HE 与其他技术结合。
- 参数选择: 选择正确的 HE 方案及其参数(例如,多项式次数、系数模数、基于格的方案中的安全级别;Paillier 中的大小)是复杂的。这些选择会影响安全性、性能(计算和通信)以及可加密的值范围。
实际考量
- 门限同态加密: 为避免将私钥信任给单个实体,可以使用门限 HE 方案。私钥被分成多份,分发给多个参与方(例如,一部分客户端或专用的密钥服务器)。解密需要这些参与方的法定人数(最少数量)协作,这明显增强了针对单点故障或攻击的稳健性。
- 混合方法: 有时,HE 会与其他隐私技术结合使用。例如,客户端可能使用 HE 加密数据,服务器可能使用 SMC 协议对这些密文执行操作,从而可能平衡性能和安全性的权衡。
- 实现库: 实现 HE 需要专门的密码学库,如 Microsoft SEAL、PALISADE、HElib 或 TFHE。将这些集成到 FL 框架中需要细致的工程设计。
与差分隐私相比,HE 提供无噪声的密码学保证,但会产生更高的计算和通信成本。与安全多方计算相比,HE 通常简化了聚合协议本身(更少交互),但将复杂性转移到计算和管理上。这些技术之间的选择在很大程度上取决于具体的系统约束、期望的隐私级别、信任模型和可接受的性能开销。HE 仍是一个活跃的研究领域,持续努力提高效率并使其在大规模联邦学习部署中更具实用性。