Web3 中的ZKP:現在與未來

作者:Mohamed Fouda , Qiao Wang;編譯:Dazai;來源:SEEDAO

零知識技術,簡稱zk,是一項不僅能改變Web3,還能改變其它產業的技術。作為一項通用技術,zk 有著眾多的應用案例,而我們正處於探索該技術應用的早期階段。一些明顯的zk 案例已經找到了實際的應用,例如實現了隱私交易和資料壓縮,也就是rollup。當然,若想要zk 被主流採納,它需要更多潛在的應用案例和技術進步的支持。

在本文中,我們將首先回顧ZKP 的不同應用。然後,我們將討論這項技術下一階段的發展方向,以及一些可以從這項技術中受益的創業想法。我們鼓勵基於這些想法的建造者們聯繫或申請加入Alliance 創辦人社群。 Alliance 願意支持和資助創辦人在此方向上的建設。

ZKP應用全景圖

零知識證明(以下簡稱ZKPs),自發明以來就在加密貨幣行業中佔據了重要位置,ZKPs 確實像施了魔法一樣令這項技術興奮不已。從高層次上講,ZKP 允許一個實體向世界上的其他人證明,他們知道某條訊息或已正確執行了某項任務,在不需要透露資訊或告知任務執行細節的前提下。 zk 的數學魔法讓我們可以透過檢查產生的ZKP 來信任這則訊息或任務的執行。因此,最符合ZKPs 應用的首個案例是以隱私為重點的加密網路。零知識證明(ZKPs)也被用於在以太坊L1 上提供以太坊L2 交易的有效性證明,引入了zk rollups 概念。此外,ZKPs 也在不同的專案中被發現了其他特定的應用。

隱私為核心的支付方案和協議

ZKP 能順理成章地實現隱私,特別是在缺乏可作為真相來源中央機構的去中心化網絡中。 ZKPs 允許Web3 使用者(即證明者),向網路驗證器(即驗證者),證明他們的交易是有效的。即他們有足夠的餘額可以使用,而無需透露交易細節,如交易金額、發送人或接收人的地址。

ZKP 最初是為了支援Zcash 網路中的隱私支付而開發的,然後擴展到其他網路。已經部署的隱私支付網路包括:

  • 以隱私為核心的L1s:Zcash、Horizo​​n、Aleo 和Iron Fish

  • 通用鏈上的隱私智能合約:Tornado Cash

  • 以隱私為核心的L2s:Aztec

ZK ROLLUPS驗證

ZKPs 的另一個主要應用是在底層L1 上產生rollup 的有效性證明。通用rollup 針對吞吐量進行了最佳化,即透過不利用ZKPs 的隱私特性來證明更多的TXs。在這種權衡中,ZKP 僅作為L2 交易執行正確性的證明。

對於一些無法有效證明的通用函數,產生ZKPs 來證明任意智能合約的正確執行是困難的。解決這個問題需要實現專門的虛擬機器(VMs),這些虛擬機器可以透過底層的零知識電路(zk circuit)進行高效率的證明。鑑於其複雜性,zk rollups 最初僅支援支付或單一的應用程序,例如去中心化交易所,在那裡ZKPs可以被簡單地生成。這裡的例子包括zkSync 1.0 和Loopring。隨後,市場上開始出現通用的zkEVM 實現,包括Starknet、zkSync 2.0、Polygon zkEVM 和Scroll。目前,所有zk rollups 都在以太坊上,但也可以在其他鏈上實現,包括比特幣。然而,比特幣的rollups 實作將需要更改比特幣的操作碼和硬分叉鏈,這往往不受比特幣社群的歡迎。

其他零知識證明應用

除了以隱私為中心的應用程式和rollups 之外,ZKP 在其他區塊鏈協議中也得到了應用。這一部分將介紹這些應用。

Mina

Mina 使用ZKPs 將區塊鏈狀態壓縮到很小(大約在22 KB)。為了實現這一點,Mina 使用了遞歸零知識證明,即其他零知識證明的零知識證明。當在Mina 網路中產生一個區塊時,zk-SNARKs 用於產生該區塊的證明以確保其有效性。由於新區塊引用了先前的區塊,新區塊的零知識證明驗證了所有先前的區塊,同時保持了一個恆定的大小。

Filecoin

Filecoin 使用ZKPs 來確保儲存提供者正確儲存他們儲存的資料。這個過程稱為複製證明(PoReb)。在此過程中,儲存提供者產生ZKPs 以證明他們正在儲存資料的唯一副本。即不引用另一個提供者維護的副本。 ZKPs 為想要實現一定程度冗餘和可用性的Filecoin 用戶提供了保障。此外,由於證明的大小遠小於儲存的數據,因此使用ZKPs 可以減少儲存供應商的頻寬要求。

Celo Plumo

Celo Plumo 使用ZKPs 來建立可以在手機和其他資源有限的裝置上使用的超輕量網路用戶端。儘管客戶端非常輕量化,但它具有對其存取狀態準確性的保證。

Dark Forest

Dark Forest 是ZKPs 在遊戲領域最受歡迎的應用之一。儘管使用ZKPs 符合隱私使用案例,但將其應用於創建不完全資訊遊戲仍是一個獨特的案例,超越了ZKPs 在支付網路中的金融應用。

ZKPS及其應用發展軌跡

直到2016 年,ZKPs 還只是在小型學術圈內討論的研究主題。這一切的改變,始於Zcash 創始團隊創建了ZKP 變種zk-SNARK 的第一個可投入生產的實現,以支援Zcash 網路中的隱私交易。隨著真實用例的出現,ZKPs引起了更多的關注,促成了更好的ZKP變種,成為第一部分討論的許多專案的基礎。然而,為了讓這項技術被主流採用,還需要進一步發展零知識證明。

在許多方面,零知識證明(ZKP)技術類似於人工智慧技術,預計會走上類似的發展軌跡。就像ZKPs一樣,人工智慧起初被認為是一項有望解決許多問題的技術。然而,最初的人工智慧演算法在功能上受到限制,計算複雜性遠遠超出了可用硬體的能力。這使得人工智慧應用變得緩慢且不切實際,使人工智慧主要局限於研究實驗室。透過發明新的架構,如深度神經網路(DNNs),並利用圖形處理單元(GPUs)提高執行速度,逐漸取得了改進。這最終導致了2012年AlexNet 的突破,它在最著名的電腦視覺競賽ImageNet 中以巨大的優勢獲勝。 AlexNet 標誌著人工智慧時代的開始,引領了當前令人驚嘆的人工智慧應用,如GPT-3、Dall.E 2 和Stable Diffusion。

今天的零知識證明(ZKPs)技術狀況類似於早期人工智慧的狀態,是一項有前途但仍在積極開發中的技術,由於計算密集性導致證明時間較長。透過借鑒人工智慧的進展,我們可以找出需要解決的瓶頸,以推動零知識證明技術的發展。

1. 演算法/電路改進

與人工智慧從LeNet-5 到AlexNet、Resnet-50 再到Transformer 的方式一樣,ZKP 演算法也將經歷類似的發展階段,從而實現效能的顯著提高。我們已經看到這方面的進展,自2011 年推出Zk-SNARK 以來,已經開發出更進階的演算法。 2018 年,Starkware 的創辦人開發了STARK,這是一種無需可信設置,證明產生時間更短的ZKP 方法。這項技術是Starkware 包括StarkNet 在內的多種產品的基礎。

隨著2019 年PLONK 的推出,ZKP 進一步取得進展。 PLONK 是一種SNARK 實現,它允許多個應用程式使用單一可信任設定而無需重複設定。 PLONK 促進了多個實現的開發,這些實現被用於多個Web3 協定(如Aztec、Mina 和Celo)。

2. 優化的執行引擎

ZKP 的一個主要限制是計算複雜性,這導致了證明時間過長。例如,Polygon 最近公佈的zkEVM 實作需要在64 核心伺服器上花費約5 分鐘來產生50 萬gas 的計算證明。改善ZKP 的證明時間是將其技術主流化的關鍵。類似於AI,優化軟體執行引擎並使用專用硬體都是實現這一目標的必要條件。

優化的軟體

許多ZKP 生成操作都是高度並行的,這意味著並行處理,例如GPU,可以加速ZKP 的計算。專用的GPU函式庫,如CUDA,可以用來加速在Nvidia GPU上的ZKP運算。一些專案正嘗試在內部開發這種功能,因為每個專案使用不同的ZKP演算法。一個顯著的例子是Filecoin 對Groth16 演算法的實現,該實現利用GPU 加速證明過程。另一個例子是Edgeswap 使用GPU 將PLONK 的證明時間縮短了75%。

專用硬體

由於GPU 對ZKP 證明時間的最佳化有限,另一種選擇是使用專用硬件,如FPGA 或ASIC。在製造昂貴的專用晶片ASIC 之前,FPGA 通常被用作硬體原型平台。在中短期, FPGA 或結合GPU 和FPGA 的混合解決方案發揮重要作用,為rollup 和注重隱私的網路加速ZKP。然而,如果ZKP 技術發展到我們預期的水平,ASIC 最終會出現並贏得這個市場。目前,ZKP 的硬體加速技術尚未充分解決,可能是ZKP 演算法的多樣性和碎片化導致的。然而,我們相信透過正確的商業模式,一些新創公司可以專注於開發這部分技術堆疊並從中獲利。

3. 軟體抽象層

為了釋放ZKPs 的潛能,需要建構多個抽象層和工具。這些抽象層是簡化ZKP 應用程式開發流程所必需的,同時它允許每組開發人員專注於他們最擅長的事情。例如,應用程式開發人員不應該擔心零知識電路的底層細節及其如何運作。再次對比AI,透過創建多個抽象層使得人工智慧的巨大進步成為可能。使用這些抽象層,AI 應用程式開發人員無需擔心神經網路架構或硬體資源分配。 TensorFlow 和PyTorch 等框架抽象化所有這些底層細節。

ZK(零知識證明)開發堆疊目前尚未像人工智慧堆疊那樣成熟。然而,一些工作正在進行中,以建立這些抽象層。在堆疊的底層存在低階的ZKP 函式庫,例如PLONK 和STARK。在這一層之上,高階語言如Noir 試圖將底層的ZK密碼學抽象化出來,幫助應用程式開發人員專注於應用邏輯。 Circom 是另一種流行的ZKP 語言,位於這兩個層之間,因為它既可用於創建複雜的ZK 後端,也可用於開發基於ZKP 的應用程式。

在Web 3中,另一個零知識證明(ZKP)抽象的例子是StarkWare 的Cairo 語言,它允許開發人員實現使用STARK證明的通用智慧合約。為了提供進一步的抽象,Nethermind 的Warp 工具允許開發者將Solidity 程式碼直接轉換為Cairo。使用Warp,幾乎不會對原始Solidity 程式碼進行修改,就能將Uniswap V3 程式碼轉譯為Cairo。 (譯者註:Warp 已宣布停止維護)

ZKP帶來的就業機會

基於ZKP 可能發展路徑的討論,我們確定了一些與ZKP 相關的創業想法,希望與創辦人共同探索。這些創業想法被分為兩類:工具和應用。

  • ZKP Tooling ZKP 工具

  1. 高階開發框架

類似於AI 中的Tensorflow 和PyTorch,高階ZKP 開發框架對於解鎖應用程式層面的創新至關重要。這些框架需要:

  • 抽象底層ZKP 後端的複雜性

  • 支援各種ZKP 後端和硬體環境,例如CPU 和GPU

  • 允許高效的調試和測試

  • 提供豐富的開發環境,包括範例和教學課程

在以太坊生態系統中,最接近的例子是Hardhat 和Foundry,但他們可能不會很快支持zkEVMs 或ZKPs。相反,像Cairo 這樣的現有抽象語言可能最終會填補這個空白。

2. ZK rollup SDK

zk rollups 正變得越來越受歡迎,它可以為遊戲或高吞吐量DeFi 協定啟用特定於應用程式的L2。在這種情況下,ZK Rollup 主要進行執行和結算,而共識和資料可用性將由L1 處理。然而,啟用專用於應用程式的ZK Rollup 仍然非常複雜。我們相信,提供開發者友善的SDK 以啟動客製化zk rollups 的新創公司將解決真正的業務需求,並透過提供開發者工具、開發者服務、序列服務和支援基礎設施而成為有價值的企業。

3. ZKP 硬體加速器

專門針對特定用途的硬體公司,透過建立早期市場領先地位,最終可能成為具有巨大價值的公司。在人工智慧領域,英偉達透過專注於AI 硬體而成為北美市值最高的半導體公司。在比特幣挖礦領域也是如此,比特大陸、嘉楠耘智和神馬礦機專注於ASIC 礦機而成為獨角獸企業。設計並製造高效ZKP 硬體加速器的公司將遵循相同的軌跡。

  • ZKP 在Web3 中的應用

1、ZK 跨鏈橋和互通性

ZKPs 可用於為跨鏈訊息傳遞協定建立有效性證明,在這種協定中,跨鏈訊息可以在目標鏈上快速驗證。這類似於ZK Rollup 在底層L1 的驗證方式。然而,對於跨鏈訊息來說,複雜性更高,因為源鍊和目標鏈之間要驗證的簽章方案和加密函數可能會不同。

2、ZK 全鏈遊戲引擎

Dark Forest 證明了零知識證明可以使資訊不完整的鏈上遊戲成為可能。這對於設計更具互動性的遊戲至關重要,因為玩家的行動在他們決定公開之前都保持私密。隨著全鏈遊戲的成熟,預期零知識證明將成為遊戲執行引擎的一部分。對於成功在高吞吐鏈上遊戲引擎中整合隱私特性的新創公司來說,機會巨大。

3.身分解決方案

零知識證明可以在身分領域開啟多個機會。它們可以用於聲譽或連接Web 2 和Web 3 的身份。目前,我們的Web2 和Web3 身分是分開的。諸如Clique 這樣的計畫透過使用預言機來連結這些身分。零知識證明可以透過啟用Web2 和Web3 身分的匿名鏈接,將這種方法推進一步。這可以啟用如匿名DAO 成員資格的用例,對於可以使用Web2 或Web3 資料證明特定領域專業知識的人來說。另一個用例是基於借款人的Web2 社交狀態的無抵押Web3 借款,例如,Twitter 的追蹤者數量。

4、ZKP 在監理合規的應用

Web3 使得偽匿名的線上帳戶能夠積極參與金融體系。在這個意義上,Web3 為大眾提供了廣泛的金融自由和包容性。隨著Web3 的監管日趨嚴格,ZKPs 可以在不破壞用戶偽匿名性的前提下,用於合規驗證。 ZKPs 可以用來證明一個使用者不是被制裁國家的公民或居民。 ZKPs 也可以用於證明投資者的資格或滿足任何其他KYC/AML(反洗錢)的要求。

5.Web3 原生的隱私權債務融資

傳統金融中的債務融資常被用來支持成長中的新創企業,以加速他們的發展或開闢新的業務領域,而無需募集額外的風險投資。 Web3 DAO 和偽匿名公司的崛起為Web3 原生的債務融資創造了機會。例如,使用ZKPs,DAO 或偽匿名公司可以透過證明其成長指標,以競爭性利率獲得非抵押貸款,而無需將借款人的信息透露給貸方。

6.私密DeFi

金融機構通常會保持其交易歷史和敞口資訊的隱私。然而,在鏈上(即DeFi協定)使用時,由於鏈上分析技術不斷進步,要保持這種隱私變得更加具有挑戰性。一個可能的解決方案是開發注重隱私的DeFi產品,以保護協議參與者的隱私。一個嘗試實施這一點的協定是Penumbra 的zkSwap。此外,Aztec 的zk.money 透過混淆用戶在透明的DeFi協議中的參與,提供了一些私密DeFi的獲利機會。通常來說,成功實施高效且注重隱私的DeFi產品的協議可以吸引機構參與者,獲得可觀的交易量和收入。

7、ZKPs 用於Web3 廣告

Web3 推動用戶對自己的資料擁有所有權,例如瀏覽歷史記錄、私人錢包活動等,並使這些資料的貨幣化可以為用戶帶來利益。由於資料變現可能與隱私相矛盾,ZKPs 可以在控制哪些個人資料可以向廣告商和資料聚合商揭露方面發揮重要作用。

8.隱私資料的共享與變現

我們的許多隱私資料如果與合適的實體共享,可能會產生重大影響。例如,個人健康數據可以被眾包,以幫助研究者開發新藥。隱私財務記錄可以與監管機構和監察員分享,以便識別和懲罰腐敗行為。 ZKPs 可以實現這類資料的隱私共享和變現。

9.去中心化情報組織

ZKPs 可以孵化出去中心化的情報機構。在這些機構中,情報操作員、資料偵查員和間諜可以成為網路的一部分,而無需相互互動或了解彼此。參與者可以使用ZKPs在接收與資料交換相應的私密付款之前,證明對某些情報資料的了解。這種系統還可以促進協作和可組合的方式,以豐富或解釋收集到的數據,同時保護參與者的隱私。

10.隱私治理

隨著DAOs 和鏈上治理的普及,Web3 也更接近直接參與式的民主。目前治理模式的一個主要缺陷是參與的非隱私性。 ZKPs 可以從根源解決這個問題。治理參與者可以在不透露投票方式的情況下進行投票。此外,ZKPs 可以實現將治理提案的可見性限制在DAO成員之間,從而使DAO能夠建立競爭優勢。

總結

ZKP 技術是Web3 領域最具創新性的技術,為開創性的協議和公司提供了多種機會。在Alliance,我們希望成為這項發展的核心推動者,並持續支持和資助那些在這一領域建立的創始人。

感謝Shumo Chu、Carter McAlister 和Adam Porter 對本文的回饋。

其他資源

零知識證明的硬體加速:https://www.paradigm.xyz/2022/04/zk-hardware

去中心化速度:零知識證明的進展:https://a16z.com/2022/04/15/zero-knowledge-proofs-hardware-decentralization-innovation/

ZK-SNARK:區塊鏈上的可更新設定:https://iohk.io/en/blog/posts/2022/09/01/zk-snarks-updatable-setups-on-the-blockchain

Total
0
Shares
Related Posts