当前位置:   article > 正文

(阅读笔记)联邦安全聚合_联邦学习安全聚合代码

联邦学习安全聚合代码

联邦学习场景下的安全聚合协议

设计动机

联邦学习场景下设计安全聚合协议的动机:

  1. 处理高维参数或梯度向量;
  2. 降低传输通信开销
  3. 应对用户中途退出鲁棒;
  4. 用户隐私安全

协议设计过程

  1. 一重掩码
    用户u和v ( u , v ∈ U u, v \in \mathcal{U} u,vU)协商掩码: s u , v s_{u,v} su,v
    用户u输入 x u x_u xu,加入掩码 ∑ v ∈ U s u , v \sum_{v \in \mathcal{U}} s_{u,v} vUsu,v,输出 y u y_u yu发送给服务器;
    在这里插入图片描述
    在这里插入图片描述
    例如 ∣ U ∣ = 3 |\mathcal{U}|=3 U=3,设置如下:
v 1 v_1 v1 v 2 v_2 v2 v 3 v_3 v3
u 1 u_1 u10+ s 1 , 2 s_{1,2} s1,2+ s 1 , 3 s_{1,3} s1,3
u 2 u_2 u2- s 1 , 2 s_{1,2} s1,20+ s 2 , 3 s_{2,3} s2,3
u 3 u_3 u3- s 1 , 3 s_{1,3} s1,3- s 2 , 3 s_{2,3} s2,30

缺点:

  • 二次通信开销: ∣ U ∣ × ∣ x ∣ |\mathcal{U}| \times |x| U×x
    解决办法:协商掩码表 → \rightarrow 协商伪随机数生成器的随机种子
  • 不能应对用户中途退出;
    两种情况:①用户确切退出;
    解决办法:服务器向其他用户索要掩码;
    然而,若其他用户在响应期间掉线,无法回馈与退出用户相关的掩码值,则会陷入死循环;
    进一步解决办法:(t-n)门限秘密共享,t个用户保证一定的安全性,而又不需要n个(每个)用户都响应,避免进入死循环;(支持少部分用户中途退出)
    ②用户 u u u发送 y u y_u yu给服务器很慢,并未实际退出;
    若服务器向其他用户发送请求,获得与该用户相关的掩码值 s u , v , ∣ v ∣ ≥ t s_{u,v}, |v| \ge t su,v,vt,服务器则可以从 y u y_u yu获得 x u x_u xu
    解决办法:加入二重掩码。
  1. 二重掩码
    用户 u u u不同时公开或响应发送 b u b_{u} bu s u , v s_{u,v} su,v,则服务器始终会受到至少一个掩码影响,不可能从 y u y_u yu获得 x u x_u xu
    在这里插入图片描述

安全聚合协议

  • 用户与用户间、用户与服务器之间交互传递包含二重掩码的网络参数;
  • 共U个用户,U1个用户参与广播密钥,U2个用户参与分享密钥,U3个用户参与上传掩盖输入,U4个用户通过一致性验证,U5个用户参与最终的参数上传(包含二重掩码),服务器负责去掩码和参数聚合。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

参考文献

  1. Practical Secure Aggregation for Federated Learning on User-Held Data, NIPS workshop, 2016.
  2. Practical Secure Aggregation for Privacy-Preserving Machine Learning, ACM SIGSAC Conference on Computer and Communications Security (CCS), 2017. 完整版本
  3. Secure Analytics: Federated Learning and Secure Aggregation,2018.
  4. 联邦学习之安全聚合SMPC
本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/190645
推荐阅读
相关标签
  

闽ICP备14008679号