隐私计算的安全性与效率
隐私计算概述
隐私计算的效率与隐私保护程度相关。例如,在广域网下多方合作训练一个LR模型(1024行64列,迭代1次),不同隐私计算方案的时间开销差异显著:
- SecureML: ~100秒
- ABY3: 0.3秒
- Blaze: 2秒
- Helen: ~15分钟
业界普遍关注效率,但安全指标披露较少,导致客户难以评估方案安全性。
安全性与效率的权衡
最高级安全性通常伴随着高效率代价。在不需要最高级安全性的场景下,可通过降低安全性来提升效率,但需明确安全性的取舍和潜在风险。
清晰描述安全性的方法:
- 明确定义安全假设(能防/不能防的攻击者)
- 明确定义防护效果(明确描述可能的泄露内容)
避免模糊的安全声明,如“龙在车库”(无法验证的存在)。
密码学中的可证明安全简介
可证明安全是密码学领域评估安全性的黄金准则,主要分为:
- 基于游戏的证明方式(如Paillier)
- 通过游戏胜负判断安全性,若能赢得游戏则可破解相应数学难题。
- Paillier示例:Alice选择m0,m1,Bob选择c ∈{Enc(m0), Enc(m1)},Alice猜c的明文。若能以优势赢,则可破解大数分解问题。
- 基于模拟的证明方式(如OT)
- 模拟器生成与真实环境不可区分的信息,验证攻击者无法区分真实与模拟。
- 半诚实模型下,Real vs Ideal需满足DDH假设;恶意模型下更复杂。
证明方案安全性的步骤:
- 证明每个底层模块的安全性
- 判断模块运行方式:
- 串行运行:方案满足可证明安全
- 非串行运行:需模块满足UC(universal composable)特性
- PPML任务通常可视为串行,无需考虑UC
常见错误做法:
- 仅因底层加密模块安全就认为整体安全,需确保无信息泄露路径
- 忽略中间结果泄露(如Deep leakage from gradients)
- 低估函数约束泄露(如年龄+工资=25000)
其他可证明安全方法
- 差分隐私(Differential Privacy)
- 原理:Alice从Bob信息中难以识别任意指定行
- 应用:DP-SGD(横向分割联邦学习)、DP+PSI(降低padding)
- 挑战:
- 大幅影响数据分析准确率
- 纵向分割研究不足(国内主流场景)
总结
隐私计算领域公认的两种可证明安全方法:
- 基于游戏/模拟的证明方式:刻画信息泄露边界
- 基于差分隐私的证明方式:防止信息重识别到单条记录
呼吁业界做好安全证明,让方案安全性“看得见,摸得着”