购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.3 混淆电路

混淆电路协议允许参与者在不对明文做任何加密的情况下,对明文进行保密计算,一般应用于半诚实参与者之间,是确保双方计算安全的通用方法。当混淆电路协议应用在委托计算方案中时,首先,委托方需要将委托的任意函数 F 转换为布尔电路 C ,将转换电路的混淆形式 G ( C )和委托方需要计算 x 的混淆形式 G ( x )一起发送给计算方。这样代表该布尔电路的每条输入输出导线的随机数均被加密。然后,借助准备阶段生成的布尔电路 C 的混淆电路表进行查表运算,通过计算布尔电路的每个门得到整个电路的输出。最后,计算方再将计算结果的混淆形式 G ( F ( x ))发送给对应的委托方,委托方根据混淆电路将计算结果转换为实际的输出结果 y

混淆电路结构如图2-1所示,其中 X Y 为输入导线, Z 为输出导线。这三根导线分别对应两个值:0和1(即输入导线的输入值和输出导线的输出值)。例如,每当输入值 a b 被选中后,通过混淆电路的任务就是安全地计算 g ( a , b )的值。

图2-1 混淆电路结构

混淆电路表如表2-1所示,由表2-1可知,需要使用混淆电路表将       联系起来,即在混淆电路表中,  、,      作为加密秘钥,在合适的秘钥输入对下将   进行加密,从而形成混淆电路。其中,当给定两个输入秘钥   时,混淆电路表只有一行是可以正确解密的,即  ,这样可以有效保证输入信息的隐秘性。

表2-1 混淆电路表

随机化混淆电路方案主要利用了全同态加密的同态性质。该方案中,秘钥串 s ∈{0,1} l ,需要使用的公钥是基于素数阶群 q 的元素向量;明文串 x ∈{0,1} n ,其中 n =2 l ,密文也是基于素数阶群 q 的元素向量。利用全同态加密的同态性质,通过群 Z p 上的两个已知映射将0-1向量映射为同样长度的0-1向量。

将需要使用的混淆电路进行随机化处理,即在原有的布尔电路中,假设门电路 g 的第一根输入导线的两个标签为 A 0 A 1 ;门电路 g 的第二根输入导线的两个标签为 B 0 B 1 ;门电路 g 的输出导线的两个标签为 C 0 C 1 。为实现随机化混淆,将每根导线随机化选择比特置换。假设将门电路 g 的第一根输入导线的两个标签 A 0 A 1 进行比特置换,其比特置换为 θ θ ',新的输入导线标签为 θ ( A 0 )和 θ ( A 1 )。根据全同态加密的秘钥与明文的同态性质,随机选择 h , h '∈(0,1) l ,则密文  变换为  。继续选择随机数 β ∈{0,1} l ,则形成的密文对为  8kwA0I9vzF/cMEI/TxZUY2IXQMmjurMhJ4k1EuOkz7BW16987Z5heV+SxXDu0xkV

点击中间区域
呼出菜单
上一章
目录
下一章
×