本节摘要:选框架先选三件事:协议家族、开发界面、安全档位。本节把主流开源框架放进同一张对照表,给出两条典型路径——研究验证走 MP-SPDZ、机器学习业务走 CrypTen 或 SecretFlow——并给一个两周验证计划。
开源 MPC 框架的分化不是质量分化,而是定位分化。MP-SPDZ 是 SPDZ 系的集大成者:一份代码库支持十余种后端协议(恶意安全的 SPDZ、半诚实的加法分享、混淆电路、甚至同态混合),C++ 内核加 Python 脚本接口,协议研究与新想法验证几乎绕不开它。代价是概念门槛——你要自己理解安全域、协议选项、预处理模式的含义。ABY 及其后续 ABY3 走混合协议路线:两方场景下在算术分享、布尔分享、混淆电路三种表示间自动转换,谁便宜用谁;ABY3 补三方场景,工程实现干净,常作为论文基线。CrypTen 是 PyTorch 生态的秘密分享库:把 MPC 藏进张量运算的界面背后,会写 PyTorch 就能跑隐私推理与训练,是算法工程师迁移成本最低的入口,代价是协议选择与安全档位的自由度较小。EMP-toolkit 主打两方极速:OT 与混淆电路的工程实现常年领先,对延迟敏感的两方应用(如实时反欺诈规则)是首选底座。国内生态里 SecretFlow(隐语) 把 MPC、联邦学习、TEE 编排进同一套平台界面,适合需要完整平台能力(调度、审计、多方管理)的机构场景。

框架对比表看多了容易眼花,收束成三道题。题一:几方? 两方且延迟敏感看 EMP 系与 ABY;三方及以上看 MP-SPDZ、ABY3、SecretFlow。题二:算什么? 统计聚合与机器学习走算术系(SPDZ 家族、CrypTen);精确匹配与短布尔逻辑走电路系(EMP、ABY 的 GC 分支)。题三:什么安全档位? 半诚实选型自由,恶意安全基本锁定 SPDZ 家族(带 MAC 校验的后端)——第 5 章的结论在选型表上直接兑现。三题答完,候选通常只剩一个到两个,再用目标网络压测一锤定音。
第一至二天:跑通候选框架的官方示例(本地三进程模拟三方)。 第三至四天:把业务任务的最小版(一千行数据或一层网络)改写为框架程序。 第五至七天:在目标网络(真实跨机房或加延迟模拟)压测,记录吞吐与时延分布。 第八至十天:切换安全档位(半诚实与恶意各测一遍),记录通信量倍数。 第十一至十二天:预计算冷启动测试:从零备货到在线可用的时间。 第十三至十四天:写选型备忘:瓶颈项、框架缺陷、运维风险、给业务方的耗时承诺。
这份计划的价值不在周密而在诚实——它强迫你在目标网络、目标安全档位、含预计算的真实链路上做判断,而不是引用论文数字。多数选型翻车,都翻在"用论文的局域网数字给广域网项目做承诺"。
⚠️ 常见坑:把框架的默认安全档位当成业务的安全档位。不少框架默认半诚实启动,恶意安全要显式传参;评审时若只问"用的什么框架"而不问"开的什么后端、什么安全参数",评审就漏掉了最关键的一行配置。
本节要点:框架差异是定位差异;三道题(几方、算什么、什么档位)收束候选;两周验证计划把选型落在实测上。下一节聊部署运维——从能跑到敢上生产之间的最后一段路。
选型还要算"人的账"。MP-SPDZ 的 C++ 内核对密码学素养要求高,但脚本层只要 Python 基础;社区以研究者为主,问题响应靠论文与邮件列表,适合有密码学背景的团队。CrypTen 对 PyTorch 用户几乎零门槛,一个下午能跑通首个隐私推理;代价是它把协议细节藏起来了,出了性能问题排查要看底层实现——适合算法团队快速验证业务价值。EMP-toolkit 的文档以论文式组织,上手陡峭,但两方性能上限最高,值得专门的工程投入。SecretFlow 提供平台化界面与中文文档,运维与多方管理开箱程度高,适合以"平台采购"思路推进的机构。
还有一个常被忽视的维度:框架的安全默认值与审计线索。半诚实与恶意档的切换参数、安全域的宽度配置、日志里是否记录协议参数——这些细节决定了上生产时安全评审的成本。建议在两周验证计划里加半天"安全配置清点",把每家框架的默认档位列成表。选框架本质是在选"未来三年和哪个社区一起排错",技术指标之外的账同样真实。
框架选型的最后一维是"谁来用"。按团队画像给四个匹配建议。密码学科班两人以上:MP-SPDZ 起步,协议自由度兑现有能力前提,团队啃得动后端文档。算法工程为主:CrypTen 起步,先用熟悉的界面验证业务价值,密码学能力随项目生长。平台工程为主:SecretFlow 或同类平台起步,把密码学复杂度外包给平台,团队精力放在多方治理与运维。极致两方性能需求:EMP 系加专职性能工程投入,准备好为最后一个数量级付人月。
四条匹配建议背后是同一个判断:框架的隐性成本在人而不在许可证——学习曲线、排错深度、社区响应,每一项都按团队画像计价。选型会议把"我们有谁"这张牌先摆出来,讨论效率会高一倍。
补最后一个实务提醒:无论选哪家,都把"协议参数与安全档位的配置快照"纳入版本管理,随代码一起评审。这半天的基建投入,会在第一次安全评审、第一次事故复盘、第一次人员交接时各还你一次本息。
把 6.3 节收束成一份可以直接开写的选型文档模板,七段结构:一、需求与威胁模型(抄 1.2 节的三属性表述);二、候选清单与入选理由(三道必答题的答案);三、验证环境说明(网络参数、机器规格、数据量级);四、实测结果表(吞吐、延迟分布、通信总量、预计算冷启动);五、安全配置快照(框架版本、后端、档位、参数,附签名);六、风险与已知缺陷(社区 issue、踩坑记录);七、结论与复核条件(什么事件触发重新选型)。七段写完,这份文档同时是技术决策记录、评审材料与一年后的复盘底稿——一份文档三份用途,这是选型工作里性价比最高的动作。