Skip to content

方法Method

不经意传输与两门混淆电路

Oblivious transfer and garbled circuits · 1-out-of-2 OT · 两门混淆电路

在理想OT下逐位计算AND后接XOR,并用独立表项掩码证明双方静态半诚实视图的完美模拟。

形式陈述 ​

理想 OT 与本页功能 ​

一取二不经意传输 FOT 接收发送者的两个等长串 (m0,m1) 和接收者的选择位 b,只向接收者返回 mb。发送者无输出,也看不到选择;接收者看不到未选择的串。会话身份、长度和调用完成的固定时序公开,串内容与选择经私有接口输入。[1, §3.2]

Alice 持有两位 (a,c),Bob 持有一位 b。本页计算固定布尔电路

d=a∧b,y=d⊕c,

并向双方输出 y。理想功能 Ff 只收集这些输入并返回 (y,y)。

模型是单次执行、执行前静态腐化至多一方、半诚实行为:被腐化方仍按协议行动,但观察全部输入、随机币、收发记录和中间状态。使用私密、认证、可靠信道及上述理想 OT,时序和长度固定,无中止或新会话。协议随机币独立于输入和辅助信息;未腐化时外部只得到规定输出。

下面给出一个为这两个门展开的一次性掩码构造,证明完美视图模拟。它体现标签和混淆表的思路,不把一次一密直接替换进高效通用 Yao 方案。标准方案使用可重复安全加密及相应门表条件;本页将每个表项的掩码分开付费。[1, §§3.1、4.1]

标签和表项的精确编码 ​

对五条线 v∈{a,b,c,d,y},Alice 独立抽均匀位 ρv。语义位 t 的标签首位为

σv(t)=t⊕ρv.

这个选择位用于定位表项,不公开语义位 t。除最终输出外,ρv 不发送给 Bob。

第一门 g1 为 AND,输入次序 (a,b)、输出 d;第二门 g2 为 XOR,输入次序 (d,c)、输出 y。每门每个位置 (p,q)∈{0,1}2 有两个各自独立的均匀掩码 Rg[p,q],Cg[p,q],长度等于输出线标签长度。R 属于行输入标签,C 属于列输入标签;同一掩码只用于这一个表项。

从输出向前确定标签:

  • Lyt=σy(t),长度一。
  • 行输入 u 的标签是 (σu(t),Rg[σu(t),0],Rg[σu(t),1])。
  • 列输入 v 的标签是 (σv(t),Cg[0,σv(t)],Cg[1,σv(t)])。

因此 Ld,Lc 各三位,La,Lb 各七位。第一门的八个掩码各三位,第二门的八个掩码各一位;连同五个 ρ,Alice 共使用 24+8+5=37 个独立均匀随机位。拼接编码的字段长度固定,没有分隔歧义。

混淆表按选择位而非语义位排列:

(1)Tg[p,q]=Lwg(p⊕ρu,q⊕ρv)⊕Rg[p,q]⊕Cg[p,q].

两输入标签的首位确定 (p,q)。行标签携带所需 Rg[p,q],列标签携带所需 Cg[p,q],所以解开式 (1) 恰好得到正确输出标签。第一门解出三位 Ldd,第二门解出一位 Lyy。

直觉

Bob 沿电路只得到每条线的一个活动标签。标签中的选择位告诉他读哪一格,两个对应掩码让他解开这一格;另一语义标签里的掩码没有交给他。最后才通过 ρy 把输出标签转成语义输出。

“其他格至少缺一个掩码”只是证明的起点。隐藏的中间标签还会作为第一门的加密内容、第二门的解密材料,必须处理它们之间的关联。下面按门的先后顺序证明未选表项可以整体换成独立均匀串,从而得到真正的联合分布模拟。

例子与边界

协议的全部通信 ​

  1. Alice 生成上述随机带、所有标签和两张表,向 Bob 发送 T1,T2,ρy,Laa,Lcc。
  2. Alice 向理想 OT 输入 (Lb0,Lb1),Bob 输入 b,仅 Bob 收到 Lbb。
  3. Bob 用 Laa,Lbb 解第一门,得到 Ldd;再用它与 Lcc 解第二门,得到 Lyy。计算 y=Lyy⊕ρy。
  4. Bob 将 y 发给 Alice,双方输出 y。

由式 (1) 两次消去掩码,正确性对每一份随机带成立,没有解密失败概率。Alice 的第一条消息长 4⋅3+4⋅1+1+7+3=27 位,OT 选出一个七位标签,最后回传一位。OT 的实际实现成本尚未计算;理想调用不是免费构造了真实 OT。

一份可以逐位复算的门表 ​

取

(ρa,ρb,ρc,ρd,ρy)=(1,0,1,1,0),

并按行列索引 0,1 给出全部掩码:

R1=(001010100111),C1=(011101110000),R2=(1001),C2=(0111).

于是标签为:

线 语义 0 标签 语义 1 标签
a 1100111 0001010
b 0011110 1101000
c 111 001
d 101 010
y 0 1

这些双标签和全部随机位只供读者核算,协议不会把整张标签表交给 Bob。按式 (1) 得到

T1=(111101111010),T2=(1000).

取 (a,c;b)=(1,0;1)。Alice 发送活动标签 0001010 和 111,OT 返回 1101000。第一门读 (p,q)=(0,1):

101⊕010⊕101=010=Ld1.

第二门读 (0,1):

0⊕0⊕1=1=Ly1.

再异或 ρy=0 得 y=1,与 (1∧1)⊕0 一致。解码只使用一个表项,不需要尝试四次解密或识别“有意义的明文”。

八种输入与允许泄漏 ​

a c b d y
0 0 0 0 0
0 0 1 0 0
0 1 0 0 1
0 1 1 0 1
1 0 0 0 0
1 0 1 1 1
1 1 0 0 1
1 1 1 1 0

Alice 若知道 a=1,就能从 c,y 推出 b=y⊕c;这是功能输出允许的信息。若 a=0,输出总为 c,协议不能额外暴露 b。Bob 知道 b=0 时输出就是 c,但应仍不能从执行记录额外学习 a。安全性需要逐个输入证明,而非仅观察表中某一对输入。

推论与应用

Alice 腐化时的完整模拟器 ​

模拟器 SA(a,c,y) 按真实算法抽取全部 37 个随机位,生成两张表、所有标签、发送消息和 OT 发送者输入对。理想 OT 不向 Alice 返回选择位或标签,因此这部分没有依赖 b 的接收消息。最后把收到的 Bob 消息记为 y,并输出全部内部随机带与记录。

真实 Bob 按半诚实规则必定发送正确 y,所以这个模拟器与 Alice 的真实视图完全同分布。它知道的只是 Alice 的输入与允许输出,不需要先猜出 b。

Bob 腐化时:先消去第一门的隐藏表项 ​

固定任意 (a,c;b),令活动选择位为 sa,sb,sc,sd。第一门除 (sa,sb) 外有三格。对每格 (p,q) 选一个掩码:

  • 若 p≠sa,选 R1[p,q];
  • 否则必有 q≠sb,选 C1[p,q]。

三个选中的三位掩码彼此不同,独立均匀,只出现在相应表项和未发送的输入标签中。固定所有其他变量,包括两份中间标签与整张第二门表,这三个表项仍分别是一个固定串异或一个独立均匀掩码。因此它们联合均匀,且独立于其他可见字段;可把三格同时换成新鲜均匀三位串而不改变 Bob 视图的分布。

这是一次一密完美保密的联合版本:每个隐藏表项有自己单独的随机性,不能把同一个未知掩码重复用于多个格子。

再消去第二门,写出 Bob 的模拟器 ​

第一门的三个非活动表项已经变成独立噪声。未活动 d 标签中的掩码现在不再通过第一门密文与其他可见字段关联。对第二门的三个非活动格子使用同样的选择规则:非活动行取其行掩码,否则取非活动列掩码。三个独立均匀位仍只在各自格子中可见,所以这些格子也可同时换成独立均匀位。

两张表只剩两个活动格子保留精确关系。活动标签 Laa,Lbb,Lcc,Ldd 的选择位由各自独立 ρ 掩蔽,携带的掩码来自不同随机字段,因此它们本身是相互独立的均匀 7,7,3,3 位串。Bob 的模拟器 SB(b,y) 可以直接:

  1. 独立均匀抽四个活动标签 A,B,C,D,长度分别为 7,7,3,3;再抽一位 ρy。
  2. 用 A,B 的选择位定位第一门活动格,填入 D 异或两份对应掩码。
  3. 用 D,C 的选择位定位第二门活动格,填入 (y⊕ρy) 异或两份对应掩码。
  4. 第一门其他三格各填均匀三位串,第二门其他三格各填均匀位。
  5. 记录 Alice 消息 T1,T2,ρy,A,C、Bob 的 OT 选择 b 与收到的 B、两次求值的内部状态,以及发送/输出的 y。

它不需要 a,c,d。按上面两个保持同分布的步骤,真实视图恰好化为这个生成过程。模拟器使用 7+7+3+3+1+9+3=33 个独立均匀位;这些字段由完整视图可恢复,因此每个合法 Bob 视图的概率是 2−33。

联合输出、辅助信息与结论边界 ​

对每个固定输入和辅助信息 z,正确性与两个模拟证明给出

(ViewA(a,c;b),(y,y),z)=d(SA(a,c,y),(y,y),z),(ViewB(a,c;b),(y,y),z)=d(SB(b,y),(y,y),z).

逐个固定输入成立的等式,对任意相关输入与辅助信息先验混合后仍成立。对手在视图上作任意后处理也保持等式;无腐化时只输出 (y,y),直接由功能模拟。结论是理想 OT 混合模型中、该固定两门公式的完美单次半诚实安全。

本页没有实现 OT,没有处理恶意门表、错误输入标签、自适应暴露随机币或并发安全。若将独立掩码改为短密钥或某个哈希值,必须另行给出计算假设与归约。此编码的标签长度向输入方向递增,一般深电路可能发生快速膨胀;它没有证明高效通用 garbling。Lindell–Pinkas 的一般构造及其 Theorem 7 使用自己的加密条件和计算模拟,[1] 不能由此处的完美等式替代。

参考资料
  • [1] Yehuda Lindell and Benny Pinkas, A Proof of Security of Yao’s Protocol for Two-Party Computation, Journal of Cryptology 22, 2009, pp. 161–188。§2.1 Definition 1,pp. 165–166:静态半诚实视图与联合输出;§3.2,pp. 172–173:OT 接口;§3.1,p. 168 及 p. 169:多消息加密条件与随机索引;Protocol 2、Theorem 7,p. 177,及 pp. 178–181:一般 Yao 协议与双方模拟。正文的独立表项掩码、两门数字和完美模拟是本页显式展开的教学构造,未归为原论文的具体方案。
关系图谱11 个相邻概念 · 2 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系

使用的工具