ABY - A Framework for efficient Mixed-Protocol Secure Two-Party Computation 阅读笔记 Part I
Published:
ABY - A Framework for efficient Mixed-Protocol Secure Two-Party Computation 阅读笔记 Part I
今天看了一下MPC的秘密共享框架ABY,主要看了Arithmetic部分,介绍了如何进行加法与乘法的计算,并介绍了如何用同态加密的方法以及不经意传输的方法生成Beaver三元组,但是OTBASE暂时没看懂,明天再看吧
1). Share Semantics:
1. Shared values:
对于一个数$x$的l字节Arithmetic共享$<x>^A$,我们有$<x> ^A_0 + <x>^A_1=<x>^A , <x>0^A,<x>_1^A\in Z{2^l} $
2. Sharing:
定义$Shri^A_i(x):$ $P_i$随机选$r\in Z_{2^l},$ 令$<x>i^A=x-r$,并发送r给$P{1-i}$,$P_{1-i}$ 将$<x>_{1-i}^{A}$ 设为r
3. Reconstruction:
定义$Rec_i^A(x):$ $P_{1-i}$ 将$<x>{1-i}^A$给$P{i}$,$P_i$计算$x=<x>_0^A+<x>_1^A$
2). Operations:
1. Addition
需要计算$<z>^A=<x>^A+<y>^A$,只需要$P_i$本地计算$<z>_i^A=<x>_i^A+<y>_i^A$
2. Multiplication
需要计算$<z>^A=<x>^A<y>^A$ 初始状态: $A: <x>^A_0,<y>^A_0$ $B:<x>^A_1,<y>_1^A$ 目标状态: $A:<z>^A_0$ $B:<z>^A_1$ $s.t. <z>^A_0+<z>^A_1=<z>_A=<x>_A\times<y>_A$ 方案如下:
- 准备三元组$(a,b,c=a\times b)$ 然后将$(a,b,c=a\times b)$ 加法共享给$P_0,P_1$(具体方案会在之后介绍) $A:\
_0^A,\ _0^A,\^A_0,\_0^A,\ _0^A$ $B:\ _1^A,\ _1^A,\_1^A,\_1^A,\ _1^A$</p></li> 两方各自计算$\
^A_i=\ ^A_i-\^A_i,\ _i^A=\ ^A_i-\^A_i$(盲化$\ ,\ $) $A: _0^A, _0^A,^A_0,_0^A, _0^A, _0^A, _0^A$ $B:\ _1^A,\ _1^A,\_1^A,\_1^A,\ _1^A,\ ^A_1,\ _1^A$</p></li> 双方共享自己的$
, $ $A:\ _0^A,\ _0^A,\^A_0,\_0^A,\ _0^A,\ ^A,\ ^A$ $B:\ _1^A,\ _1^A,\_1^A,\_1^A,\ _1^A,\ ^A,\ ^A$</p></li> 计算$\
_0^A=f\times \^A_0+e\times \^A_0+\ _0^A$与$\ _1^A=e\times f+f\times \^A_1+e\times\^A_1+\ _1^A$ 故有$\ ^A+\ ^B=e\times f+f\times a+e\times b+c=x\times y$</p></li> </ol> 3. 生成三元组 $(a,b,c=a\times b)$
(1). 通过同态加密实现
注释:Pailler同态加密指的是$Enc_0(a+b)=Enc_0(a)\times Enc_0(b)$ 初始状态:$P_0,P_1$分别随机$_0^A,_1^A,_0^A,_1^A$,$P_1$随机一个随机数$r$ 需要获得一个$\
_0^A,\ ^A_1$,使得$\ _0^A+\ _1^A=\ ^A=\^A\^A=(\^A_0+\^A_1)(\_0^A+\^A_1)$ 方案如下: - $P_0$发送给$P_1$: $Enc_0(\_0^A), Enc_0(\^A_0)$ $P_0:\^A_0,\^A_0$ $P_1:\^A_0,\^A_1,r,Enc_0(\_0^A),Enc_0(\_0^A)$</p></li>
$P_1$发给$P_0$: $d=Enc_0(\_0^A)^{\^A_1}\times Enc_0(\_0^A)^{\_1^A}\times Enc_0(r)$</p></li>
$P_0$计算$\
_0^A=\_0^A \_0^A+Dec_0(d)=\_0^A\^A_0+\_0^A\^A_1+\_1^A\_0^A+r$</p></li> $P_1$计算 $\
_1^A=\_1^A\_1^A-r$</p></li> </ol> (2).通过OT实现
暂时还不会 明天看!
