不是技術(shù)人才也能看懂零知識(shí)證明

本文由幣乎(bihu.com)優(yōu)質(zhì)內(nèi)容計(jì)劃支持

交易過(guò)程完全匿名是數(shù)字貨幣ZCash最大的亮點(diǎn),正是這一點(diǎn)使得ZCash自提出以來(lái)便備受關(guān)注。ZCash匿名交易的實(shí)現(xiàn)依賴(lài)于一種叫做“零知識(shí)證明”的密碼學(xué)手段。本文將通過(guò)打比方的手法岸夯,用通俗的語(yǔ)言,解釋清楚ZCash的交易原理,以及零知識(shí)證明是如何運(yùn)用到ZCash交易過(guò)程中的昧诱。

一、從比特幣說(shuō)起

為了有助于理解所袁,我們不妨先分析比特幣盏档,作為鋪墊。

我們先來(lái)打個(gè)比方說(shuō)明比特幣的轉(zhuǎn)賬原理燥爷。

這和日常生活中的銀行轉(zhuǎn)賬是一個(gè)道理蜈亩。通過(guò)銀行轉(zhuǎn)賬,我們?cè)诮灰讜r(shí)不必對(duì)實(shí)物貨幣進(jìn)行轉(zhuǎn)移前翎,而是以銀行記賬的方式稚配,實(shí)現(xiàn)“資產(chǎn)所有權(quán)”的轉(zhuǎn)移。比特幣交易的過(guò)程實(shí)質(zhì)上就是一個(gè)“資產(chǎn)所有權(quán)”的轉(zhuǎn)移過(guò)程港华,轉(zhuǎn)入比特幣的那一方“新建”一份資產(chǎn)所有權(quán)道川,而轉(zhuǎn)出方需要“銷(xiāo)毀”原先的資產(chǎn)所有權(quán),被銷(xiāo)毀的那張“支票”永遠(yuǎn)不會(huì)再出現(xiàn)立宜。

二冒萄、ZCash的轉(zhuǎn)賬原理

與比特幣一樣,ZCash的交易過(guò)程也是 “資產(chǎn)所有權(quán)”的轉(zhuǎn)移赘理。

演示場(chǎng)景:Alice轉(zhuǎn)1個(gè)ZEC給Bob宦言。

轉(zhuǎn)賬前,Alice創(chuàng)建一張面額為1個(gè)ZEC的“支票”商模,

1.Alice確實(shí)擁有1個(gè)ZEC奠旺。

2.Alice使用私鑰對(duì)這張支票簽名,證明Alice擁有對(duì)這筆資產(chǎn)轉(zhuǎn)賬的權(quán)力施流。

3.這張“憑證”上多了一串隨機(jī)數(shù)响疚,用符號(hào) r 表示。這串隨機(jī)數(shù)的作用好比 “支票代號(hào)”瞪醋,用來(lái)唯一識(shí)別該支票忿晕。A的“支票代號(hào)”為r1。

明確以上信息银受,Alice就可以進(jìn)行ZEC轉(zhuǎn)賬了践盼。

第一步:比特幣一樣鸦采,要先為B新建一張“支票”。Bob的支票代號(hào)(r2)與Alice的支

票代號(hào)(r1)不相同咕幻,

第二步:新的“資產(chǎn)所有權(quán)”生成的同時(shí)渔伯,必須要想辦法銷(xiāo)毀原來(lái)的“資產(chǎn)所有權(quán)”。即必須想辦法讓A手中的“支票”失效肄程。與比特幣簡(jiǎn)單粗暴的“直接撕毀”不同锣吼,ZCash采用“備注作廢”的手段,達(dá)到同樣的效果蓝厌。怎么理解呢玄叠?就是在不對(duì)原先“支票”作任何處理的前提下,新建一個(gè)作廢文件列表拓提,錄入需要作廢的“發(fā)票代號(hào)”读恃。

原先的A持有的支票仍舊存在,并沒(méi)有消失崎苗,只是這張支票已經(jīng)被記入“作廢列表”狐粱。在確定資產(chǎn)所有權(quán)時(shí)要同時(shí)讀取兩個(gè)列表的信息,能確定Bob擁有資產(chǎn)所有權(quán)的判斷方法是:作廢列表中不存在Bob所持“支票”的代號(hào)胆数。

可是為什么要這樣設(shè)計(jì)呢肌蜻?其實(shí)這樣設(shè)計(jì)的目的是為了在交易過(guò)程中運(yùn)用 “零知識(shí)證明”。

三必尼、零知識(shí)證明

什么是零知識(shí)證明蒋搜?

零知識(shí)證明 (被稱(chēng)為“zk-SNARK”)是實(shí)現(xiàn)Zcash的匿名特性的核心技術(shù)∨欣颍“零知識(shí)證明”的定義是:證明者能夠在不向驗(yàn)證者提供任何有用的信息的情況下豆挽,使驗(yàn)證者相信某個(gè)論斷是正確的。舉個(gè)簡(jiǎn)單的例子:

A要向B證明自己擁有某個(gè)房間的鑰匙券盅,假設(shè)該房間只能用鑰匙打開(kāi)鎖帮哈,而其他任何方

法都打不開(kāi)。這時(shí)有2個(gè)方法:

(一)A把鑰匙出示給B锰镀,B用這把鑰匙打開(kāi)該房間的鎖娘侍,從而證明A擁有該房間的正確的鑰匙。

(二)B確定該房間內(nèi)有某一物體泳炉,A用自己擁有的鑰匙打開(kāi)該房間的門(mén)憾筏,然后把物體拿出來(lái)出示給B,從而證明自己確實(shí)擁有該房間的鑰匙?花鹅。

后面這個(gè)方法屬于零知識(shí)證明氧腰。好處在于在整個(gè)證明的過(guò)程中,B始終不能看到鑰匙的樣子,從而避免了鑰匙的泄露古拴。

那么零知識(shí)證明怎么運(yùn)用到ZCash交易過(guò)程中呢箩帚?我們?cè)倩仡櫛忍貛藕蚙Cash的例子。

A要向B轉(zhuǎn)一個(gè)單位的數(shù)字貨幣(BTC/ZEC)斤富,即A要向B轉(zhuǎn)移一個(gè)單位的資產(chǎn)所有權(quán)膏潮。這時(shí)有以下兩個(gè)方法:

(一)比特幣中的做法:A擁有一張1BTC的支票锻狗,要轉(zhuǎn)賬給B時(shí)满力,先給B新建一張1BTC的支票,同時(shí)當(dāng)著B(niǎo)的面將自己原先的支票撕毀轻纪。

(二)ZCash中的做法:A擁有一張1ZEC的支票油额,要轉(zhuǎn)賬給Bb時(shí),先給B新建一張1ZEC的支票刻帚,然后在一張約定有效的作廢列表中潦嘶,記錄下A的發(fā)票的代號(hào),證明A的支票已經(jīng)失效崇众。

ZCash的方法屬于零知識(shí)證明掂僵。整個(gè)交易過(guò)程中,B并沒(méi)有見(jiàn)過(guò)A的支票顷歌,但是還是實(shí)現(xiàn)了資產(chǎn)所有權(quán)的轉(zhuǎn)移锰蓬。在ZCash的整個(gè)交易系統(tǒng)中,A和B的交易還有其他見(jiàn)證者眯漩,即負(fù)責(zé)記錄交易信息的礦工芹扭。同樣道理,礦工也不必看到Al的支票赦抖,只要能確定代號(hào)為r1的支票已經(jīng)作廢了就行舱卡。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市队萤,隨后出現(xiàn)的幾起案子轮锥,更是在濱河造成了極大的恐慌,老刑警劉巖要尔,帶你破解...
    沈念sama閱讀 217,826評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件舍杜,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡盈电,警方通過(guò)查閱死者的電腦和手機(jī)蝴簇,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)匆帚,“玉大人熬词,你說(shuō)我怎么就攤上這事。” “怎么了互拾?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,234評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵歪今,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我颜矿,道長(zhǎng)寄猩,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,562評(píng)論 1 293
  • 正文 為了忘掉前任骑疆,我火速辦了婚禮田篇,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘箍铭。我一直安慰自己泊柬,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,611評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布诈火。 她就那樣靜靜地躺著兽赁,像睡著了一般。 火紅的嫁衣襯著肌膚如雪冷守。 梳的紋絲不亂的頭發(fā)上刀崖,一...
    開(kāi)封第一講書(shū)人閱讀 51,482評(píng)論 1 302
  • 那天,我揣著相機(jī)與錄音拍摇,去河邊找鬼亮钦。 笑死,一個(gè)胖子當(dāng)著我的面吹牛授翻,可吹牛的內(nèi)容都是我干的或悲。 我是一名探鬼主播,決...
    沈念sama閱讀 40,271評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼堪唐,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼巡语!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起淮菠,我...
    開(kāi)封第一講書(shū)人閱讀 39,166評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤男公,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后合陵,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體枢赔,經(jīng)...
    沈念sama閱讀 45,608評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,814評(píng)論 3 336
  • 正文 我和宋清朗相戀三年拥知,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了踏拜。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,926評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡低剔,死狀恐怖速梗,靈堂內(nèi)的尸體忽然破棺而出肮塞,到底是詐尸還是另有隱情,我是刑警寧澤姻锁,帶...
    沈念sama閱讀 35,644評(píng)論 5 346
  • 正文 年R本政府宣布枕赵,位于F島的核電站,受9級(jí)特大地震影響位隶,放射性物質(zhì)發(fā)生泄漏拷窜。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,249評(píng)論 3 329
  • 文/蒙蒙 一涧黄、第九天 我趴在偏房一處隱蔽的房頂上張望篮昧。 院中可真熱鬧,春花似錦弓熏、人聲如沸恋谭。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,866評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至狈孔,卻和暖如春信认,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背均抽。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,991評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工嫁赏, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人油挥。 一個(gè)月前我還...
    沈念sama閱讀 48,063評(píng)論 3 370
  • 正文 我出身青樓潦蝇,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親深寥。 傳聞我的和親對(duì)象是個(gè)殘疾皇子攘乒,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,871評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • 一、快速術(shù)語(yǔ)檢索 比特幣地址:(例如:1DSrfJdB2AnWaFNgSbv3MZC2m74996JafV)由一串...
    不如假如閱讀 15,950評(píng)論 4 87
  • 以太坊白皮書(shū)地址:https://github.com/ethereum/wiki/wiki/White-Pape...
    rectinajh閱讀 17,823評(píng)論 0 46
  • 九月武鲁,夏風(fēng)在慢慢的歸隱爽雄,秋風(fēng)徐徐的來(lái)。九月沐鼠,一場(chǎng)掙扎挚瘟,一場(chǎng) 夢(mèng)蝇率,一次遇見(jiàn)! 到達(dá)烏鎮(zhèn)是個(gè)晚上刽沾,妹妹...
    你不知道的你閱讀 329評(píng)論 0 0
  • 第一章 紅本慕,紅,紅侧漓。在黃昏塞滿(mǎn)整個(gè)書(shū)房的時(shí)候锅尘,整個(gè)書(shū)房都是紅的,紅的空氣布蔗,紅的水藤违,連那個(gè)叫紅的女人,也變紅了纵揍,紅從...
    BABYMOON閱讀 393評(píng)論 0 0
  • 今天是財(cái)神節(jié)顿乒,在我們這地方是很隆重的一個(gè)節(jié)日,尤其是那些大企業(yè)泽谨,是很注重這個(gè)的璧榄。啤酒廠北面有個(gè)很大的電力...
    夏俊智爸爸閱讀 267評(píng)論 0 2