【课堂笔记】隐私计算实训营第四期:"隐语"可信隐私计算开源框架
- [SPU 实现的 PSI 介绍](#SPU 实现的 PSI 介绍)
- [SPU PSI调度架构](#SPU PSI调度架构)
- [Secretflow PSI开发指南](#Secretflow PSI开发指南)
SPU 实现的 PSI 介绍
PSI定义和种类
- PSI定义
- 可见课堂第一节:【课堂笔记】隐私计算实训营第四期:隐私求交PSI
- 一种 特殊的安全多方计算协议;
- Alice持有集合X,Bob持有集合Y;
- Alice和Bob通过执行PSI协议,得到交集结果 X ∩ Y X \cap Y X∩Y;
- 除交集外不会泄露其他信息。
- PSI 分类
- 2-方/多方PSI
- 平衡/不平衡PSI
- 半诚实/恶意PSI
隐语PSI的功能分层
SPU实现的PSI种类
- 半诚实模型
- 两方
- ecdh、kkrt16、bc22
- ec-oprf PSI
- dp-psi
- 多方
- ecdh-3-party
- 两方
- 恶意模型
- mini-PSI
- PSI 发展历程
- ecdh-PSI介绍
- 容易理解和解释;
- 容易实现;
- 通信开销小,计算开销大;
- 易扩展。
- KKRT16 PSI介绍
- 优点:
- 运行时间快
- 缺点:
- 内存占用大;
- 通信量大。
- 优点:
- BC2 PCG PSI 介绍
- 基于sVOLE的BaRK-OPRF
- Generalized Cuckoo Hash
- Permutation-Based Hashing
- BC22 PCG PSI协议流程:
- 实现选用的参数:
- Generalized Cuckoo Hash (3,2)
- VOLE 使用 emp-zk 中的 WYKW21 Wolverine 方案
- 不平衡PSI:ec-oprf based
- 不平衡PSI:SHE-based
- APSI 与 ec-oprf PSI 比较
- 优点:
- 不需要将大数据方的数据传输到小数据方
- 缺点:
- 计算量大,运行时间长
- 优点:
- APSI 与 ec-oprf PSI 比较
- 基于 ecdh 的三方 PSI 协议
- 协议流程:
- Alice 和Bob先进行交互,得到shuffle后的两方交集;
- Alice 将 shuffle 后两方交集,发送给 Charlie;
- Charlie 加密后的数据依次给 Bob 和 Alice 加密;
- Charlie 比较密态数据,得到交集。
- 优点:
- 基于 ecdh-psi,易于实现
- 缺点:
- 泄露Alice和Bob两方交集数量
- 协议流程:
SPU PSI调度架构
- 统一入口
- 入口函数:bucket_psi
- 支持分桶求交
- 通过分桶支持大规模数据
- 输入输出处理
- 检查求交id列是否数据完整
- 检查是否有重复项
- 输出处理
- 支持按求交id列排序
- 输出完整label列
Secretflow PSI开发指南
- Secretflow仿真模式:
- Secretflow生产模式: