區塊鏈零知識證明基礎

發表於 2023-01-11 17:22 作者: 知道創宇區塊鏈安全實驗室

前言

如何在不說出祕密的情況下,讓對方知道你已經知道了這個祕密?——隱私保護

隨着信息資本主義的興起,人們更加注重隱私安全和數據的所有權。快速發展的web3.0切實的保證了參與者的隱私安全,讓人們對互聯網有了信心,在隱私保護的種種手段中,零知識證明另闢蹊徑。

本期就帶大家一起探討一下零知識證明是如何爲區塊鏈保駕護航的。

什么是零知識證明

零知識技術是密碼學的一個分支,可以讓用戶在不透露信息的前提證明自己擁有的信息。證明者利用系統輸入的信息創建證明,而驗證者在無法得知具體內容的前提下,驗證該證明的結果。

在區塊鏈網絡中,用戶需要將交易明文廣播給所有礦工,由他們來校驗交易合法性,但有些時候基於隱私問題,又不想把交易的具體內容公布出來。而零知識技術就可以讓开發者在利用以太坊等底層區塊鏈安全性,提高DApp交易吞吐量和速度的同時,保護用戶隱私。

零知識證明的性質與過程

區塊鏈中的交易,要判斷該交易的合法性,只需要證明:

  • 發送的錢屬於發送交易人;

  • 發送者的發送金額等於接收者的接收金額;

  • 發送者的錢被銷毀了;

可以看到整個證明過程中,礦工並不需要關心這筆交易具體花掉多少,發送者是誰,接收者是誰,只需要保證交易過程中錢是守恆的。

根據上述過程,可以看出零知識證明的性質:

  • 完備性。證明方和驗證方都是誠實的,並遵循證明過程的每一步進行正確計算,那么這個證明一定是成功的,驗證方一定能夠接受證明方;

  • 合理性。沒人能假冒證明方,使這個證明成功;

  • 零知識性。證明過程執行完之後,驗證方只獲得了“證明方擁有這個知識”這條信息,而沒有獲得關於這個知識本身的任何信息;

在交易驗證的時候,證明者會根據系統要求的一些必要的驗證內容,作爲問題的範圍,而驗證者對證明者進行多輪交互,等待證明者的回應。

一旦需要交互,就要求過程中雙方都在线,這也會帶來很大不便,最好有一種非交互式的證明方式,只要證明者給出了證明,後續就不再需要交互,任何人都可以驗證這個證明是否正確。但是這明顯跟我們一开始說的不能完全由證明者給出矛盾。

這個問題的一種解決方案就是 “ Common Reference String”。證明者給出的證明雖然不像 “cut and choose” 策略一樣,由驗證者挑選問題來決定。但也不是完全由證明者自己來決定,而是根據事先定好的一個種子產生的隨機序列決定,相當於有一個中立的第三方來出題目,同樣也能達到效果。就像分粥的例子,一個人先分,但不是另外一個人先挑,而是中立第三方產生一個隨機數來決定誰拿哪碗粥。

不過上述這項方案(Zk-SNARKs)有一個技術痛點,它的算法依賴於初始的公共參數作爲信任設置。這個公共參數是隨機數,可如果一旦泄露,擁有原始隨機數的人可以隨意僞造證明,從而使得零知識證明的正確性蕩然無存。

零知識證明方案與Optimistic Rollup

Optimistic Rollup是目前主流的擴容方案,零知識擴容方案和Optimistic Rollup區別主要有2點:

  • 交易驗證的方式不同。Optimistic Rollup採用欺詐證明,只有在Layer 1區塊鏈上裁決狀態變更糾紛時才需要生成欺詐證明;而零知識技術方案是在每一批交易打包,上傳鏈上時都會發布有效性證明。也就是說採用零知識證明的協議永遠都是有效的狀態,而代價則是要花更多的gas費在底層區塊鏈上驗證有效性證明。

  • 資金效率。在Optimistic Rollup中,交易終局和取款的標准時間窗口是一周;而在零知識技術方案中,用戶可以在約10分鐘內取款。

零知識證明的代幣

Zerocash是第一個利用零知識證明zk-SNARK實現了強匿名性的數字貨幣。不僅實現了對發送方和接收方地址的隱藏,還實現了交易金額的隱藏,僅交易的雙發對交易可鏈接和交易的金額,而其他區塊鏈節點查看到的數據只能驗證交易的有效性和金額的正確性,不能得到交易雙方和交易金額等其他信息,實現了高等級的強隱私保護。

Zerocash的交易分爲兩種,鑄幣(Mint)和轉账交易(Pour)。

Zerocash的鑄幣交易過程:用戶想把價值爲v的比特幣轉換爲Zerocash代幣,用戶首先生成3個隨機數r,s,ρ,然後通過承諾計算cm和sn,其中cm記錄幣的生成,sn記錄幣的消費。幣消費後會記錄在sn列表中,其中cm和sn的生成如圖所示:

一個Zerocash其實是一個向量 (apk,v,r,s, ρ,cm,sn),其中v是ZEC的面值cm記錄ZEC的生成,而sn表示ZEC的消費記錄。如果sn已經出現在列表中就表示此幣已經消費,以防止雙花。在鑄幣階段用戶只公布了自己的cm和v,其他信息只有用戶自己知道。

總結

將零知識證明與底層區塊鏈以及去中心化的預言機網絡相結合,勢必推動區塊鏈行業轉型。項目團隊將开發出可擴展性強,成本效益高且能保障用戶隱私的應用。雖然目前其他的Layer 2解決方案可能會爲某些應用提供更好的基礎架構,但隨着行業不斷發展,零知識證明方案必將獲得更多個人用戶和企業的青睞。

標題:區塊鏈零知識證明基礎

地址:https://www.coinsdeep.com/article/8034.html

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。

你可能還喜歡
熱門資訊