浅显易懂-区块链之零知识证明

零知识证明-(Zero—Knowledge Proof)

从字面去翻译一下这个词:不提供任何相关的信息来达到证明的目的。

当然,这是我在查了一定量的资料之后得出的理解,当我第一次看到这个词的时候,在我脑海里只知道它是一种证明,是一种方法论。

官方(度娘)解释为:指的是证明能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。

在区块链可解释为:指证明者能够在不向验证者提供信息本身的内容的情况下,使验证者相信某个论断是真实可信的一种技术。

这里为了大家更好的理解,引用一个童话故事《阿里巴巴与四十大盗》:

阿里巴巴知道打开藏着财宝的山洞的咒语。强盗抓住他,让他说出咒语。

如果阿里巴巴说出咒语,就会因为没有利用价值而被杀死。

如果阿里巴巴坚持不说,强盗不会相信他真的掌握咒语,也会杀死他。

但阿里巴巴想了一个好办法,他对强盗说:“你们离我一箭之地,用弓箭指着我,

你们举起右手我就念咒语打开石门,举起左手我就念咒语关上石门,

如果我做不到或逃跑,你们就用弓箭射死我。”

这个故事很好的说明了零知识证明的概念,即阿里巴巴在不向强盗泄露咒语的前提下,证明了自己是知道咒语的。也可以理解在

没有提供任何和咒语相关的信息的前提下,向强盗证明了我是知道咒语的。从而保全了自己的性命(很机智是不是)。

零知识证明可以在不泄露信息本身内容的情况下,证明我知道这个秘密,可以有效解决许多验证问题。

所以,零知识证明这个特性在区块链中的运用,就能很好提高交易的匿名性(零知识证明运用代表Zcash,大家可以自己查查)。

我们知道区块链本身的其中一个特性就是匿名交易。但匿名性也分层次(基本、高级、极致),像比特币就是最基本的,在区块链

网络上只能查到转账记录,但是不知道地址背后是谁,但是一旦知道这个地址背后对应的是谁,就能查到其所以相关的转账记录及

资产。而Zcash就将匿名性做到了极致,只有拥有私钥的人才能查到所以的转账信息。


初学区块链,很多东西也是慢慢摸索,之所以写下这些基本概念一方面作为自己学习的整理,另一方面也希望更多交流学习的机会。

如有兴趣可以直接关注公众号或者加笔者微信。










發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章