《联邦学习》隐私与安全机制卡片
使用顺序:先写威胁模型,再选机制。不要从“系统使用了某种加密”反推它已经保护了所有数据、模型和输出。
⚡ 隐私边界
“原始数据不离开本地”不等于联邦学习自动获得隐私保证。模型参数、梯度、中间激活、实体交集、查询结果和最终模型仍可能泄露训练信息。
一、总对比表
| 机制 | 保护对象 | 攻击者能看到什么 | 正式保证 | 依赖假设 | 不能解决什么 | 主要代价 |
|---|---|---|---|---|---|---|
| 安全聚合 | 单个客户端更新 | 聚合和/均值、参与元数据 | 协议机密性 | 在线阈值、串谋上限、密钥安全 | 最终模型泄露、投毒、输出隐私 | 密钥协商、掩码、掉线恢复 |
| 差分隐私(DP) | 单样本或单用户对输出的影响 | 带噪统计/模型 | 邻接关系、裁剪、采样、会计正确 | 密码学机密性、任意投毒 | 噪声、精度损失、预算累积 | |
| 同态加密(HE) | 密文中的输入/中间量 | 密文及获授权解密输出 | 计算安全基于密码假设 | 密钥管理、支持的运算、参数安全 | 解密输出泄露、恶意输入、DP | 密文膨胀、慢、近似非线性 |
| 安全多方计算(MPC) | 多方输入与中间量 | 自身输入、授权输出和协议视图 | 基于仿真的协议安全 | 腐败方阈值、串谋和网络模型 | 输出本身泄露、模型语义攻击 | 多轮通信、预处理、实现复杂 |
| 秘密共享 | 被拆分的秘密输入 | 单个/不足阈值的随机份额 | 信息论或计算安全,依协议 | 阈值、随机性、份额不串谋 | 输出泄露、恶意份额、投毒 | 份额通信、重构、乘法三元组 |
| 私有集合求交(PSI) | 非交集元素/实体ID | 通常为交集及协议允许信息 | 协议安全,取决于变体 | 身份规范化、攻击模型、大小泄露设定 | 交集本身敏感、后续训练泄露 | 密码计算、通信、对齐误差 |
| 随机掩码 | 被掩码的梯度/值 | 值加随机量 | 取决于掩码生成/取消协议 | 掩码独立、保密且不复用 | 最终输出、恶意输入、正式DP | 状态、密钥/随机数管理 |
| 可信执行环境(TEE) | 隔离区内明文计算 | 隔离区外加密数据、受控输出 | 硬件隔离与远程证明 | 硬件/固件可信、侧信道控制 | 输出泄露、硬件漏洞、投毒 | 硬件依赖、内存和侧信道风险 |
| 传输加密(TLS等) | 链路上的消息 | 端点处明文 | 信道机密性与完整性 | 证书/端点安全 | 服务器或客户端端点窥探 | 握手、密钥与证书管理 |
二、先写威胁模型
| 维度 | 必须明确的问题 |
|---|---|
| 保护对象 | 原始样本、标签、ID交集、梯度、模型、查询还是输出? |
| 保护单位 | 一条记录、一个用户的全部记录、一个客户端还是一家机构? |
| 攻击角色 | 服务器、客户端、协调方、外部窃听者还是结果接收方? |
| 可见性 | 黑盒查询、白盒参数、单个更新、聚合值还是协议消息? |
| 行为能力 | 半诚实、恶意、可否选择输入、掉线或重复查询? |
| 串谋 | 服务器与多少客户端可联合?协调方之间是否不串谋? |
| 阶段 | 实体对齐、训练、聚合、评估、推理还是模型发布? |
| 安全目标 | 机密性、完整性、可用性、可审计性还是不可链接性? |
遵守协议流程,但保存并分析所有消息,尝试推断额外信息。HE、MPC和VFL教材协议经常在此模型下讨论。
| 维度 | 半诚实 | 恶意 |
|---|---|---|
| 是否按协议发送 | 是 | 不一定 |
| 是否可构造探测输入 | 通常不考虑偏离 | 可以 |
| 所需防护 | 机密计算、视图不可区分 | 输入验证、零知识证明、鲁棒性、审计等 |
| 成本 | 相对较低 | 通常更高 |
三、机制卡:安全聚合
- 保护对象:单个客户端的模型更新/梯度。
- 典型目标:服务器获得
,但看不到任一 。 - 常见机制:客户端两两生成抵消掩码,配合秘密共享恢复掉线客户端相关掩码。
- 攻击者可见:参与集合、时序、消息大小、聚合结果及最终模型,具体取决于协议。
- 依赖假设:达到最小在线阈值;服务器与被控客户端串谋数不超过上限;随机掩码/密钥不泄露。
- 主要收益:降低服务器直接分析单个更新的能力。
- 主要代价:额外握手、密钥材料、掩码向量、掉线恢复和状态管理。
- 失效条件:参与集合太小;服务器通过差分选择集合隔离某客户端;串谋超过阈值;掩码复用。
⚡ 易混淆点
安全聚合不限制聚合结果的敏感度,也不给成员推断提供
四、机制卡:差分隐私
正式定义
若相邻数据集
则
越小,通常隐私越强。 是允许保证失败的极小概率,不应被随意设置。 - 敏感度:
样本级与用户级
相邻数据集差一条记录。适合每个用户只贡献一条独立记录的情况;一个用户有多条相关记录时,不能自动保护其整体参与。
| 维度 | 样本级DP | 用户级DP |
|---|---|---|
| 邻接单位 | 单条样本 | 单个用户全部贡献 |
| FL常见实现 | 样本梯度裁剪+噪声 | 客户端更新裁剪+聚合噪声 |
| 保护问题 | 单记录影响 | 用户是否参与及整体影响 |
| 主要代价 | 相对较低 | 通常效用代价更高 |
FL中的必要组件
- 定义邻接关系和保护单位;
- 裁剪样本梯度或客户端更新,限制敏感度;
- 加入校准噪声;
- 结合采样和多轮组合做隐私会计;
- 报告
、裁剪阈值、噪声倍率、轮数及会计方法。
不能解决
- 不隐藏发送给不可信服务器的明文更新,除非与安全聚合/加密组合;
- 不验证客户端更新诚实;
- 不保证模型无偏、公平或高精度;
- 不允许把每轮小
直接当作全程小 。
五、机制卡:同态加密
令
| 类型 | 能力 | FL典型用途 | 局限 |
|---|---|---|---|
| PHE/AHE | 某类运算可多次执行 | 参数求和、线性/树统计 | 除法、比较和非线性困难 |
| SHE | 有限深度加乘 | 有限电路评估 | 深度受噪声预算限制 |
| FHE | 理论上任意电路 | 通用密文计算 | 成本很高 |
- 保护对象:传输和计算中的明文输入/中间量。
- 攻击者可见:密文、大小/时序元数据和获授权解密结果。
- 依赖假设:密码参数安全、密钥不泄露、随机数正确、解密接口受控。
- 主要代价:大整数/多项式运算、密文膨胀、编码和精度管理。
- 机器学习适配:对激活、Logistic损失、比较等非线性进行多项式近似或交给其他协议。
⚡ 易混淆点
HE保护“计算时不看明文”,不限制解密后输出或最终模型泄露训练信息,也不阻止输入方加密恶意更新。
六、机制卡:MPC与秘密共享
MPC目标
多方希望计算:
同时每方除自身输入和授权输出外,不获得额外信息。正式安全通常要求真实协议视图可由理想功能中的输入/输出模拟。
秘密共享直觉
将秘密
- 保护对象:多方输入和计算中间量。
- 攻击者可见:自身输入、份额、协议消息和授权输出。
- 依赖假设:半诚实/恶意模型、同步/异步网络、腐败阈值及是否允许串谋。
- 主要代价:通信轮数、预处理材料、份额存储和协议实现。
- 不能解决:输出本身允许泄露的内容、投毒、语义错误和拒绝服务。
Beaver乘法三元组
离线生成满足
七、机制卡:私有集合求交
- 保护对象:双方非交集ID。
- 输出:通常是交集,或交集大小/带载荷交集,取决于协议。
- 应用:VFL/FTL训练前的实体对齐。
- 依赖假设:ID规范化一致;协议抵御规定的半诚实/恶意对手;字典攻击被处理。
- 主要风险:交集本身可能敏感;集合大小、重复查询和低熵ID可泄露;匹配错误导致模型偏差。
- 主要代价:公钥运算、哈希/OT通信和大集合处理。
💡 通俗理解
PSI只能安全回答“我们共同认识谁”,并不能回答“这些共同用户上的联合建模是否安全”。交集一旦确定,后续梯度、统计和预测仍需独立保护。
八、隐私与鲁棒性
目标是限制攻击者从协议或模型中学到信息,常用安全聚合、HE、MPC、DP。
| 问题 | 机密性机制能否自动解决? | 原因 |
|---|---|---|
| 梯度反演 | 部分缓解 | 隐藏单个更新有帮助,但最终/聚合更新仍可能泄露 |
| 成员推断 | 否 | 需要限制个体影响,DP是典型机制 |
| 模型投毒 | 否 | 加密只隐藏恶意值,不判断其正确性 |
| 后门攻击 | 否 | 聚合模型仍可学习攻击目标 |
| 拒绝服务 | 否 | 隐私协议可能反而增加在线阈值依赖 |
| 串谋恢复 | 取决于协议 | 必须明确串谋上限和阈值 |
九、组合方式
用户级DP + 安全聚合
text
客户端裁剪本地更新
↓
安全聚合隐藏单个裁剪更新
↓
聚合端加入或分布式形成校准噪声
↓
隐私会计累计多轮用户级预算- 安全聚合让服务器难以看到单个裁剪更新;
- DP限制用户对发布模型的影响;
- 必须验证噪声由谁加入、服务器能否去除、掉线是否改变噪声量。
HE/MPC混合
算术聚合可用秘密共享或HE,比较/选择可用混淆电路等专门协议。混合并不自动更安全,跨协议转换和密钥边界需纳入证明与实现审计。
十、机制选择矩阵
| 需求 | 首选思路 | 仍需补充 |
|---|---|---|
| 服务器不能看单个HFL更新 | 安全聚合 | 最终模型DP、投毒防御 |
| VFL联合算术不暴露输入 | MPC/HE | PSI、恶意输入验证、输出控制 |
| 限制成员推断 | 样本级/用户级DP | 加密传输、效用和公平评估 |
| 防服务器链路窃听 | TLS | 端点不可信时HE/MPC/安全聚合 |
| 防客户端投毒 | 鲁棒聚合/验证/审计 | 隐私机制和安全聚合兼容性 |
| 支持实体对齐 | PSI | 交集最小披露和后续训练安全 |
| 高效算术、可离线预处理 | 秘密共享 | 三元组生成和腐败阈值 |
| 低交互但可承受密文计算 | HE | 密钥管理和非线性近似 |
十一、闭卷检查
- 机制保护的对象是什么?
- 攻击者在协议结束后能看到什么?
- 正式保证对应哪个攻击模型和腐败阈值?
- 输出和最终模型是否仍会泄露?
- 是否保护单条样本、单个用户或单个客户端?
- 多轮训练的隐私预算如何累计?
- 掉线、串谋和恶意输入会怎样破坏保证?
- 是否同时需要鲁棒性、可用性和审计机制?
