GMW 协议与不经意传输
实现 OT 扩展和 GMW 多方协议
GMW 协议与不经意传输 是 CoddyKit 上的免费 Cryptology Academy 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cryptology Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cryptology Academy 课程共包含 4 节课。
GMW:多方秘密共享方法
Goldreich-Micali-Wigderson(GMW) 协议使用 XOR 秘密份额计算布尔电路。每条线路的值都会在所有参与方之间分割;参与方逐门交互。
GMW 中的 XOR 秘密共享
参与方 i 持有份额 s_i,满足 s_1 ⊕ s_2 ⊕ ... ⊕ s_n = w(线路的真实值)。XOR 门无需通信:每个参与方在本地对自己的份额执行 XOR。
AND 门需要交互
对于线路 a、b 上的 AND 门,计算 (a_1⊕a_2)(b_1⊕b_2) 后会展开为交叉项。参与方 i≠j 之间计算交叉项 a_i·b_j 需要使用不经意传输。
不经意传输(OT)的定义
在一次 1-out-of-2 OT 中,发送方持有消息 (m_0, m_1),接收方持有选择位 c。接收方获得 m_c;发送方不了解 c;接收方不了解 m_{1-c}。
Naor-Pinkas OT 协议
该协议基于迪菲–赫尔曼算法:接收方生成两个公钥,并且只知道其中一个公钥对应的离散对数。发送方使用其中一个密钥分别加密每条消息。接收方只能解密自己选择的密文。
OT 扩展:低成本执行 OT
Ishai 等人(2003 年)提出:从 k 次基础 OT 生成 m >> k 次 OT,并且只使用对称密钥操作。IKNP 扩展在一次性设置之后,将每次 OT 的成本降低到约 3 次 AES 调用。
使用 OT 扩展的 GMW
每个 AND 门需要每对参与方之间进行一次 OT。借助 OT 扩展,可以在离线阶段预先计算所有 OT,使在线阶段每个门只需进行一次 XOR 交换。
通过切分与选择实现恶意安全
可以使用零知识证明或切分与选择 OT,使半诚实 GMW 具备抵御恶意行为的安全性。成本会增加 3-8×,但可以保证即使参与方作弊也能保持安全。
承诺式 OT 与经过认证的份额
MASCOT(Keller 等人)将 OT 扩展为在恶意模型中生成经过认证的 AND 三元组,从而支持 SPDZ 协议——下一课将介绍该协议。
实用库
EMP 工具包和 MOTION 使用 OT 扩展实现了 GMW。它们可以让两方通过 LAN 每秒计算数百万个 AND 门,使实际应用成为可能。
知识检查
为什么 GMW 协议中的 XOR 门不需要参与方之间进行通信?
课程回顾
GMW 在布尔电路上使用 XOR 秘密份额。XOR 门无需通信;AND 门需要 OT。OT 扩展使 OT 的成本很低。恶意安全性需要加入零知识证明或切分与选择。EMP 等库能够为实际应用提供实用的吞吐量。
常见问题解答
「GMW 协议与不经意传输」课时是免费的吗?
是的 — 「GMW 协议与不经意传输」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cryptology Academy 课程的其余内容,请升级到 CoddyKit PRO。 Cryptology Academy 课程共包含 4 节课。
「GMW 协议与不经意传输」这节课中我会学到什么?
实现 OT 扩展和 GMW 多方协议 你通过在浏览器中直接运行的动手代码来练习 Cryptology Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Cryptology Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Cryptology Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。
「GMW 协议与不经意传输」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Cryptology Academy 课中编写并运行代码吗?
能。每节 Cryptology Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。