当区块链遇到零知识证明

当区块链遇到零知识证明

什么是零知识证明

零知识证明的官方定义是能够在不向验证者任何有用的信息的情况下,使验证者相信某个论断是正确的。这个定义有点抽象,下面笔者举几个例子,来帮助读者理解这个概念

例子一:小明有钥匙

地主有一个漂亮的女儿,一直没有嫁出去,有一天地主捡到一把锁,他灵光闪现,何不让老天爷来决定我闺女嫁给谁,于是乎他就发布告示,如果有谁拥有这把锁的钥匙,他就把女儿嫁给他。

小明看到那把锁,心想这不是我前两天扔的那把锁吗?我有钥匙啊,但是他又不想把钥匙拿出来让大家看到,因为钥匙上有不可告人的秘密。于是他找到地主,说出了自己的苦衷,地主略微思考了一下,想到了一个好办法。

他让人搬了一个密封的大木箱,把自己的贴身玉佩放到了箱子里,然后用锁锁起来,说如果小明第二天把玉佩交给他,那小明就可以娶到他的女儿。

小明晚上偷偷用钥匙打开了箱子,然后把玉佩取出来,第二天交到了地主手中。然后和美女幸福的生活在了一起。

这个故事中小明并没有把钥匙给地主看,也没有当着地主把锁打开,但是却证明了自己确实有钥匙。

例子二:哥德巴赫猜想的证明

众所周知,哥德巴赫猜想是一个世界级别的数学难题,有一天一个中国大学生小明找到了证明哥德巴赫猜想的方法。但是他说我能证明出来,没人相信他,甚至没人愿意看他的证明过程,因为名气太小了。这时候他就想到可以让导师出面证明他已经找出了证明方法,但是他遇到了一个两难的问题:

如果他把证明方法给导师看,导师可能直接说这个证明方法是他发现的。

如果他不把证明方法给导师看,导师也不相信他能找到哥德巴赫猜想的证明方法。

实在是难坏了小明!!!!!!!!

零知识证明可以帮助小明解决他的难题,零知识证明的世界里,小明可以不把实际的证明过程给导师看,只需要提供给导师另外一段数据,导师拿到这段数据经过验证可以知道小明真的有哥德巴赫猜想的证明方法,但是导师并没有看到真正的证明过程。

比特币的困境

假如你对比特币有了解的话应该知道,比特币就是一个共有的账本,A转给B一笔钱就是在区块链上写一条记录“A转给B 10块钱”,A的10块钱从哪儿来呢?要求必须是以前某人C在区块链上写一条记录“C转给A 10块钱”。于是比特币的区块链上就是存放了一条一条的账本条目:

C转给A 10块钱

A转给B 10块钱

B转给D 5块钱

B转给E 5块钱

E转给D 5块钱

D转给A 10块钱

……

但是这样会带来一个问题,号称匿名的比特币系统却做不到真的匿名,因为账本是公开的,所以大家都能看到A,B,C,D,E都有多少钱,并且是在什么时间得到的这笔钱的。而所谓的匿名性其实是不存在的。

PS:比特币的匿名性其实是指一般无法把A对应到真正的交易人实体,A只是一个账户标号,而不是类似“小明”这样的实际个人。但是假如小明是A账户的拥有者,而小明最终有可能因为操作账户A兑换了人民币或者购买什么东西,而被发现其实A就是小明。所以这个匿名性并不是真正的匿名性。

ZCASH怎么结合零知识证明到区块链

为了解决比特币的非匿名问题,零知识证明被ZCASH引入到比特币系统中。那么它是怎么实现匿名性的呢?且看娓娓道来。

假设有一个大池子,里面有一大堆的箱子,每一个箱子都被锁住并且只有一把钥匙可以打开,而且箱子中都有一张纸条,内容格式如下:

“这个箱子值x块钱”

我们暂且叫这个大池子为“大池子账本”。

ZCASH整个交易系统就是这样一个大池子,当A要转给B 10块钱的时候,A会填写一张字条:“这个箱子值10块钱”,然后把这个字条放到一个箱子里,锁上,把箱子和箱子对应的钥匙一起给了B,B拿到箱子和钥匙,用钥匙打开了箱子一看字条的内容是,“这个箱子值10块钱”B就知道他确实得到了10块钱,然后把箱子扔到大池子里,而钥匙他保留了下来,这样B就相当于在“大池子账本”里记录了他拥有了10块钱这个事实。

因为B有钥匙,所以他能知道自己有多少钱,并且在适当的时候花掉这笔钱,但是别人(除了A)只能看到箱子,看不到纸条的内容,并不知道箱子值多少钱,并且也不知道箱子到底属于谁(B有钥匙这件事儿他们不知道)。也就是ZCASH这个“大池子账本”系统,做到了隐藏两个比特币系统不能隐藏的事实:

1、 交易的参与者是谁

2、 交易的金额是多少

如果你想从系统中找出B有多少钱的信息,因为你打不开箱子,甚至都不知道哪些箱子是B的,所以你会一无所获

聪明的读者可能会发现这个系统有一个关键的问题没有解决,A凭啥就可以做一个箱子并且说这个箱子值10块钱?B和别的参与者凭啥相信B这个箱子真的值10块钱,这里就要靠零知识证明的强大力量了。

其实大池子中有一个箱子a是属于A的,A拥有这个箱子的钥匙akey,并且箱子里面的纸条上写着:“这个箱子值10块钱”。当A创建箱子b和对应的钥匙bkey的时候也会创建一个零知识证明的凭条akill,这个凭条的作用就是作废掉箱子a。

这个零知识凭条akill的神器功能就是:

1、所有参与者看到这个akill凭条就知道它对应到大池子里的一个箱子

2、所有参与者看到akill就知道它又生成了一个箱子b,并且箱子的纸条是合法的

3、除了A之外的所有参与者并不知道akill对应的就是a这个箱子

4、akey和akill是一一对应的关系

有点绕,简单来说,就是A在不提供钥匙akey只提供零知识证明凭条akill的情况下证明两件事

1、 自己拥有一把可以打开大池子中某个箱子的钥匙

2、 证明箱子b是合法的

这样就简单了,A把箱子b给B的时候,先把akill扔到了大池子里,让大家看,B看到了akill被放到了大池子里,他就相信b箱子是合法的,他确实值10块钱。

余下最后一个问题?如果A每次都说自己拥有打开某个箱子的钥匙,一笔钱被花了很多次怎么办?

akill和akey是一一对应的,并且akill被放到大池子里了,所有参与者都能看见,如果下次他又想给C一个箱子c并且用akill来证明,因为C看到akill已经在大池子里了,所以C就不相信A了。

PS:这里可能部分人会疑惑另外一个问题,当A扔akill到大池子里,或者B扔箱子到大池子里的时候他们的身份不就暴漏了吗?

这里可以认为他们是偷偷扔的,具体对应到网络上的实现就是B随便找了一台网络设备把箱子b对应的数据上传到区块链上。而想通过这台设备找到B很难,并且B也可以托C上传箱子b的数据。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 198,932评论 5 466
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,554评论 2 375
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 145,894评论 0 328
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,442评论 1 268
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,347评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 47,899评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,325评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,980评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,196评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,163评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,085评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,826评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,389评论 3 302
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,501评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,753评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,171评论 2 344
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,616评论 2 339

推荐阅读更多精彩内容

  • 专业考题类型管理运行工作负责人一般作业考题内容选项A选项B选项C选项D选项E选项F正确答案 变电单选GYSZ本规程...
    小白兔去钓鱼阅读 8,963评论 0 13
  • 转载声明:本文来自微信公众号:火龙果园长,仅供学习交流,禁止用于商业用途,转载需关注公众号取得文章作者同意。 写在...
    火龙果园长阅读 3,878评论 2 6
  • 零知识证明:从小白到明白 如今,知识快餐业发达,区块链这么火的领域自然不会落下。经过一轮轮扫盲,共识、工作量证明、...
    逐舞传歌阅读 37,473评论 67 68
  • 沙糖橘小姐从未想过会遇见一个如山间清风,海中明月的人 直到西柚先生的出现,第一次体会到相见恨晚。多希望时间可以就比...
    北杳s阅读 405评论 0 1
  • 关注互联网,关注硅谷堂。想了解更多关于互联网岗位知识的信息,关注微信公众号:硅谷堂(ID:guigutang)或下...
    硅谷堂阅读 206评论 0 1