【论文阅读笔记】Efficient and Secure Federated Learning With Verifiable Weighted Average Aggregation

个人阅读笔记,若有错误欢迎指正

期刊:2023 TNSE 论文链接:

Efficient and Secure Federated Learning With Verifiable Weighted Average Aggregation | IEEE Journals & Magazine | IEEE Xplorew 

问题:

        不可信or诚实但好奇的云会从客户端传来的梯度反推出客户端模型和数据,泄露了客户端隐私,并且被破坏的云模型还会污染到客户端

        如何保护FL中参与者数据的隐私,同时有效验证云服务器梯度的加权平均聚合

创新:

        通过采用掩码技术对加权梯度和数据大小进行加密,保护参与者的梯度隐私以及数据大小,支持保持隐私的梯度加权平均聚合。

        设计了可验证联合学习方法来检查FL中云服务器梯度聚合的正确性,该方法利用键控同态哈希函数和同态签名来构建可验证聚合标签(VAT),参与者可以有效地生成和验证该标签。

        设计了一种通过批量检查多个验证的批量验证方法,在验证多次迭代的证明时,可以进一步提高验证效率。

方法:

整体框架:可信机构TA 参与方 云服务器。TA生成私有密钥对和公共参数并发送至客户端;客户端在其本地数据集上训练模型并上传加密梯度、数据大小和可验证聚合标签(VAT)到服务器,在收到服务器的聚合梯度、整体数据大小和验证证明后客户端对服务器聚合结果的正确性进行检验;服务端对收到的客户端梯度、数据大小、VAT进行聚合,聚合的VAT用于生成对参与方的检验证明。

 该方法的两个侧重点:1)如何进行安全的加权平均并且不泄露参与者的局部梯度和数据大小 2)对聚合的结果进行验证

通过weight masking对模型的局部梯度x_i进行遮蔽并生成相应的VAT(可验证聚合标签) V_i^x,同样对数据大小N_i加密并生成其相应的VAT V_i^N,然后将加密的梯度和数据大小以及VAT(V_i^x,V_i^N)一并上传到服务器,服务器分别对收到的数据进行聚合。客户端收到服务器聚合后的参数,并对VAT (V_i^x,V_i^N)进行验证,验证通过后使用聚合后的梯度和数据大小更新本地模型

 1)setup  随机对每个参与方u_i创建密钥对(K_i^{PK},K_i^{SK})PK公钥SP私钥,使用Differ-Hellman生成参与方u_iu_j的随机数私人约定密钥s_{i,j}\gets KA.Aggre(K_i^{SK},K_j^{PK})

 2)weight mask  使用s_{i,j}作为输入使用伪随机数生成器生成随机数PRG(s_{i,j}),然而直接随机屏蔽不能使随机数在加权聚合阶段被抵消,因此每个参与方采用以下公式进行梯度mask。(N_i是参与方本地数据集大小)

[[x_i]]=N_ix_i+\sum_{u_j\in U:i<j}{PRG(s_{i,j})}-\sum_{u_j\in U:i>j}{PRG(s_{j,i})}

 [[N_i]]=N_i+\sum_{u_j\in U:i<j}{PRG(s_{i,j})}-\sum_{u_j\in U:i>j}{PRG(s_{j,i})}

        当有出现网络问题时客户端将延迟上传其梯度,服务器可以根据SSP.Recon重建客户端的随机数PRG(s_{i,j}),因为重建得到了梯度和PRG,为了保护客户端数据隐私,引入了新的随机数PRG(b_i)b_i是参与方通过SSP.Share共享的随机数

3)weight aggregation  服务器对接收到的加密梯度和数据大小进行聚合

        上式推导过程

        正确聚合结果

 4)weight aggregation verification  每个客户端生成可验证聚合标签VAT并发送至服务器,服务器除对梯度和数据大小聚合外,也对VAT聚合生成聚合证明。

        TA将同台哈希密钥\delta和随机数h发送至每个参与方,参与方使用2)对梯度和数据大小进行加密,然后服务器生成随机值PRG(r)添加到加密梯度x中

        参与方对每个梯度x_i数据大小N_i采用同态哈希函数生成VATV_i^x,V_i^N。参与方将|| x_i|||| N_i|| VAT (V_i^x,V_i^N)一同发送至服务器

 5)Proof Aggregation

        聚合梯度及数据大小

        聚合VAT

 6)Verification  参与方对收到的梯度、数据大小、VAT使用同态哈希函数

H_{agg}^x=V_{agg}^xH_{agg}^N=V_{agg}^N,参与者可以获得正确的聚合梯度,云服务器可以通过验证,本轮的结果是可信的。

1)~ 6)过程整体流程推导

减少计算量,采用批量聚合的方法:

对梯度、数据大小加密和聚合的方法不变,对梯度的VAT聚合改变,先照常计算聚合第l个iteration的聚合梯度VAT

相应的同态哈希函数变为如下形式

总VAT 

 

在批量验证中,参与者可以从所有K次迭代中随机选择k次迭代。假设云服务器伪造了f次迭代的聚合结果。可以得到如下验证概率:

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值