雖然固有的透明度 區塊鏈 在許多情況下提供了優勢,也有一些 智能合約用例 由於各種業務或法律原因而需要隱私的,例如使用專有數據作為輸入來觸發智能合約的執行。在公共區塊鍊網絡上實現隱私的一種越來越普遍的方式是通過 零知識證明(ZKP)——一種方法,一方通過密碼向另一方證明他們擁有關於一條信息的知識,而無需透露實際的底層信息。在區塊鍊網絡的背景下,ZKP 在鏈上揭示的唯一信息是某些隱藏信息是有效的,並且被證明者以高度確定性知道。
在本文中,我們探討了零知識證明如何提供隱私保證、它們為用戶提供的核心優勢以及一系列利用ZKP 的區塊鏈用例。此外,我們展示了Chainlink 如何 德科 技術允許創建保護隱私的預言機網絡,該網絡可以以保密和向後兼容的方式證明數據來自特定的Web 服務器。
零知識證明的工作原理
零知識證明最初是在1985 年來自Shafi Goldwasser 和Silvio Micali 的麻省理工學院論文中描述的,該論文稱為“交互式證明系統的知識複雜性”。 在這篇論文中,作者證明了一個 證明者 說服一個 驗證者 關於數據點的特定陳述是真實的,而無需披露有關數據的任何附加信息。 ZKP 可以是交互式的——證明者說服特定的驗證者,但需要為每個單獨的驗證者重複這個過程——或者非交互式——證明者生成一個證明,任何人都可以使用相同的證明進行驗證。此外,現在有各種ZKP 實現,包括zk-SNARKS、zk-STARKS、PLONK 和Bulletproofs,每種實現都有自己的證明大小、證明者時間、驗證時間等權衡。
定義ZKP 的三個基本特徵包括:
- 完整性: 如果一個陳述是真的,那麼誠實的驗證者可以說服誠實的驗證者他們擁有關於正確輸入的知識。
- 穩健性: 如果一個陳述是錯誤的,那麼任何不誠實的證明者都不能單方面說服誠實的驗證者他們擁有關於正確輸入的知識。
- 零知識: 如果狀態為真,則驗證者除了陳述為真外,不會從證明者那裡學到更多。
從高層次上講,ZKP 的創建涉及驗證者要求證明者執行一系列動作,這些動作只有在證明者知道底層信息的情況下才能準確執行。如果證明者只是猜測這些行為的結果,那麼他們最終會以很高的概率被驗證者的測試證明是錯誤的。
直觀地理解零知識證明數據的一個概念示例是想像一個洞穴,它有一個入口,但有兩條路徑(路徑A 和B),它們連接在一個被密碼鎖定的公共門上。愛麗絲想向鮑勃證明她知道門的密碼,但又不想向鮑勃透露密碼。為此,Bob 站在洞穴外,Alice 沿著兩條路徑之一走入洞穴(Bob 不知道選擇了哪條路徑)。然後鮑勃讓愛麗絲從兩條路徑中的一條返回洞穴入口(隨機選擇)。如果愛麗絲最初選擇走路徑A 到門,但鮑勃要求她走路徑B 回來,完成這個謎題的唯一方法是愛麗絲知道鎖著的門的密碼。這個過程可以重複多次,以證明愛麗絲知道門的密碼,並且沒有以很高的概率最初選擇正確的路徑。
在此過程完成後,Bob 非常確信Alice 知道門的密碼,而不會向Bob 透露密碼。雖然只是一個概念示例,但ZKP 部署了相同的策略,但使用密碼學來證明有關數據點的知識,而不會洩露數據點。在這個洞穴示例中,有一個輸入、一條路徑和一個輸出。在計算中有類似的系統,電路接受一些輸入,將輸入信號通過電門路徑並產生輸出。零知識證明利用這樣的電路來證明陳述。
想像一個計算電路,它針對給定的輸入輸出曲線上的值。如果用戶能夠始終如一地為曲線上的一個點提供正確答案,則可以確保用戶擁有關於曲線的一些知識,因為在每一輪連續的挑戰中猜出正確答案的可能性越來越小。可以將電路想像成愛麗絲在洞穴中行走的路徑,如果她能夠用她的輸入遍歷電路,她就很有可能證明她掌握了一些知識,即電路的“密碼”。能夠證明有關數據點的知識而不透露除數據知識之外的任何其他信息提供了許多關鍵好處,尤其是在區塊鍊網絡的背景下。
零知識證明的好處
零知識證明的主要好處是能夠在透明系統(如以太坊等公共區塊鍊網絡)中利用隱私保護數據集。雖然區塊鏈的設計是高度透明的,任何運行自己的區塊鏈節點的人都可以查看和下載存儲在分類賬上的所有數據,但ZKP 技術的加入允許用戶和企業在執行智能合約時利用他們的私有數據集,而無需透露基礎數據。
確保區塊鍊網絡內的隱私對於供應鏈公司、企業和銀行等傳統機構而言至關重要,這些機構希望與智能合約互動並啟動智能合約,但需要對其商業秘密保密以保持競爭力。此外,法律通常要求此類機構保護其客戶的個人身份信息(PII) 並遵守歐盟通用數據保護條例(GDPR) 和美國健康保險流通與責任法案(HIPAA) 等法規。
雖然獲得許可的區塊鍊網絡已經成為保護機構交易隱私的一種手段,但ZKP 允許機構安全地與公共區塊鍊網絡進行交互——這通常受益於全球用戶的巨大網絡效應——而不會放棄對公共區塊鍊網絡的控制敏感和專有數據集。因此,ZKP 技術成功地為以前無法訪問的公共區塊鍊網絡打開了廣泛的機構用例,激勵了創新並創造了更高效的全球經濟。
零知識證明應用
ZKP 已被區塊鏈使用,例如 零錢 允許用戶創建保護隱私的交易,將貨幣金額、發送者和接收者地址保密。 去中心化預言機網絡為智能合約提供訪問鏈下數據和計算的權限,還可以利用ZKP 來證明有關鏈下數據點的一些事實,而無需透露鏈上的底層數據。
開發中基於零知識證明的oracle 解決方案的實現是 德科,Chainlink 網絡安全鏈下計算套件中的隱私保護預言機協議。通過擴展用於通過Internet 傳輸數據的最常用協議HTTPS/TLS,DECO 保證數據在從各種私有和高級數據源傳輸期間保持私密和防篡改。 DECO 使用現代TLS 版本,不需要可信硬件,並且以向後兼容的方式運行,不需要服務器端修改。因此,啟用DECO 的Chainlink 預言機節點可以證明有關來自受信任服務器的數據的事實,而無需透露鏈上數據,同時由於維護了TLS 監管鏈,還可以證明數據的來源。
通過像DECO 這樣的ZKP,可以實現廣泛的智能合約用例,包括抵押不足的貸款,借款人可以在這種情況下生成高保證的憑證,以保護隱私的方式證明其信譽。具體來說,借款人可以根據來自權威在線來源(例如已建立的機構)的記錄生成這些憑證,而不會暴露潛在的敏感數據,例如他們的姓名、位置或確切的信用評分值(僅當它超過預定義的閾值)。
DECO 也可用於創建 去中心化身份(DID) 協議 如 坦率,用戶可以在其中獲取和管理自己的憑據,而不是依賴集中的第三方。此類憑證由稱為頒發者的實體簽署,這些實體可以權威地將聲明與用戶(例如公民身份、職業、大學學位等)相關聯。 DECO 允許任何現有的網絡服務器成為發行者,並提供密鑰共享管理來備份帳戶,以及基於社會安全號碼(SSN) 等確定性唯一標識符的保護隱私的女巫抵抗形式。
最後,像DECO 這樣的ZKP 解決方案不僅使用戶受益,而且使傳統機構和數據提供商能夠以保密的方式將其專有和敏感數據集貨幣化。無需直接在鏈上發布數據,只需發布來自ZKP 的證明數據事實的證明。這為數據提供商開闢了新市場,他們可以通過現有數據集獲利並增加收入,同時確保零數據洩漏。與Chainlink 結合使用時 混合料,隱私擴展到執行協議的輸入數據之外,還包括協議本身的條款。
通過將區塊鍊網絡固有的透明性與零知識證明的隱私保護設計相結合,企業和機構可以從兩全其美的優勢中受益:他們可以保持內部數據集的私密性,同時仍然可以在智能的可靠執行環境中利用它們。合同申請。
閱讀 Chainlink 2.0 白皮書 更深入地了解去中心化預言機網絡在保密智能合約系統中的作用並註冊 Chainlink 官方通訊 獲取有關Chainlink 網絡的最新更新。