Advertisement

【论文阅读】FVFL: A Flexible and Verifiable Privacy-Preserving Federated Learning Scheme

阅读量:

FVFL: This scheme is both flexible and verifiable, ensuring privacy preservation in federated learning -- 该方案既具有灵活性又具备可验证性,在联邦学习中实现了隐私保护

  • Background

  • Overview

  • Abstract

  • Introduction

  • Problem Statement

    • A. Problem Formulation
    • B. The Threat Landscape and Objectives
  • Preliminaries

    • A. Federated Learning
      • (1) Deep Learning:

        • 基于深度学习的方法已经被广泛应用于各种领域。
      • (2) Stochastic Gradient Descent(SGD):

        • 在优化过程中采用随机梯度下降算法以加快收敛速度。
      • (3) Federated Aggregation:

        • 提供了一种在不共享数据的情况下实现数据聚合的方法。
      • B. Paillier Encryption

      • C. Lagrange Interpolation

      • D. Shamir’s Secret Share

  • ourselves propose the following FVFL methodology

    • A. Overview of the FVFL methodology

      • B. Initialization stage for implementing the proposed framework
      • C. Client training model stage focusing on optimizing user engagement
      • D. Aggregation stage to consolidate global insights effectively
      • E. Local model update stage ensuring personalized learning outcomes
    • 总结

      • 威胁模型
      • 本文解决问题
      • 文章方法
      • 本文特色
    • 思考

来源

IoT 2024
链接:https://ieeexplore.ieee.org/document/10510350

导读

Github:[Github](https://github.com/wzx442/paper_reading/blob/main/导读/【导读】(24 IoT)FVFL_A_Adsorbent-Enhanced_Protective_Federated_LearningScheme_for_IoT.md)

Abstract

联邦学习能够应对数据孤岛的问题,并导致了更为严峻的隐私威胁

Furthermore, during the process of data integration across multiple sources, the operational efficiency of the entire federated learning system is typically relatively low.

在多源数据协作过程中,在联邦学习系统中运行效率较低。

We implement Paillier encryption and a secret sharing scheme to ensure client data security and protection against colluding attacks. Moreover, our encryption mechanism enables flexible participation in federated learning, while the correctness of the encryption algorithm remains unaffected by client dropouts.

基于Paillier加密方案及秘密共享机制,在确保客户端数据的安全性和抗内鬼能力的同时,该系统设计使客户端能够自由参与联邦学习过程,并确保整个系统的安全性不受任何单个客户端退出事件的影响

复制代码
    转自:
    秘密共享是一种秘密分割存储技术,其目的是一定程度抵御多方合谋与入侵。
    秘密共享的核心思想是将秘密拆分为n份,分别分发给参与方 P1,...,Pn。
    n-out-of-n秘密共享要求所有参与方结合才能恢复秘密,t-out-of-n秘密共享要求至少任意t个参与方结合才能恢复秘密。
    从思想可以看出秘密共享算法主要又秘密分发算法和秘密重构算法组成。
    而秘密分发方式决定重构的方式,因此基于秘密分发,我们将秘密共享分为基于位运算的加性秘密共享和基于线性代数的线性秘密共享。
                        
    原文链接:
    
    
      
      
      
      
      
      
      
      
    
    AI写代码

The 递增序列 is 采用 to decrease the communication burden across the entire system. Simulation outcomes demonstrate that this approach yields substantial benefits; Lagrange插值多项式 combined with a secret sharing scheme is introduced to establish a verification mechanism. This ensures that malicious aggregation tampering can be effectively prevented. The verification mechanism guarantees that clients can reliably obtain accurate aggregated results from the cloud.

  • 为了降低整个系统的通信成本,并采用超增长序列方案,并通过仿真验证其显著性。
  • 引入拉格朗日插值多项式和实现验证机制以防止聚合结果在云端被恶意伪造。
  • 验证机制确保了用户端在云环境中能够获得真实可靠的聚合数据。
  • 此外允许客户端灵活参与联邦学习并且保证验证算法的正确性不受客户端退出影响实验结果显示该方法具有较高的精度与较高的效率。

Index Terms—Privacy-protecting, Privacy-protecting methods, Verifiable methods, Deep learning.

Introduction

  • 随着人工智能技术的发展与普及, 大规模的数据处理与运算变得更加高效与便捷, 并已在多个领域都有广泛应用, 包括但不限于人脸识别、在线医疗诊断以及语音识别等多个方面. 构建一个精确的数据驱动型网络模型需要投入大量资源.
  • 然而, 数据中往往包含敏感信息. 根据GDPR等相关法律法规, 数据所有权者无法直接将数据传输至其他平台(如GDPR规定), 这一限制导致了我们常说的数据孤岛问题, 从而限制了人工智能技术的进一步发展.

Federated learning represents a robust strategy for addressing data security concerns by ensuring that information remains securely stored on each participant's end. By enabling local storage and facilitating collaborative efforts among all parties, this approach allows for the creation of a comprehensive global network model that maintains both security and efficiency.

联邦学习被视为一种有效的方法来应对数据安全问题。它通过将数据保持在本地来实现,并且各个参与方共同努力以构建出一个高效的全球网络模型。

Yang Qiang等人将联邦学习划分为水平联邦学习(HFL)、垂直联邦学习(VFL)和联邦转移学习(FTL),这些方法几乎适用于各类数据岛,并以保障数据隐私为中心。

  • 杨强等基于客户端数据的特征,对联邦学习进行了分类划分,将其归为水平联邦学习(HFL)、垂直 федер
    al学(VFL)以及联邦迁移学习(FTL),这些方法基本上都可以应用于各种数据孤岛,并确保了数据的隐私
    性。

Simple federated learning methods cannot fully guarantee the security of data. However, incorporating privacy computing techniques such as homomorphism (HE), differential privacy (DP), and secure multiparty computing (MPC) is essential for ensuring robust data security.

  • 基础的联邦学习方法无法充分保障数据的安全性, 因此除了简单的加密机制之外还需要引入同态(HE)、差分隐私(DP)以及安全多方计算(MPC)等多种隐私保护技术以确保数据的安全性。
    • 研究者如Phong等表明, 在联邦学习的过程中, 通过共享训练模型的梯度信息就可以恢复出用户的原始数据. 研究表明, 利用对抗性攻击策略, 可以从联邦学习中泄露客户端的数据. 因此, 为了确保联邦学习系统的安全性并实现可靠的数据管理, 我们必须采用相应的隐私计算技术.

Privacy computing technology ensures the security of data within the semi-honest framework, yet it remains insufficient to counteract adversarial behaviors of entities within a federated learning system.

  • 隐私计算技术能够确保存储于半诚实模型中的数据安全性,然而在联邦学习系统中参与者可能采取恶意行为的情况下 ,其防护能力仍显不足

In practical scenarios, a federated learning client may opt out due to diverse reasons. Therefore, ensuring robustness is essential to guarantee that the federated learning process will proceed effectively even when clients are disconnected simultaneously.Additionally, in systems where aggregated results are verifiable, their verifiability must remain unaffected by temporary disconnections of minor participants.

在实际应用中, 联邦学习客户端可能会因多种因素导致脱机退出. 因此, 系统必须具备高度的容错能力, 以确保联邦学习流程即使部分客户端脱机运行也能顺利完成. 此外, 针对那些能够验证聚合结果的联邦学习系统, 其聚合结果的可验证性不应受到影响于部分客户端脱机的情况.

In this study, we take into account that the client operates under a semi-honest threat model, meaning it abides by execution protocols. However, malicious attackers may still pose risks on the server side. To address this threat model, we propose a solution named FVFL. This scheme ensures security of local data and resistance to collusive attacks significantly supports flexible participation in federated learning.

在本文中,默认情况下我们将客户端视为按协议进行操作的对象,在这种假设下我们分析得出:然而,在服务器端可能存在恶意攻击者这一情况需要特别考虑。基于该威胁模型分析的基础上我们提出了一种名为FVFL的新方案这种方案不仅能够有效支持客户端参与联邦学习的过程,并且在保障数据安全方面表现出色。

We utilize Paillier encryption and Shamir's secret sharing to ensure clients' data security; a super-increasing sequence is employed to minimize the communication overhead across the entire system; Lagrange interpolation polynomial and Shamir's secret sharing are implemented to establish a verification mechanism, thereby preventing malicious tampering with aggregated results in the cloud.

基于Paillier加密方案与Shamir秘密共享机制的基础上进行操作以确保客户数据的安全性;通过引入超递增序列的方式显著降低了整个系统的通信消耗;利用拉格朗日插值多项式配合Shamir秘密共享方法来实现验证机制从而有效地防止了聚合结果在云环境中被恶意伪造

Furthermore, our validation process enables participants to engage in federated learning with ease.

  • 此外,我们的验证机制允许客户灵活地参与联邦学习。

In summary,the contributions presented here are as follows:

  • We utilize ascending sequences to encode gradient information,and importantly,the use of ascending sequences significantly reduces the overall communication burden.

  • A robust encryption framework is developed for privacy-preserving federated learning systems,it effectively mitigates against collusion threats and accommodates client disconnections.

  • An efficient verification protocol is devised for privacy-preserving federated learning,it ensures smooth operation even when multiple participants are unavailable simultaneously.

  • Through extensive simulations,the practicality and effectiveness of our proposed approach are validated,it consistently achieves high accuracy with minimal computational overhead.

  • 通过超递增序列对梯度数据进行编码,并显著减少了通信消耗。

  • 我们开发了一种保护隐私的联邦学习方案(FLLS),该方案不仅具有抗内鬼攻击能力(AIA),还允许客户端主动退出系统。

  • 我们开发了一种保护隐私的联邦学习验证方案(FFLS),即使多个客户端同时退出系统后仍能正常运行过程。

  • 经过大量仿真实验分析了FVFL的实际应用价值(FAV),实验结果表明该方案在性能方面表现优异(FBP),并且验证成本可控(VC)。

Problem Statement

A. Problem Definition

In our scheme, there are three entities: Trusted Authority (TA), Client and Central Aggregation Server. TA distributed the parameters to the clients. Clients utilize the parameters code and encrypt the gradient. The server accumulated model parameters.

我们方案涉及三个关键实体:可信机构(TA)、客户端及中央聚合服务器。可信机构(TA)将模型参数分配给客户端;随后,客户端采用参数对梯度进行编码与加密处理;最后,在完成数据处理后,中央聚合服务器负责整合各节点的模型参数。

In this model, there are three key challenges that need addressing.

  • First and foremost, sharing gradient data from each client poses a risk to their local data's security and privacy. Therefore, it is essential for clients to implement measures ensuring their own data remains secure.
  • Secondarily, the server plays a critical role in receiving and aggregating these gradient datasets. However, its operation can sometimes lead to issues such as potential malicious attacks or optimizations for resource efficiency. As a result, there must be mechanisms in place to verify the authenticity of aggregated results.
  • Finally, during the federated learning process itself, client participation can drop out for various reasons. Despite these absences or potential failures in communication with some participants over time (due to varying network conditions), it is imperative that the system remains robust enough to function effectively without being significantly impacted by individual client exits.

在本模型架构中,有几个关键挑战需要重点关注.其中之一就是确保所有参与方的数据安全,防止敏感信息泄露.另一个问题是,由于通信网络可能存在干扰,不同节点之间的信息传递可能会出现延迟或错误.此外,如何实现各参与方之间的协调一致也是一个复杂的技术难题.

B. Threat Model and Goals

We define the threat model in our FVFL as follows: We believe TA system is designed with safety and reliability in mind and expects it not to be compromised by malicious actors. We assume participants in the federated learning ecosystem are honest yet curious; they will adhere to system protocols but may experience intermittent connectivity due to various factors. On the server side, we posit potential malicious behavior; this could manifest as forged aggregation results or attempts at compromising client systems through collusive attacks aiming to access sensitive data from other participants.

在我们的FVFL框架中详细阐述了威胁模型的具体定义。该模型展示了TA展现出高度的安全性和可靠性特性,能够有效抵御任何形式的恶意攻击威胁.为了简化分析过程,我们假定联邦学习系统中的客户端节点既具备诚实性又具有好奇心属性.这意味着这些节点会严格遵守协议规定的操作流程;然而实际情况中由于网络波动或其他干扰因素可能导致这些节点暂时处于离线状态.另一方面我们也考虑到了服务器端可能存在异常行为的可能性.具体而言服务器可能会有意仿造聚合结果或者通过侵入部分节点来达成合谋攻击目标最终窃取其他节点存储的关键机密数据.

Therefore, our FVFL model is designed to ensure that each client's local gradient security is maintained. The clients are capable of assessing the reliability of cloud aggregation results, thereby ensuring that any discrepancies can be promptly identified. Furthermore, this robust design enables the entire system to withstand potential collusive attacks from multiple clients. Additionally, this framework ensures flexible participation by all parties involved.

因此我们的FVFL模型的主要目的是确保客户端的局部梯度安全;云聚合结果的可靠性能够被客户端识别;整个系统能够容忍部分客户端之间的合谋攻击;客户可以灵活参与整个系统

复制代码
    共谋攻击(Collusion Attack):
    在区块链联邦学习中,共谋攻击指的是多个参与者共同合作,以操纵模型的训练过程或模型输出。
    这种攻击可能包括:
    数据篡改: 多个恶意参与者共谋篡改数据或提供虚假的模型更新,旨在改变模型的结果或损害其他参与者。
    拒绝合法参与: 多个恶意参与者可能联合拒绝接受或认可合法的模型更新,以阻碍合法参与者的贡献。
    这些攻击威胁着区块链联邦学习中模型聚合的安全性和结果的可信度。
    防范这些攻击需要采用安全的加密技术、合理的数据验证机制和去中心化的治理模式,以确保模型训练过程的安全和可信任性。
    
    
      
      
      
      
      
      
      
    
    AI写代码

Preliminaries

A. Federated Learning

(1) Deep Learning:

通常情况下

(2) Stochatic Gradient Descent(SGD)

基于梯度下降法(GD),在不失一般性的情况下,默认假设我们拥有一个包含T组训练样本的数据集\mathcal{D}=\{(x_i,y_i)\}_{i=1}^{T};其损失函数可表示为

eq1

不同于GD的方法,在k次迭代过程中,SGD会随机抽取一个子集D^{*k}作为训练对象,并非使用全部的数据集合D。损失函数可表示为:

eq2

根据上述损失函数,在第k次迭代中,梯度为:

eq3

然后,我们可以将模型参数更新如下:

eq4

式中 \eta 为客户端的学习率。

(3) Federated Aggregation

如图1所示,在联邦学习框架下通过中央服务器整合各参与方的数据以构建统一的模型成为必要条件

fig1

在联邦学习的第k轮迭代过程中,在客户端i处计算梯度\omega_i^{(k)}。中央服务器将来自m个客户端的梯度向量进行汇总运算,并得到总和向量\Omega^{\prime k} = \sum_{i=1}^{m} \Omega_i^{(k)}.然后将汇总后的数据分发给所有参与方。各参与方接收到汇总数据后依次更新自己的模型参数。

eq5

B. Paillier Encryption

该密码系统采用同态加密技术,在实际应用中获得了较为广泛的认可。具体的Paillier公钥体系由三个核心算法构成:密钥生成算法、加法同态加密算法以及乘法同态解密算法。

  • (1) 密钥生成
  • (2) 加密过程
  • (3) 解密步骤
    值得注意的是,该系统可证明其对随机选择的明文具备抗 chosen plaintext attack的能力。

C. Lagrange Interpolation

基于给定的n个不同点x_i(i=1,2,...,n),拉格朗日插值法允许我们唯一确定一个次数不超过n-1的多项式P(x),该多项式在这些点处与函数f(x)相吻合。以下将简要阐述拉格朗日插值法的基本概念。

对于每个i=1,2,...,n,在对应的x_i处有f(x_i)已知且函数f(x)也被确定,则存在唯一一个多项式L_n(x),其形式为:L_n(x)=∑_{i=1}^{n}f(x_i)l_i(x),其中l_i(x)是基函数。

通过选取任意给定的n个点数据对来构建多项式L_n(x),我们就可以唯一地恢复出次数不超过n-1的原函数f(x)的具体表达形式。

eq89

D. Shamir’s Secret Share

该方案通过将单个机密划分为n个片段,并将其分配给若干有效成员来实现。若敌手获取系统中任意一名成员的信息,则仅能获取微小部分机密。唯有当敌手收集到至少t份机密时,则可完整恢复机密。我们常采用Shamir的秘密共享技术以达成上述目标。可信任方则选取多项式作为工具来进行机密划分。

eq10

S 代表主密钥。依据上述公式,在给定x_i的情况下,则可得出对应的子密钥分发信息组\{x_i, G(x_i)\}。其中多项式函数形式同样可以表述为:
\text{[后续内容]}

eq11

x = 0, G(x) = S时,利用\beta(x_i)表示拉格朗日插值系数。因此,主密钥S可以表示为:

eq12
eq13

利用拉格朗日插值多项式,我们可以很容易地恢复主密钥S

Our Proposed FVFL Scheme

本节首先概述了FVFL,然后详细介绍了它的程序。

A. The Overview of FVFL

As shown in Fig. 2, this system comprises three main components: Trusted Authority (TA), Clients and Central Aggregation Server.

  • Trusted Authority (TA): The TA initializes a neural network model by producing key sets and parameter configurations which are then dispatched to all Clients.

  • Clients: Our cryptographic scheme comprises a number of Clients (denoted as m), each with their own dataset. During operation, these Clients can connect at different times depending on their availability.

  • Central Aggregation Server: Within each round of federated learning, the Central Server aggregates all ciphertexts received from participating Clients before distributing these aggregated results back to all active Participants.
    In our system model we assume that the Central Server is malicious meaning it may attempt to intercept or tamper with Client data through eavesdropping on transmitted ciphertexts or even forge authentication messages.

  • Trusted Authority:该组织负责创建并分配神经网络模型所需的密钥和参数。

  • 我们的方案包含m个客户端,每个客户端都拥有独立的数据集.在联合学习过程中,系统支持多个客户端同时在线参与学习过程.特别地,在整个验证阶段,并不需要所有客户端共同参与结果汇总,但仍然能够确保结果的有效性.

  • 中央节点接收加密后的数据块,并在每一轮联邦学习中汇总后发送给各客户端.作为该系统的假设前提,中央节点被视为一个恶意实体.该实体可能试图通过窃取敏感信息威胁各方隐私.

fig2

As the Fig. 3 describe, FVFL includes four phases: initialization phase, client training model and encryption, central server aggretation ,client decrypt and update local model.

  • Phase 0 (Initialization): The TA initializes the whole system and distributes some parameters to the clients. The clients use these parameters to encrypt the data.
  • Phase 1 (Clients Train Model): Clients train model according to the local data set, then encode and encrypt the computed gradients and upload them to the cloud to complete
    the aggregation update.
  • Phase 2(Central Server Aggregation): The central server aggregates the received parameters and returns them to each client.
  • Phase 3 (Update Local Model): Clients receive the aggregation results from the cloud, decrypt and decode aggregation results, Clients verify the reliability of the aggregation results,then recover the specific aggregation results and update the local model.
  • 阶段0(初始化):TA负责初始化整个系统,并将必要的参数分配给客户端以支持后续的操作流程。通过这些预设的参数设置基础环境变量和初始配置信息。
  • 阶段1(客户端训练模型):通过本地数据集进行模型训练后,在计算出的梯度基础上应用加密编码的方式将其传输至云端节点以实现完整的更新流程。
  • 阶段2(中央服务器聚合):中央服务器会对所有接收到的数据进行汇总处理,并将汇总后的数据反馈给各个参与节点。
  • 阶段3(更新本地模型):在云端获取汇总后的数据后,在本地执行相应的操作步骤包括解密并解码这些信息内容,并进一步处理这些解密后的数据以实现对本地存储模型资源的具体应用。

B. Initialization Phase

In our FVFL framework, the TA needs to generate and distribute the following paraments.

  • (1) Using the security parameter K_0 as input, output the parameter of the Paillier encryption system \{N, g, p, q\}, we set the public key PK = \{N, g\}, the private secret
    λ = lcm(p − 1, q − 1), the private key SK = \{λ, p, q\}.The TA distributes the \{PK, SK\} to all clients. The PK and SK are used to encrypt and decrypt gradient data respectively.
  • (2) The TA needs to generate a super-increasing sequence \vec{a} ,\vec{a}=(a_1,a_2,...,a_{n+1}), where a_{n+1}\gg\textstyle \sum_{i=1}^{n}a_i.The TA calculates the encoding parameters g_i=g^{a_i},i = 1, ..., n + 1. The TA chooses random number
    r^*\in Z_N^* and calculates f_1 = r^{*q} mod N^2. According to g calculate f_2 = g^q mod N^2, the TA sends \{f_1,f_2, \vec{a} ,g_1,g_2,...,g_{n+1}\} to all clients. f_1 will be used to encrypt gradient data and f_2 will be used to verify the aggregation result. \{\vec{a}, g_1, g_2, ..., g_{n+1}\} will be used to encode and decode the gradient data.
  • (3) The TA generates two constants sequence \vec{k} = (k_1, k_2, · · · , k_{n+1}) and \vec{h} = (h_1, h_2, · · · , h_{n+1}). These two constants sequence will be used as interpolation to deal with clients gradients.
  • (4) According to the private secret p, and the TA chooses a random number r according to the system parameter p, making r < p. The TA Constructs two Shamir’s secret sharing polynomial G_1(x) and G_2(x) with different coefficients, the modulus of the two Shamir’s secret sharing polynomials is chosen as p, then p − r and r are respectively used as the master key to be shared in Shamir’s secret sharing algorithm, and 2m sub-key pairs are generated by running Shamir’s secret sharing algorithm, the sub-key pair of master key r is denoted as S_1^i = {(x_i, G_1(x_i)), i = 1, 2, · · · , m}, the sub-key pair of master key p−r is denoted as S_2^i = \{(x_i, G_2(x_i)), i =1, 2, · · · , m\}, where \{x_i, i = 1, 2, · · · , m\} are m different random values,\{G_1(x_i), i = 1, 2, · · · , m\} is the value obtained from the polynomial G_1(x) input x_i , \{G_2(x_i), i = 1, 2, · · · , m\} is the value obtained from the polynomial G_2(x) input x_i. Then, the TA distubtes \{S_1^i, S_2^i \} to client i, and distubtes \{x_1, x_2, · · · , x_m\} to all clients. \{S_1^i, S_2^i\} will be used to encrypt the gradient data and resist the collusion attacks. \{x_1, x_2, · · · , x_m\} will be used to recover the master key.
  • (1) 以安全参数K_0为输入,输出Paillier加密系统的参数\{N, g, p, q\},设公钥PK = \{N, g\},私钥λ = lcm(p − 1, q − 1),私钥SK = \{λ, p, q\}。TA将\{PK, SK\}分发给所有客户端。PKSK分别用于对梯度数据进行加密和解密。
  • (2) TA需要生成一个超递增序列\vec{a},其中\vec{a}=(a_1,a_2,...,a_{n+1}),其中a_{n+1}\gg\textstyle \sum_{i=1}^{n}a_i。TA计算编码参数g_i=g^{a_i},i = 1, ..., n + 1。TA选择随机数r^*\in Z_N^*并计算f_1 = r^{*q} mod N^2。根据g计算f_2 = g^q mod N^2, TA发送\{f_1,f_2, \vec{a} ,g_1,g_2,...,g_{n+1}\}到所有客户端。f_1用于加密梯度数据,f_2用于验证聚合结果。\{\vec{a}, g_1, g_2, ..., g_{n+1}\}用于对梯度数据进行编码和解码。
  • (3) TA生成两个常数序列,分别为:\vec{k} = (k_1, k_2, · · · , k_{n+1})\vec{h} = (h_1, h_2, · · · , h_{n+1})。这两个常数序列将被用作插值来处理客户端梯度。
  • (4) 根据私钥p,TA根据系统参数选择一个随机数 r ,其中 r < p。TA构造两个具有不同系数的Shamir秘密共享多项式 G_1 (x)G_2 (x) , 两个Shamir秘密共享多项式的系数模数为p, p−rr分别用作主密钥共享在Shamir秘密共享算法,通过运行Shamir秘密共享算法生成2m个子密钥对,主密钥的查寻对r 的子密钥对表示为S_1^i = \{(x_i, G_1 (x_i)),i= 1,2 , · · · , m\},主密钥p−r的子密钥对表示为S_2^i2 = \{(x_i, G_2 (x_i)),i= 1,2 , · · · , m\},其中 \{x_i, i = 1,2 , · · · , m\}m个不同的随机值,KaTeX parse error: Expected '}', got 'EOF' at end of input: …2 , · · · , m} 是多项式 G_1 (x) 输入 x_i所得的值,\{G_2(x_i), i = 1, 2 , · · · , m\} 是多项式 G_2 (x) 输入 x_i 所得到的值。然后,TA将 \{S_1^i, S_2^i\} 分配给客户端 i,并将\{x_1, x_2,···,x_m\} 分配给所有客户端。\{S_1^i, S_2^i\} 将用于对梯度数据进行加密,以抵御合谋攻击。\{x_1, x_2,···,x_m\}用于恢复主密钥。

C. Client Training Model Phase

在当前阶段的所有客户端均基于本地数据集 D = \{(x_j , y_j ), j = 1, 2, ..., T\} 基本上各自训练一个模型;通过该数据集,在完成参数更新后各客户端均会通过随机梯度下降方法(SGD)计算各个客户端的梯度;各客户端随机选取代表样本来更新损失函数估计值

eq14

客户端 i 执行 SGD 计算局部梯度 \omega_i

eq15

梯度向量被定义为一个n维向量,并由\omega_i=(\omega_{i1}, \omega_{i2}, …, \omega_{in})具体表示。
其次,在这种情况下(或者:同时),客户端i会发送联邦学习相关的请求信息,并发送相应的标识符(或者:ID)给服务器。
一旦 server等待从各个客户端接收联邦学习请求的时间超过预先设定的时间阈值t(或者:超过t/小时/分钟等单位),则 server会开始处理这些请求。
server会汇总所有当前在线的客户端标识符,并将这些集合返回给每个在线的客户端。

eq16

客户端 i 进一步计算子密钥 S_i ,如下式所示:

eq17

为了确保客户端数据的安全性同时降低通信开销

eq18

客户端通过获取加密值 C_i 进行后续操作,并将加密后的数据发送至服务器,在服务器完成联邦学习过程的所有更新信息收集后进行处理。

algorithm1

D. Aggregation Phase

聚合服务器接收到所有客户端的密文后,利用加法同态将密码聚合为:

eq19

C 为 ciphertext(设 C 为 ciphertext),该服务端会将加密后的数据分发给各个客户端(该服务端会将加密后的数据分发给各个客户端)。值得注意的是,在传输过程中所有的梯度信息都被加密了(在传输过程中所有的梯度信息都被加密了),因此原始的明文字信息无法被直接提取出来(因此原始的明文字信息无法被直接提取出来)。作为关键的数据处理中心之一,在整个系统中被赋予了高度的信任度(在整个系统中被赋予了高度的信任度)。为了避免不必要的计算开销(为了避免不必要的计算开销),该服务端可能会采取一些安全措施来伪造某些数据包(为了防止潜在的安全威胁)。当服务端返回综合后的数据包时(当服务端返回综合后的数据包时),相关接收方应当具备识别该数据包是否符合预期的能力(相关接收方应当具备识别该数据包是否符合预期的能力)。当某个客户端暂时处于离线状态时(当某个客户端暂时处于离线状态时),相关的安全机制必须具备相应的容错能力以确保系统的稳定运行(相关的安全机制必须具备相应的容错能力以确保系统的稳定运行)。

E. Update Local Model Phase

各个客户端依次接收并获取了聚合结果随后通过Paillier解密算法完成了对聚合密文 C 的解密

eq20

其次,在算法2中总结了解码流程。每个客户端将采用递增序列 \vec{a} = \{a_1, a_2···a_{n+1}\} 来处理计算结果,并通过该序列对数据进行解码操作。各个客户端最终将获得完整的数据集合 \{F(h_1),F(h_2)···F(h_{n+1})\}

algorithm2

如算法3所示,客户端需要对数据集 \{(h_1, F(h_1)),(h_2, F(h_2)),···,(h_{n+1}, F(h_{n+1}))\}进行拉格朗日插值:

eq21
algorithm3

得到了函数之后

总结

威胁模型

  • TA(Trusted Authority)可靠且安全,并不会受到任何恶意攻击的影响;
    • 系统中的诚信客户和充满好奇心的用户会严格遵守协议配置;然而,在某些情况下可能出现短暂连接中断;
    • 服务器可能蓄意篡改聚合结果;或者通过入侵部分客户端系统来实施串通一气的攻击行为;从而窃取这些系统的敏感数据。

本文解决问题

  • 在联邦学习过程中,客户端退出机制是一个关键问题;
    • 在训练过程中,服务器可能会推断客户端的数据,并会生成虚假的聚合数据。

文章方法

通过采用同态加密技术和Shamir秘密共享方案来进行数据保护。
采用超递增序列以降低通信成本。
通过结合拉格朗日插值多项式与Shamir秘密共享方法构建验证机制。

本文特色

  • 客户端在运行期间可被允许随时退出;
    • 客户端具备对来自服务器的全局梯度进行验证的能力;
    • 该机制仅需部分客户端参与验证过程

思考

  • 可以换一种加密方法吗?

    • 当然可以,比如DP
  • 是否能够采用两个服务器,在上传局部梯度时为每个服务器分配各个客户端数据的一半?

  • 看起来是可以实现的。

    • 有无其他验证方法?
      • 等待阅读新的文献

全部评论 (0)

还没有任何评论哟~