- 主题:一个面试题
这是考 zero-knowledge proof 的概念?
alice 生成 random string s
和手上的数字n拼接
做 MD5(s+n)
把s发给 bob,要求bob也做 MD5(s+n),然后把最后一bit发给 alice
alice 和自己手上的结果比较
以上动作重复N次
如果有至少一次回答错误则肯定不相等
如果全对那么bob手上的数字以几率 1-2^N 和 alice 手上的数字相等
【 在 iwannabe (I wanna be) 的大作中提到: 】
: alice/bob 各有一个0-9的数字,他们能互相传递消息,问如何让对方在不知道自己数字
: 的情况下判断两人持有的数字是否相等。
: 没有第三方参与
: ...................
--
FROM 121.207.203.*
10-x跟直接给x有啥区别?
【 在 foliver (Oliver) 的大作中提到: 】
: 仅仅就这个题目而言,和之前说的10-x有啥区别?
: --来自微水木3.5.11
--
FROM 121.207.203.*
确实
主要是这题解空间太小了
多问几次拼出来的可能性就很大
【 在 moudy (moudy) 的大作中提到: 】
: 这个可以将每次s和0-9的hash后的bit比较,有概率猜出bob每次用的哪个数啊
--
FROM 211.97.123.*
DH最终双方手上的结果非a也非b
怎么用来做题目里的判断?
【 在 vale (浅谷 - mind over mountain) 的大作中提到: 】
: 非对称密码学里最基本的知识,DH密钥交换
--
FROM 121.207.203.*
这才是DH第一步,这就能说是DH了吗……
这也是套个单向函数再发,问题就跟用所有其他单向函数一样
1. mod n 一样不一定原数一样
2. 如果你用的 c n 不会有冲突问题那么人家0-9爆破一遍就知道你俩都是几了
【 在 zli07 (Anonymous) 的大作中提到: 】
: 只需要看双方混淆出来的结果是否相等就可以了啊
: alice和bob分别有两个质数a,b,它们分别把c^a mod n, c^b mod n发送给对方。
: 这样如果a,b相等的话,它们可以看到发送给对方的数字跟自己计算出来的一样。
--
FROM 121.207.203.*