阅读论文(Foundation of Garbled Circuits)
一、混淆方案定义
混淆方案: 一般来说,一个混淆方案算法 G b Gb Gb是把一个输入为 n n n bit二进制字符串,输出为 m m m bit二进制字符串的函数转化为一个三元组 ( F , e , d ) (F,e,d) (F,e,d)的算法。其中 e e e(encode)把原函数f的n bit二进制字符串进行编码,得到X,即X= e ( x ) e(x) e(x)。混淆函数F对X进行计算,得到Y。即: Y = F ( x ) Y=F(x) Y=F(x)。而d(decode)函数对Y进行解码,得到原来函数的m bit二进制字符串输出 y y y。
混淆方案正式的描述如下: 我们把混淆方案记录为(Gb,En,De,Ev,ev)五元组。其中Gb就是上面描述的变换。En是一个输入为e,x,输出为X的函数。同理,De是输入为d,Y,输出为y的函数。Ev是输入为F,X,输出为Y的函数,ev是输入为f,x,输出为y的函数。
二、混淆方案安全特性
混淆电路安全特性:隐私性(privacy),不经意性(obliviousness),认证性(authenticity)。
简单来说,三个性质可以如下理解
隐私性(privacy):对于某混淆方案,若一个获得了(F,X,d)的团体。除了最终结果y和已知结果泄露的部分信息外,该团体不能获得任何不被允许信息,则称该方案满足隐私性。
为了界定什么属于不被允许的信息,因此我们定义一个边际信息函数 Φ \varPhi Φ,敌手在已知(F,X,d)的前提下,不能获得除了 Φ ( f ) \varPhi\left(f\right) Φ(f)和y之外的任何信息。
不经意性(obliviousness):对于某混淆方案,若一个获得了(F,X),不包含d的团体。除了最终结果y和f,x外,该团体不能获得任何信息,则称该方案满足不经意性。
认证性(authenticity):对于某混淆方案,若一个获得了(F,X)的团体,不能够得到一个不同于F(X)且合法的Y*,则称该方案满足认证性。
三、电路定义
在文字描述中,我们一般用六元组 ( n , m , q , A , B , G ) \left(n,m,q,A,B,G\right) (n,m,q,A,B