MPC系列--信息论安全的混淆电路

Kolesnikov的门估值秘密共享方案(Gate Evaluation Secret Sharing,GESS)是高效的信息论安全的乱码电路方案。 

在GESS方案中,每条导线的输入都是子秘密,子秘密由秘密共享方案产生,所有的输出是秘密分享方案中将要被分享的秘密。

首先GESS生成两个随机数𝑟0, 𝑟1,让𝑤10对应的加密值为𝑟0,让𝑤11对应的加密值为𝑟1。当导线𝑤1输入为0时,对应于𝑤10,导线𝑤2也有两种输入的可能,分别为0和1,对应两个导线𝑤3的输出。同理如果确定了导线𝑤2的输入如为𝑤20,根据导线𝑤1的不同输入0和1,也只会有两种输出可能𝑠00和𝑠10(注意这里𝑠00和𝑠01只代表输出可能,实际根据具体的门𝐺,𝑠00和𝑠01的具体值可能相 等也可能不等)。

因为电路计算时𝑤1对应的是加密值𝑟0和𝑟1,为了标识出解密𝑤2的加密值时需要使用的是哪个部分,需要对𝑟0和𝑟1附加一个指针比特𝑏,用来告知重构各个 子秘密的参与者使用𝑤2的哪一部分进行解密,可以实现约定当指针比特𝑏=0时,使用𝑤2的左半部分,当𝑏=1时,使用𝑤2的右半部分。

为了掩盖各个数据块的顺序,再产生一个随机的翻转比特𝑟,用于打乱数据块的顺序。如当𝑟=0时,保持原来顺序,当𝑟=1时,将一二两行和三四两行进行对调。

对于GESS方案来说,导线𝑤2的输入长度是𝑤1长度的两倍,当电路深度增加时,导线的输入会越来越长。为了降低输入长度,可以根据OR门和AND门的特性进行优化。先观察与门的真值表,如下图所示:可以看到与门的输出导线𝑤3的结果中有三个相同,即𝑠00=𝑠01=𝑠10。

因此导线𝑤2对应的加密值有多行的值相同,统一用𝑠00代替,可以得到:

可以看到当导线𝑤2的输入的左侧都相等,因此𝑤2的输入左侧只需要一𝑟0⨁𝑠00即可,以此来降低数据量。同理,对于或门也可以进行类似的替代,以降低数据量。OR门的真值表如下图所示: 统一使用𝑠01进行代替,可得:

可以看到当导线𝑤2的输入右侧部分只需要一组𝑟1⨁𝑠01,可以直接使用一组𝑟1⨁𝑠01来作为导线𝑤2的右侧输入,以此来降低数据量。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值