了解零知识证明,阿里巴巴与强盗的故事
阿里巴巴知道打开藏着财宝的山洞的咒语。__强盗抓住他,
强盗:__说出咒语,否则杀死你。
阿里巴巴:__如果我说出咒语,就会因为没有利用价值而被杀死。
强盗:__如果你不向我证明你知道咒语,我也会杀你。
阿里巴巴想了一个好办法__
他对强盗说: “你们离我一箭之地,用弓箭指着我,你们举起右手我就念咒语打开石门,举起左手我就念咒语关上石门,如果我做不到或逃跑,你们就用弓箭射死我。这样我既不会因为透露了密码而丧生,也向你们证明了我知道咒语。
在这个例子中,阿里巴巴叫证明者,强盗叫验证者。证明者掌握着某个秘密,他想让验证者相信他掌握着秘密,但是又不想泄漏这个秘密给验证者。双方按照一个协议,通过一系列交互,最终验证者会得出一个明确的结论,证明者掌握或不掌握这个秘密。
现在我们在看零知识证明这个词语:
在这个例子中“知识“指咒语的内容,“证明”代表了阿里巴巴使强盗相信了自己知道咒语,而这个“不想泄露咒语给强盗“的想法,又被称为”零知识“性,在密码学和区块链的发展中大放异彩。
零知识证明是什么
相信通过上面的内容你已经有所感觉,对于传统的证明,我们可以把它写在纸上让所有人知道我们证明了这个命题;而零知识证明更像是验证,在两方对话中,只强调有限的时间有限的验证者能进行验证而不会被恶意的证明所欺骗,通常并不关心一个证明是怎么找到的。通过两方对话得到的零知识证明,通常被称为交互式零知识证明。
非交互式的零知识证明则不需要这种互动。但是会额外需要一些机器或者程序,并且需要一串试验序列,这个试验序列不能被任何人知道。有了这么一个程序和试验序列,证明机就能自动算出一个证明,并且能防止任何一方作假。非交互式的零知识证明整体流程没有任何交互,也就是说证明方可以扔出一大串乱码往你桌上一拍然后就走人,你之后再去验证这串乱码就可以验证他的证明。显然,在实际应用中,非交互式的零知识证明更有用。
零知识证明的革命性本质上体现在允许你安全地向他人进行证明,而验证者不会得到除命题外关于你的其他隐私信息。由此零知识证明得以在区块链乃至人类社会中扮演重要角色。
1 0 评论 0 股票
请登录喜欢,分享和评论!
Google Analytics