可公开验证的秘密安全

covert security:秘密安全,介于半诚实安全和恶意安全之间。秘密安全的威慑因子低,不足以大概率的制止想要作弊的参与者。因为诚实方在抓到有作弊者时,不能出具有说服力的证书来证明作弊者的作弊行为。使用零知识证明协议来证明作弊行为可能会泄露自己的秘密输入。

1.Signed Oblivious Transfer.可签名的不经意传输。Sender输入两个消息m0,m1以及用于签名的私钥sk,Receiver输入一个比特b。在协议的最后,Receiver收到消息mb和对mb的签名(mb,Sig_sk(b,mb)),Sender没有收到任何消息。

2.秘密安全在最初被提出来时有三个定义,这三个定义有层次结构,最高层的是strong explicit cheat formulation(强显示欺骗方程)

3.秘密安全中,恶意敌手可能存在的作弊行为

a.Constructing bad circuits:不根据双方商量好的函数构造混淆电路。那如何让Sender构造正确的混淆电路呢?

--->解决办法

Sender构造s个混淆电路,Receiver选择其中s-1个混淆电路进行检测,如果检测出恶意电路,则说明Sender作弊,否则继续执行协议。

---->问题

上述方法存在一个问题:当Receiver确定好检测哪些混淆电路时,Sender明白自己可能会被抓到作弊,于是提前终止协议。那如何防止Sender提前终止协议呢?

------>解决办法

采用1-out-of-s signed OT来得到Sender对混淆电路的签名。这些签名可以用于向第三方证明Sender作弊。

b.Selective failure attack on P2’s input values:Sender通过猜测Receiver的输入,来获取Receiver的输入。具体方法:Sender猜测Receiver的输入为g,并且设置k(1-g)=r,其中r是随机选择的数。如果Receiver的输入b=g话,则Receiver会得到正确的标签,如果b!=g的话,Receiver收到一个随机数r,Receiver就会发现Sender作弊,并终止协议。Sender根据Receiver的反应来判读自己的猜测是否正确,无论哪种情况,Sender都能够得到Receiver的正确输入。

----->解决办法

和问题a的解决办法类似,当Receiver想输入b时,它会先选择m-1个随机的比特,总共有m个输入,如果m-1个输入得到的结果没有问题,说明Sender没有作弊。Sender正确猜测m-1个输入的概率=(1/2)^(m-1),也是作弊成功的概率,因此Receiver成功抓到Sender作弊的概率为1-(1/2)^(m-1)

同样把OT换成signed OT,得到Sender对混淆电路的签名,防止Sender提前终止协议。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值