Non-Interactive Oblivious Transfer and Applications | SpringerLink
本篇为Crypto 1989的文章,来自MIT计算机技术实验室,作者是Mihir Bellare、
Silvio Micali。本篇文章提出了非交互式的OT传输方法(基础OT)。
“非交互式”区别于Rabin论文中对于交互式的假定:即接收方收到密钥后,对文件解密的动作会立刻被发送方感知。由此一定存在接收方和交互方对于收发消息的一系列用于确认的交互。除了没有对“非交互式”的OT做了特殊的贡献,本篇论文还在文章内部的方案基础上进一步改进了“OT信道”,并提出了“t-1 out of t OT”的概念。
非交互式OT
概念如下:A拥有两个字符串s0 ,s1。B拥有公钥PB,A计算消息m并发送给B。B使用私钥SB仅能从m中提取两个字符串的其中之一。同时A也不知道B提取的是哪一个字符串(定义里面没提及“非交互式”的概念,只能和其他论文的定义对比一下)。
该协议如下:
-
协议中的计算在群p(Z*p)中进行,任何计算结果都会对p做模运算。双方选定C∈Zp,但没有人知道C的离散对数。
-
B首先生成密钥。B任意选定i属于{0, 1},任意xi属于{0, ..., p-2},生成公钥:βi=gxi,β1-i=C/gxi。将(i,x)作为私钥保存。将公钥发送给A。
-
A生成随机数y0,y1,计算α0=gy0,α1=gy1,计算γi=βiyi, i属于{0,1}。最后计算r0=γ0 + s0,r1=γ1 + s1。将α0、α1、r0、r1发送给B。
-
B计算rixi并与相应ri异或得到si。
为了提高安全性,文中进一步做了改造。使用字符串的内积构造“强比特加密”字符串(但是没看懂)。
OT信道
OT信道的概念是指:从A到B的一对不经意传输信道C=(C0, C1),拥有如下性质:
- A可以从信道C0,C1中任选一条发送任意比特数量的信息。
- 对B来说,仅有其中一条信道的信息是可见的,另一条信道的信息不可见。
- A不知道哪一条信道对B可见。
OT信道基于非交互式基础OT,但OT信道一经选定无法修改,原文中对OT信道的描述是“非独立的”。即在该信道中传输的消息虽然对A而言不可见,但这些消息肯定都是从同一条信道发送的。为了构造该信道,首先由A使用基础OT向B发送两个随机数,之后的正常OT通信均通过两方同步的随机数的KDF与待发送的消息对异或计算得到。
t out of t-1 OT
1 out of 2 OT可以很简单被转化为“t-1 out of t OT”。通过选择 i0,i1,i2,……,it-1,并选择t-1个随机数并生产成t个离散公钥(t-1个公钥的对数已知,其中一个公钥的对数通过与C相除得到),仿照基础协议可以很简单生成多选多的OT。
最后
论文的最后讨论了一下公共参数C、p和g。作者提到,这三个公共参数应当由密钥下发中心生成从而保证安全性,而由此涉及到需要保证中心节点的下发是受到认证的(采用签名来实现),且中心节点也无从得知AB之间通信的信道。文中没有进一步就该中心节点提出实现协议,仅仅指出了该节点应当具有的性质:向密钥申请者返回一对信道加密函数,一个用于认证的签名以及由申请者选定的,其中一个加密函数的逆函数。
浙公网安备 33010602011771号