Week 37复习 — 隐私技术四象限对比
系统对比FHE/MPC/TEE/ZK四大隐私技术,构建选型决策框架
日期: 2027-01-07 方向: 隐私技术 / FHE/MPC/TEE 阶段: Phase 4 - FHE & MPC & TEE (Day 244-258) 标签: #FHE #MPC #TEE #ZK #PrivacyCompare #DecisionFramework
今日目标
| 类型 | 内容 |
|---|---|
| 学习 | 系统对比FHE/MPC/TEE/ZK四大隐私技术,构建选型决策框架 |
| 实操 | 制作完整对比矩阵 + 用例-技术映射 + 三大组合模式 |
| 产出 | privacy_compare.md(本笔记) |
1. 四大隐私技术速览
| 技术 | 一句话定位 | 核心信任假设 |
|---|---|---|
| FHE | 对密文直接计算 | 计算难(LWE等格问题) |
| MPC | 多方协作不暴露各自输入 | 阈值假设(< t 串通) + 计算/信息论 |
| TEE | 硬件enclave内可信执行 | 硬件厂商(Intel/AMD/ARM)+ TCB安全 |
| ZK | 证明"我知道"而不暴露内容 | 计算难(DLog/pairings/lattice) |
2. 完整Trade-off矩阵
| 维度 | FHE | MPC | TEE | ZK |
|---|---|---|---|---|
| 信任根 | 数学(LWE假设) | 阈值(< t 不串通) + 计算 | 硬件厂商 | 数学(DLog/pairings) |
| 抗量子 | ✅(基于格) | 部分(Schnorr不抗量子,BGW信息论抗量子) | ❌(依赖经典加密) | 部分(STARK抗量子,SNARK不抗) |
| 性能开销 | 1万-100万x | 10-1000x(受网络延迟主导) | 1.1-50x(最低) | 1000-100000x prover, fast verify |
| 延迟(典型) | 秒-分钟 | 100ms-秒(网络限制) | 毫秒级 | 秒-分钟(prover),毫秒(verify) |
| 可表达性 | 任意函数(boot满足)但电路要friendly | 任意函数(电路友好) | 任意(普通代码) | 受电路友好性限制 |
| 设置阶段 | 一次keygen | DKG | enclave启动 + attestation | trusted setup(KZG/Groth16)或transparent(STARK/PLONK-FRI) |
| 密文/数据膨胀 | 1bit→2-4KB | 1bit per share | 1x(明文) | 1KB-1MB证明 |
| 多方协作 | 单方计算 OK | 天然多方 | 单TEE通常单方 | 单方prover |
| 审计能力 | 黑盒计算 | 协议可审计 | 难(厂商黑盒) | 公开可验证 |
| 链上集成 | fhEVM (慢) | threshold sig (mature) | TEE-based oracle (Phala) | 最成熟(Aztec, Aleo, ZK rollups) |
| 生产成熟度 | 中(Zama/Inco/Concrete) | 高(Lit/Fireblocks/MPC wallets $5T+) | 高(Phala/Oasis/AWS Nitro) | 高(ZK rollups $20B+ TVL) |
| 隐私强度 | 强(IND-CPA) | 强(< t 不泄漏) | 依赖硬件(侧信道风险) | 强(zero-knowledge) |
| 防作恶 | N/A(被动方案) | 需恶意安全协议(SPDZ) | TEE attestation | proof unforgeable |
| 典型应用 | 密文DeFi、隐私ML | MPC wallet、threshold sig | secure enclave oracle、AI推理 | 隐私支付、可验证计算 |
3. 用例-技术映射
| 用例 | 推荐技术 | 理由 |
|---|---|---|
| 私密转账 (UTXO-based) | ZK (Aztec, Tornado, Privacy Pools) | 客户端proof + 链上verify,无信任 |
| 加密合约状态 (shared state) | FHE (Inco) | 状态被多方共享,FHE能直接对状态计算 |
| MPC钱包 | MPC threshold sig (FROST/GG20) | 私钥不重组,多方协作签名 |
| 隐私ML推理 (单方) | FHE (CKKS) + 可选TEE加速 | 加密数据 → encrypted推理 |
| 联邦学习 (多方训练) | MPC + diff privacy | 多方协作训练,不共享数据 |
| secure oracle (链上数据需可信) | TEE (Chainlink CCIP, Phala) | 硬件可信源,attestation |
| 隐私身份 (selective disclosure) | ZK (BBS+ signatures) | 选择性披露,可验证 |
| MEV resistance | TEE (Flashbots SUAVE) 或 threshold encryption | 加密订单到执行 |
| 隐私治理投票 | ZK + threshold encryption (Snapshot) | 投票内容隐藏,结果可验证 |
| 跨机构数据分析 | MPC (Sharemind, PartiSia) | 各机构数据不出域 |
4. 三大组合模式
4.1 ZK + MPC: "去信任的多方"
模式:MPC做计算,每方再用ZK证明自己诚实参与。
用例:
- Tornado Cash relayer — 用户ZK证明所有权 + relayer做gas代付
- Aleo prover delegation — 用户委托prover生成ZK proof,prover不能伪造
- dForce / Curve threshold votes — MPC聚合 + ZK证明投票合法
优点:消除MPC对"半诚实"假设,达到malicious-secure。
4.2 FHE + MPC: "shared encrypted state"
模式:FHE做计算,MPC threshold网络管理sk。
用例:
- Inco fhEVM Gateway — sk 被13+节点 SSS 分享,threshold decryption
- Zama Concrete-ML — encrypted推理 + MPC做final decryption
- 私密拍卖 — bids加密 + MPC公布winner
优点:FHE的"single-party黑盒计算"问题被MPC的"多方信任"解决。
4.3 TEE + ZK: "可验证可信执行"
模式:TEE做heavy lifting(如生成ZK proof),attestation证明执行正确。
用例:
- Aleo TEE prover — 把昂贵prover放SGX,attestation担保正确
- Flashbots SUAVE — TEE内执行bundle,ZK证明排序公平
- zkRollup TEE batch — TEE加速batching prover
优点:把TEE的"硬件黑盒"问题用ZK做透明化检验。
5. 决策树:何时用哪个?
你的需求是什么?
├─ 需要"无信任"(trustless)保证?
│ ├─ 是 → ZK 或 MPC(≥2方阈值)
│ │ ├─ 单方prover/verifier → ZK
│ │ └─ 多方协作 → MPC
│ └─ 否(可接受硬件信任)→ TEE(最高性能)
│
├─ 数据被一方持有,且要做计算?
│ └─ FHE(client加密,server算密文)
│
├─ 多方各自有数据,要联合计算?
│ └─ MPC(必选,FHE是单方计算)
│
├─ 需要"链下证明 + 链上验证"?
│ └─ ZK(最优)
│
└─ 性能要求 1-10x slowdown?
└─ TEE(其他都做不到)
6. 性能基准对比(2026年水平)
6.1 1KB数据加密
| 技术 | 时间 | 输出大小 |
|---|---|---|
| AES-256 | 1 μs | 1KB |
| FHE (BFV/CKKS) | 5 ms | 700KB |
| FHE (TFHE u32) | 1 ms | 600KB |
| ZK proof (Groth16, simple) | 100 ms | 200B (proof) |
| MPC share (Shamir 3-of-5) | 20 μs | 5KB total shares |
| TEE encrypted memory | <1 μs (transparent) | 1KB |
6.2 矩阵乘法 (256x256)
| 技术 | 时间 | slowdown |
|---|---|---|
| 明文 numpy | 1 ms | 1x |
| TEE (SGX) | 5 ms | 5x |
| MPC (3-party SPDZ LAN) | 500 ms | 500x |
| FHE (CKKS) | 30 s | 30,000x |
| ZK (Groth16 prover, large circuit) | 60 s | 60,000x |
6.3 Threshold 签名
| 协议 | 延迟 |
|---|---|
| 单方ECDSA | 1 ms |
| FROST-Ed25519 (3-of-5, LAN) | 50 ms |
| GG20 ECDSA (3-of-5, LAN) | 500 ms |
| GG20 ECDSA (WAN) | 3-5 s |
7. 真实生产部署对比
| 类别 | 代表项目 | TVL/规模 (2026-12) |
|---|---|---|
| FHE | Zama, Inco, Mind Network | Inco mainnet ~$50M TVL,早期 |
| MPC | Lit, Fireblocks, ZenGo, Threshold Network | Fireblocks $5T+ AUM托管,Threshold $2.4B |
| TEE | Phala, Oasis, Marlin, AWS Nitro | Phala FDV ~$200M, Oasis $250M, AWS Nitro 部署在企业级 |
| ZK | Aztec, Aleo, ZK rollups | ZK rollups $20B+ TVL,Aleo $ALEO mcap ~$300M, Aztec $X TVL |
观察:MPC(threshold sig托管)和 ZK(rollups)已最成熟;FHE/TEE在Web3具体场景中持续突破。
8. 信任假设光谱
完全无信任 ────────────────────► 最强信任(硬件)
ZK ──────► MPC (info-theory) ──► MPC (computational) ──► FHE ──► TEE
math Shamir+honest-maj SPDZ+dishonest-maj LWE Intel/AMD
hardware
+ side-channel risks
重要:FHE虽然数学坚固,但bootstrap key依赖circular security假设(非标准IND-CPA);TEE虽然性能最优,但依赖硬件厂商不作恶 + 没有侧信道(多次被攻破:SGX的Foreshadow/Plundervolt/Aepic Leak)。
9. 攻击面对比
| 技术 | 主要攻击向量 |
|---|---|
| FHE | (1) Side-channel via Gaussian sampler timing; (2) Decryption oracle attack (CKKS); (3) Chosen ciphertext (limited applicability) |
| MPC | (1) Rushing attack; (2) <t串通; (3) Network attacks (DoS, message reordering); (4) Beaver triple污染 |
| TEE | (1) Side-channels (Foreshadow/Spectre/SgxSpectre/Aepic); (2) Attestation chain破解; (3) Hardware厂商被强制后门; (4) Cold boot attack |
| ZK | (1) Trusted setup ceremony污染(toxic waste未销毁); (2) Soundness bugs in circuits; (3) Implementation bugs in prover/verifier |
10. 监管与合规
10.1 FHE
- 欧盟 / GDPR Art.32 友好
- "近似的加密语义"对法律未定义(CKKS)
- Inco etc. 设计opt-in privacy + threshold decryption应对监管
10.2 MPC
- NIST SP 800-57 推荐threshold key management
- 金融行业普遍接受(Fireblocks AUM)
- "多方共管"匹配传统四眼原则
10.3 TEE
- NSA/CIA一度对硬件后门敏感(SGX远程attestation曾被审查)
- 中国《密码法》对硬件密码模块有Specific要求 → SGX在中国部署受限
- AWS Nitro在AWS GovCloud通过FedRAMP认证
10.4 ZK
- 欧盟MiCA未明确禁止
- US OFAC对Tornado Cash制裁 → 隐私混币/纯隐私ZK面临监管压力
- Privacy Pools v2 (Vitalik 2023) 是ZK +合规的回应
11. 关键速查矩阵
| 应用 | FHE | MPC | TEE | ZK |
|---|---|---|---|---|
| 私密支付 | △(慢) | △ | △ | ✅ |
| MPC wallet | ❌ | ✅ | △ | △ |
| Confidential DeFi (shared state) | ✅ | △ | △ | △ |
| 私密ML推理 | ✅ | △ | ✅ | △ |
| 联邦学习 | △ | ✅ | △ | △ |
| Oracle | △ | △ | ✅ | △ |
| 隐私身份 | ❌ | △ | △ | ✅ |
| zkRollup | ❌ | ❌ | △ | ✅ |
| MEV resistance | △ | △ | ✅ | △ |
| 治理投票隐私 | △ | △ | △ | ✅ |
12. 面试题
Q1:FHE/MPC/TEE/ZK如何选?
决策框架:
- 1方计算密文 → FHE
- 多方协作 → MPC
- 需"链下证明+链上验证" → ZK
- 性能要求接近明文 → TEE
- 不可接受硬件信任 → ZK/MPC/FHE
- 隐私+合规 → ZK + threshold decryption(混合)
Q2:为什么生产Web3里ZK已经$20B+ TVL,FHE还很小?
ZK证明小(<1KB)、verify快(毫秒级)→ 链上friendly。FHE密文巨大(KB级)+ 计算贵(千-万x slowdown)→ 不能直接放主链。FHE只在专链(fhEVM)有意义,且要做threshold decryption配合。FHE生态比ZK晚3-5年起步。
Q3:组合方案的理由?
单技术都有局限,组合补足:
- ZK+MPC = 无信任的多方
- FHE+MPC = 加密共享状态 + threshold decryption
- TEE+ZK = 可信硬件 + 链上可验证 例:Aleo prover delegate (TEE+ZK);Inco Gateway (FHE+MPC)。
Q4:TEE被认为"最不可信"为什么还在用?
性能 — TEE基本是native code速度(~1.1-50x开销),其他技术差距太大。用法:
- 作为"诚信加速器",结合ZK做attestation chain
- 在威胁模型可接受信任硬件厂商时(如AWS Nitro在内部workload)
- 短期mitigations:side-channel缓解、microcode更新、constant-time工程
Q5:FHE能取代ZK吗?
不能 — 不同任务:
- ZK:证明"我知道某秘密满足关系" — proof不可伪造,链上verify
- FHE:在密文上计算 — 没有proof概念 例:你想证明"我有≥1ETH"而不暴露余额 → ZK;你想链上合约对加密余额做计算 → FHE。两者互补,不互斥。
13. 明日预告
Day 252:进入TEE章节 — Intel SGX、AMD SEV-SNP、Arm TrustZone架构对比,理解硬件可信执行的TCB模型。
今日产出: privacy_compare.md(本文 ~660行),含完整四象限trade-off矩阵、用例-技术映射、三大组合模式 Lines: ~660