admin管理员组

文章数量:1530022

Zero-Knowledge Proof

  • 两种零知识证明
  • 交互零知识证明的性质
  • Schnorr proofs
  • 零知识证明的相关模型与定义
    • Commitment from DDH
    • Commitment from DL (PedersenCommitment )
  • Reference

什么是零知识证明?

涉及验证者和验证者的一种协议,使验证者能够使验证者相信某个语句是真的,而不透露任何其他信息。

换句话说,零知识证明就是向你证明我知道某件事的同时,不会向你暴漏这个事情的任何信息。

举一个经典的例子:
Finding Wally

这个人是 Wally


我们要在下面这张图上找到Wally


假设我已经找到Wally了,我要怎么向没找到Wally的你证明我找到了,同时我又不告诉你Wally具体在哪。

我要怎么做呢?

首先我要找一张比这个图大好几倍的黑布如果这张图有一张A4纸那么大,那么黑布可以有桌子那么大。

之后,我在这个黑布上挖一个洞,洞的大小要可以正好露出Wally。

然后,我要向你证明黑布后有且只有上面那张图。

最后,我将图以任意方向和角度放在黑布上,同时将Wally漏在黑布上的洞中。
这样我就可以既不像你暴漏Wally所在的任何信息,又能像你证明我找到了Wally。

是不是贼有趣?

本文标签: 密码学知识