百科问答小站 logo
百科问答小站 font logo



姚期智院士有哪些学术贡献? 第1页

  

user avatar   wdwind 网友的相关建议: 
      

Yao's Millionaires' Problem 是一个有趣但复杂的问题,其描述如下:两个富翁如何能够在不暴露具体资产的情况下,比比谁更壕呢?

类似场景还有:公司同事想在不暴露具体工资的情况下看看谁挣得更多;闺蜜们想在不暴露体重的情况下比比谁更瘦;基友们想在不暴露具体数据的情况下比比谁更长。。。凡此种种,都属于 Yao's Millionaires' Problem。

形式化一下这个问题:爱丽丝为,鲍勃为,谁更大?即,是否有?


==============

我们先看一下问题的简化版:不比较的相对大小,只看二者是否相等,即是否有?

对于简化版问题,Twisted Oak 给出了一个非常直观的理解。

假设且,鲍勃首先需要准备4个密码箱并打上标记:

之后鲍勃丢弃掉除标有的箱子之外的所有钥匙(因为对于鲍勃,)。

之后鲍勃把所有箱子给爱丽丝,由于,爱丽丝向标有的箱子内投入纸条YES,向其他箱子投入纸条NO,并将箱子返还给鲍勃。

这时鲍勃用自己仅有的一把钥匙打开标有的箱子,显然里面的纸条是NO,则此时鲍勃知道了,同时不清楚的具体数值。

注意这只是一个非常直观的解释,可以帮助人理解算法的大体流程和原理,实际的细节要复杂很多。比如“密码箱”其实代表着非对称加密算法,而上文加粗的一句话“鲍勃丢弃钥匙”更代表着算法的核心思想:如何让鲍勃只能打开一个箱子(Oblivious Transfer)?


==============

回到原始问题,爱丽丝为,鲍勃为,是否有?

让我们仍旧假设且,相对于简化版问题,算法会复杂一些。基本思想如下:

首先鲍勃生成一个随机数,这里不妨令,鲍勃将 (即)发给爱丽丝。

由于,因此爱丽丝并不知道和的具体数值,他需要做的是,对每个,令 ,并将所有发回给鲍勃。显然,在本例下,。

鲍勃这时只需要查看返回数组中的第2个数,如果,则说明,反之有。


很明显上面的原理是 naive 的,仍旧会暴露的具体数值,这是由于实数域的有序性和加减的可逆性。Yao 转换数域并用加密算法包装了上面 naive 的过程,避免了多余信息的暴露。具体如下:

  1. 鲍勃生成一个-bit 随机数,并令,其中为非对称加密算法中的一个密钥。
  2. 鲍勃将发送给爱丽丝。
  3. 爱丽丝生成一组数,其中,其中为里的第个数,为非对称加密算法中的另一个密钥。
  4. 爱丽丝生成一组数,其中,而为一个-bit 的质数来保证中数值至少相差。
  5. 爱丽丝生成一组数,其中 。
  6. 爱丽丝将发回给鲍勃。
  7. 鲍勃计算,并将其与比较,如果,则显然,反之有。




聪明的知友们,现在理解 Yao's Millionaires' Problem 了吗?




  

相关话题

  姚期智院士有哪些学术贡献? 
  如何看待北大涂传诒院士等人质疑「九章」:不是量子计算机、没有实现「量子霸权」?应该如何正确认识? 
  姚期智院士有哪些学术贡献? 
  什么是函数式编程思维? 
  量子计算的商业应用前景如何?目前有哪些大公司在做相关的技术开发和布局? 
  皮尔逊系数为什么要中心化?中心化之后有什么好处? 
  姚期智院士有哪些学术贡献? 
  潘建伟团队成功研制 62 比特可编程超导量子计算原型机「祖冲之号」,实现了哪些突破?有怎样的潜在应用? 
  图灵奖得主称中国高校过于看重国际声望,应更关注本科教学质量,本科教育应朝着什么方向努力? 
  日立的「CMOS 退火」技术是怎样的一种技术?利用该技术的半导体计算机是否能够替代量子计算机? 

前一个讨论
突然想到一个问题:0.9999999… 真的等于 1 吗?
下一个讨论
怎么证明这个积分不等式?





© 2024-11-22 - tinynew.org. All Rights Reserved.
© 2024-11-22 - tinynew.org. 保留所有权利