撰文:Mohamed Fouda & Qiao Wang

編譯:DeFi 之道

 

零知識(Zero Knowledge,簡稱ZK) 技術不僅可以改變Web3,還可以改變其他的行業。作為一種足夠通用的技術,ZK 可擁有大量的用例,而我們正處於弄清楚該技術可實現的所有用例的早期階段。一些明顯的ZK 用例,已經找到了真正的應用,例如啟用交易隱私以及數據壓縮(即Rollup)。然而,要讓ZK 的採用變為主流,仍然需要許多潛在的用例和技術進步。
 
在本文中,我們首先來回顧下ZKP (零知識證明) 的不同應用。然後我們會討論,實現這項技術的下一階段需要什麼,以及一些可以從這項技術中受益的創業想法。
 

01. ZKP 應用地圖

 
自發明以來,零知識證明(ZKP) 已在crypto 行業中找到了穩固的立足點。 ZKP 確實有一些神奇之處,這使得該技術非常令人興奮。簡單來說,ZKP 允許一個實體向世界其他地方證明其知道了一條信息,或者其已經正確完成了一項任務,而無需透露該信息或顯示任務執行的細節
 
ZK 的神奇數學讓我們只需檢查生成的ZKP 就可以相信知識或執行的完成。出於這個原因,ZKP 的第一個,也是最一致的用例是以隱私為中心的加密網絡。 ZKP 還用於提供以太坊L1 上的L2 交易的有效性證明,以引入zk-Rollup的概念。此外,ZKP 在不同的項目中還被用於其他的利基應用。
 

1) 以隱私為中心的支付和協議

 
ZKP 自然地實現了隱私,特別是在缺乏可充當真相來源的中央權威的去中心化網絡中。 ZKP 允許Web3 用戶(證明者)向網絡驗證者(驗證者)證明他們的交易是有效的,即他們有足夠的餘額可以花費,而無需透露交易細節,如交易金額、發送方或接收方地址
 
ZKP 最初是為了支持Zcash 網絡中的隱蔽支付(即隱私支付)而開發的,然後擴展到了其他網絡。隱私支付網絡的項目例子包括:
 
  • 注重隱私的L1:Zcash、Horizon、Aleo 以及Iron Fish
  • 通用鏈上的隱私智能合約:Tornado Cash
  • 注重隱私的L2:Aztec

 

2) zk-Rollup 的驗證

 
ZKP 的另一個主要用例是在底層L1 上生成Rollup 有效性證明。通用Rollup 優化吞吐量,即通過不利用ZKP 的隱私功能來證明更多的交易。在這種權衡中,ZKP 僅作為L2 交易執行正確性的證明。
 
由於無法有效地證明一些通用函數,因此很難生成ZKP 來證明任意智能合約的正確執行。解決這個問題需要實現專用的VM (虛擬機),這些VM 可以使用底層zk 電路得到有效驗證。由於這種複雜性,zk-Rollup 一開始只支持支付或單個應用(例如DEX),這樣就可以輕鬆生成ZKP。這裡的例子包括zkSync 1.0 和Loopring 。之後,通用的zkEVM 實現開始出現在市場上,包括Starknet、zkSync 2.0、Polygon zkEVM 以及Scroll 。目前,所有的zk-Rollup 都在以太坊上,但理論上也可以在其他鏈(包括比特幣)上實現zk-Rollup。然而,比特幣Rollup 的實施將需要更改比特幣操作碼並進行硬分叉升級,而這通常不受比特幣社區的歡迎。
 

3) 其他的零知識證明應用

 
除了以隱私為中心的應用和Rollup 之外,ZKP 在其他區塊鏈協議中也找到了其他的用例。本節介紹了這些用例。
 
  • Mina
 
Mina 使用ZKP 將區塊鏈狀態壓縮到很小的大小(~22 KB)。為了實現這一點,Mina 使用了遞歸ZKP 方法,即對ZKP 再進行一次ZKP 壓縮計算。當Mina 網絡中生成一個區塊時,zk-SNARKs 用於生成該區塊的證明,以確保其有效性。當新區塊引用之前的區塊時,新區塊的ZKP 會驗證所有之前的區塊,同時保持不變的大小。
 
  • Filecoin
 
Filecoin 使用ZKP 來確保存儲提供商正確存儲他們聲稱存儲的數據。這個過程稱為複制證明(PoReb)。在此過程中,存儲提供者生成ZKP ,以證明存儲的是數據的唯一副本,即不引用其他提供者維護的副本。 ZKP 為想要實現一定程度的冗餘和可用性的Filecoin 用戶提供保證。此外,由於證明的大小比存儲的數據小得多,使用ZKP 可以降低存儲提供商的帶寬需求。
 
  • Celo Plumo
 
Celo Plumo 使用ZKP 允許創建可在手機和其他資源有限的設備上使用的超輕型網絡客戶端。儘管客戶端是輕量級的,但它可以保證訪問的狀態的正確性。
 
  • Dark Forest
 
Dark Forest 是ZKP 在遊戲領域最流行的一款應用。儘管ZKP 的使用符合隱私用例,但其創建不完全信息博弈的應用是一個獨特的用例,其超越了ZKP 在支付網絡中的金融應用範圍。
 

02. ZKP 的發展軌跡及其應用

 
在2016 年之前,ZKP 還只是在小範圍的學術圈內被討論的一個研究課題。當Zcash 創始團隊創建了ZKP 變體zk-SNARK 的第一個實現,以支持Zcash 網絡中的屏蔽/隱私交易時,這一切都發生了變化。有了一個真實的用例之後,ZKP 引發的興趣變得越來越大,這導致了更多更好的ZKP 變體,這些變體成為了第一節中我們討論的很多項目的基礎。然而,該技術需要進一步的ZKP 開發才能實現主流的採用。
 
要了解如何進一步改進該技術,我們可以向AI 等類似技術學習。在許多方面,ZKP 技術類似於人工智能(AI)技術,預計它將遵循類似的發展軌跡。與ZKP 一樣,AI 最初是一種很有前途的技術,它可以解決許多問題。然而,最初的人工智能算法的能力有限,計算複雜度遠遠超過了可用硬件的能力。這使得人工智能應用變得緩慢且不切實際,因此,人工智能(AI)主要局限於研究實驗室。通過發明深度神經網絡(DNN) 等新架構,並利用GPU 來提高執行速度,從而逐步改進了AI 。這最終導致了諸如2012 年AlexNet 等突破,在最著名的計算機視覺競賽ImageNet 中以巨大的優勢獲勝。 AlexNet 是AI 時代的一個開端,它催生了當前令人興奮的AI 應用,例如GPT-3、Dall.E 2 以及Stable Diffusion。
 
而在今天,ZKP 的狀態類似於AI 早期的狀態,這是一項仍在積極開發中的很有前途的技術,但因為它是計算密集型的,這導致了較長的驗證時間。從人工智能(AI)的進步中學習,我們可以發現ZKP 技術起飛需要解決的瓶頸。
 
1) 算法/電路改進
 
就像AI 從LeNet-5 到AlexNet,從Resnet-50 到Transformer 一樣,ZKP 算法也將經歷開發階段,從而顯著提高性能。我們已經看到了這方面的進展,自2011 年引入zk-SNARK 以來,研發人員已經開發了更高級的算法。 2018 年,Starkware 的創始人開發了STARK,這是一種無需可信設置且證明生成時間更短的ZKP 方法,這項技術是Starkware 旗下幾款產品(包括StarkNet 在內)的基礎。
 
隨著2019 年PLONK的引入,ZKP 繼續取得了進展,這是一種SNARK 實現,它允許很多應用使用單個受信任的設置,而無需重複設置。 PLONK 刺激了多種實現的開發,這些實現被多種Web 3 協議(例如Aztec、Mina 和Celo)所使用。
 
2) 優化的執行引擎
 
ZKP 的一個主要限制是計算複雜性,這導致了證明時間過長。例如,Polygon 最近宣布的zkEVM 實現需要在64 核服務器上使用大約5 分鐘來生成50 萬gas 計算的證明。提高ZKP 證明時間是使ZKP 技術成為主流的關鍵部分。與AI 類似,優化軟件執行引擎和使用專用硬件都是實現這一目標的必要條件。
 
  • 優化軟件
 
很多ZKP 生成操作是大規模並行的,這意味著並行處理(例如GPU)可以加速ZKP 計算。 CUDA 等專用GPU 庫可用於加速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) 軟件抽象層
 
為了釋放ZKP 的潛力,需要構建幾個抽象層和工具。這些抽像對於簡化ZKP 應用的開發過程是必要的,並允許每組開發人員專注於他們最擅長的事情。例如,應用程序開發人員不應該擔心zk 電路的底層細節及其工作方式。再次使用AI 類比,通過創建多個抽象層,AI 可能取得巨大進步。使用這些抽象,AI 應用程序開發人員無需擔心NN 架構或硬件資源分配。 TensorFlow 和PyTorch 等框架抽像出了所有這些底層細節。
 

zk 開發堆棧還沒有AI 堆棧那麼發達。然而,有一些努力來構建這些抽象。在堆棧的底部存在基礎的ZKP 庫,例如PLONK 和STARK。在該層之上,Noir 等高級語言試圖抽像出底層的zk 密碼學,並幫助應用開發人員專注於應用程序邏輯。 Circom 是另一種流行的ZKP 語言,它位於這兩層之間,因為它既可用於創建複雜的zk 後端,也可用於開發基於ZKP 的應用程序。
 
Web 3 中ZKP 抽象的另一個例子是StarkWare 的Cairo 語言,它允許開發人員實現在底層使用STARK 證明的通用智能合約。為了提供進一步的抽象,Nethermind 的Warp 工具允許Solidity 開發人員將他們的Solidity 代碼直接轉換為Cairo。使用Warp,可以將Uniswap V3 代碼轉換為Cairo,而只需對原始Solidity 代碼進行最小的更改。
 

03. ZKP 創業機會

 
基於對ZKP 可能進展路徑的討論,我們確定了一些與ZKP 相關的創業想法,我們希望與創始人一起探索。創業的理念分為兩組:工具和應用。
 

1) ZKP 工具

 
  • 高級開發框架
 
與AI 中的Tensorflow 和PyTorch 類似,高級ZKP 開發框架對於在應用層解鎖創新是至關重要的。這些框架需要:
 
  1. 抽象底層ZKP 後端的複雜性;
  2. 支持各種ZKP 後端和硬件環境,例如CPU 和GPU;
  3. 允許高效的調試和測試;
  4. 通過示例和教程提供豐富的開發環境;
 
以太坊生態中最接近的例子是Hardhat 和Foundry,但它們不太可能很快支持zkEVM 或ZKP。取而代之的是,現有的抽象工作,例如Cairo,最終可能會演變到填補這一空間。
 
  • zk-Rollup SDK
 
zk-Rollup 越來越受歡迎,其可以為遊戲或高吞吐量DeFi 協議啟用特定於應用的L2。在這種情況下,zk-Rollup 主要進行執行和結算,而共識和數據可用性將由L1 處理。然而,啟動特定於應用的zk-Rollup 仍然是非常複雜的。我們相信,提供對開發人員友好的SDK (軟件開發工具包),以啟動自定義zk-Rollup 的初創公司將解決真正的業務需求,並通過提供開發工具箱、開發人員服務、排序器服務和支持基礎設施,成為有價值的企業。
 
  • ZKP 硬件加速器
 
針對特定用例並建立早期市場領先地位的專業硬件公司,最終會成為極具價值的公司。當英偉達通過專注於人工智能硬件而成為北美最有價值的半導體公司時,人工智能(AI)就是如此。當比特大陸、嘉楠以及Whatsminer 通過專注於ASIC 礦機成為獨角獸時,比特幣挖礦領域也是如此。設計和構建高效ZKP 硬件加速器的公司,將遵循相同的軌跡。
 

2) ZKP Web 3 應用

 
1. ZK 跨鏈橋和互操作性
 
ZKP 可用於創建跨鏈消息傳遞協議的有效性證明,跨鏈消息可以在目的鏈上快速驗證。這類似於在底層L1 上驗證zk-Rollup 的方式。但是,對於跨鏈消息傳遞,複雜性會更高,因為要驗證的簽名方案和密碼學函數在源鍊和目標鏈之間可能不同。
 
2. ZK 鏈上游戲引擎
 
Dark Forest 證明ZKP 可以實現信息不完整的鏈上游戲。這對於設計更具互動性的遊戲是至關重要的,在這些遊戲中,玩家的行為在他們決定公開之前都是保密的。隨著鏈上游戲的成熟,我們預計ZKP 將成為遊戲執行引擎的一部分。對於成功將隱私功能集成到高吞吐量鏈上游戲引擎中的初創公司來說,機會是巨大的。
 
3. 身份解決方案
 
ZKP 可以在身份空間中實現多個機會。它們可用於信譽或連接Web 2 和Web 3 身份。目前,我們的Web 2 和Web 3 身份是分開的。 Clique 等項目通過使用預言機連接這些身份。 ZKP 可以通過啟用Web 2 和Web 3 身份的匿名鏈接來進一步採用這種方法。這可以為那些可使用Web 2 或Web 3 數據證明特定領域專業知識的人啟用匿名DAO 成員資格等用例。另一個用例是基於借款人的Web 2 社會地位(例如Twitter 關注者的數量)的無抵押Web 3 貸款。
 
4. 合規性ZKP 用例
 
Web 3 使假名在線賬戶能夠積極參與金融系統。從這個意義上說,Web 3 實現了巨大的財務包容性。隨著Web 3 監管法規的增加,ZKP 可用於合規性而不會破壞假名。 ZKP 可用於證明用戶不是受制裁國家的公民或居民。 ZKP 還可用於證明合格投資者身份或任何其他KYC/AML要求。
 
5. 原生Web 3 隱私債權融資
 
傳統金融債權融資通常用於支持成長中的初創公司以加速其增長或啟動新業務線,而無需籌集額外的風險資本。 Web 3 DAO 以及假名公司的興起,為Web 3 原生債權融資創造了機會。例如,使用ZKP、DAO 或假名公司可以在不向貸款人透露借款人信息的情況下,根據其增長指標的證明,以具有競爭力的利率獲得非抵押貸款。
 
6. 隱私DeFi
 
金融機構通常將其交易歷史和風險敞口保密。由於區塊鍊鍊分析技術的不斷進步,當使用鏈上(即DeFi協議)時,要滿足這一要求具有挑戰性。一個可能的解決方案是開發以隱私為重點的DeFi 產品,保護協議參與者的隱私。一個正在嘗試實現的協議是Penumbra 的zkSwap。此外,Aztec 的zk.money 通過模糊用戶參與透明DeFi 協議,提供了一些隱私DeFi 賺錢機會。通常,成功實現高效且注重隱私的DeFi 產品的協議,可確保機構參與者的大量交易以及收入。
 
7. Web 3 廣告的ZKP 用例
 
Web 3 推送用戶對其數據的所有權,例如瀏覽歷史記錄、私人錢包活動等。 Web 3 還支持為用戶的利益將這些數據貨幣化。由於數據貨幣化可能與隱私相矛盾,ZKP 可以在控制個人數據的哪些方面可透露給廣告商和數據聚合商方面發揮重要作用。
 
8. 私人數據的共享和貨幣化
 
如果與正確的實體共享,我們的很多私人數據可能會產生很大的影響。個人健康數據可通過眾包來幫助研究人員開發新藥。私人財務記錄可以與監管機構和監督機構共享,以識別和懲治腐敗。 ZKP 可以實現此類數據的私有共享和貨幣化。
 
9. 去中心化的情報組織
 
ZKP 可以催生去中心化的情報組織。在這些情況下,情報運營商、數據偵探以及間諜可以成為網絡的一部分,而無需相互交流或了解。參與者可以使用ZKP 來證明對某些情報數據的了解,然後再接受私人支付以換取這些數據。這樣的系統還可以促進協作和可組合的方式來豐富或解釋收集的數據,同時維護參與者的隱私。
 
10. 隱私治理
 
隨著DAO 和鏈上治理的普及,Web3 正在向直接參與的民主靠攏。當前治理模式的一個主要缺陷是參與的非隱私性。 ZKP 可能是解決這個問題的基礎。治理參與者可以投票,而不必透露他們的投票情況。此外,ZKP 可以將治理提案的可見性限制為對DAO 成員可見,從而允許DAO 建立競爭優勢。
 

04. 結論

 
ZKP 技術是Web 3 領域最具創新性的技術之一,它為突破性協議和公司提供了多種機會。在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-SNARKs:區塊鏈上的可更新設置:

    https://iohk.io/en/blog/posts/2022/09/01/zk-snarks-updatable-setups-on-the-blockchain/


原文:

https://medium.com/alliancedao/zkps-in-web-3-now-and-the-future-21b459348f29


**本文僅代表原作者觀點,不構成任何投資意見或建議。 

-END-

【發布文章僅為傳播更有價值的信息,文章版權歸原作者所有,其內容與觀點不代表Unitimes立場。本微信平台出現的圖片均在互聯網收集而來,版權歸版權所有人所有,若版權者認為其作品不宜供大家瀏覽或不應無償使用,請添加微信unitimes2018聯繫我們,本平台將立即更正。 】

來了就點個