零知識證明會成爲模塊化區塊鏈的核心嗎?

進階5/13/2024, 3:06:24 PM
雖然Web3通常被定義爲“讀、寫、擁有”,但考慮到公共區塊鏈的核心優勢是確保計算的準確性並簡化驗證過程,我們認爲對於互聯網的第三次迭代,一個更準確的描述應是“讀、寫、驗證”。

什麼是區塊鏈以及它們如何擴展當前的計算範式?

區塊鏈,一種協作機制,讓全球的參與者能夠在不需要第三方介入的情況下,按照一致認同的規則進行合作。

計算機的設計初衷是進行數據存儲、數據處理和進行通信。而區塊鏈技術引入了第四個元素:確保上述三個過程(數據存儲、處理和通信)能按照約定的方式進行。這種確保機制讓不相識的人也能夠進行合作,而不需要依賴任何可信的第三方介入,實現了去中心化。

這些額外的確保機制可能是基於經濟(如信任博弈理論和獎懲機制)或是基於密碼學(信任數學)的,但大部分應用是這兩者的結合,即所謂的“密碼經濟學”。這與目前主要基於聲譽的系統形成了明顯的對比。

盡管Web3常被描述爲“閱讀、寫入、擁有”,我們認爲,鑑於公鏈的關鍵優勢在於可靠的計算和易於驗證這些保證是否得到履行,互聯網的第三個階段更合適的描述應該是“閱讀、寫入、驗證”。如果我們創建了可以買賣和控制的數字產品,擁有權可以視爲一種確保計算的特例。然而,許多區塊鏈應用受益於這種確保計算的特性,但並不直接涉及擁有權。比如,在一個完全基於鏈的遊戲中,如果你的健康值是77/100,這個健康值是你擁有的嗎,還是僅僅因爲遵循了大家共同認可的規則而在鏈上得以執行的?我們傾向於後者,但Chris Dixon可能有不同的看法。

Web3= “讀、寫、驗證”。

零知識證明與模塊化——加速變革的兩大趨勢

盡管區塊鏈技術備受期待,但其分散化的特點也帶來了效率低下和操作復雜的問題。大多數區塊鏈爲確保交易的正確性需要節點重復執行交易驗證,這種方法不僅浪費資源,還與高效的集中式處理形成對比。區塊鏈的發展目標是盡可能地提高效率,使其接近集中化處理的水平。

盡管區塊鏈的基礎設施在過去十年有了顯著改進,但距離能夠支持互聯網規模的處理還有很長的路要走。我們觀察到,無論是在表達性還是難度方面,區塊鏈都面臨着權衡選擇。模塊化設計可以加快這種權衡的實驗過程,而零知識證明技術則能進一步擴展這些權衡的界限。

  • 表達性關乎系統能夠保障的內容範圍,包括可擴展性、隱私保護、可編程性和組件間的互操作性;
  • 而難度則涉及這些保障的實現難度,如安全性和去中心化程度。

模塊化是指系統的不同組件可以被獨立出來並重新組合的能力。這種設計通過快速反饋和低門檻進入特性,促進了快速的試驗和專業化發展。模塊化與一體化的選擇不是非黑即白,而是需要在不同程度的解耦和集成間尋找平衡。

零知識證明(ZKP)允許一方(證明者)向另一方(驗證者)證明某信息的真實性,而無需透露除了驗證信息本身之外的任何細節。這種方式不僅提高了系統的可擴展性和效率,還增強了隱私保護,因爲它減少了重復執行的需要。此外,ZKP還通過提供強有力的技術保證,增強了系統的安全性和可靠性,推動了技術的進步和應用的廣泛性。

我們認爲,模塊化和對所有事物的零知識證明化(簡稱“ZK化”)是兩個未來將持續加速發展的趨勢。這兩個趨勢各自爲領域內的探索提供了獨特的視角,但我們更加關注它們的交集部分。我們關注的兩個主要問題是:

  1. 目前模塊化技術堆中,哪些部分已經開始使用零知識證明(ZKPs),而哪些部分還待開發?
  2. 使用零知識證明(ZKPs)能解決哪些問題?

然而,在討論這些問題之前,我們需要了解 2024 年模塊化堆棧的最新情況。

2024年的模塊化技術堆

我們過去常用的模塊化技術堆圖示,包含四個基本組件(執行、數據發布、共識、結算),雖然作爲一個基礎思維模型很有幫助,但考慮到模塊化領域的快速發展,我們認爲這種表示方式已不再足夠。隨着進一步的解構,出現了之前被認爲是更大模塊一部分的新組件,同時也產生了新的依賴關係以及不同組件之間需要的安全互操作性(後文將進一步討論)。鑑於這一領域發展的速度,要全面跟進堆棧各層面的創新變得相當困難。

早期對web3技術堆的探索嘗試包括Kyle Samani(Multicoin)的工作,他的研究最初發布於2018年年,並在2019年進行了更新。他的研究內容從去中心化的最後一英裏互聯網接入(比如Helium)到最終用戶的密鑰管理等方面都有涵蓋。雖然其背後的理念可以重新利用,但某些部分,如證明和驗證等,完全缺失。

基於這些考慮,我們嘗試構建了一個關於2024年模塊化技術堆的更新視圖,對現有的四部分模塊化技術堆進行了擴展。我們按組件而非功能進行了分類,這意味着比如P2P網路被歸入到共識組件中,而不是作爲獨立組件分離出來,主要是因爲圍繞它建立協議相當困難。

零知識證明在模塊化技術棧中的應用

隨着我們對模塊化技術棧的理解逐步深入,現在是時候探討一個核心問題了:零知識證明(ZK)技術已經影響了技術棧的哪些部分,以及它有潛力解決哪些現有的問題,特別是那些可以通過零知識證明來避免重復執行操作或增強隱私保護的問題。在我們深入分析每個單獨組件之前,這裏先提供一個我們研究的概要。

1 - 用戶操作的簡化

目前,區塊鏈用戶面臨着需要同時操作多個鏈條、錢包和界面的復雜情況,這不僅麻煩而且阻礙了區塊鏈的廣泛應用。用戶操作的簡化是一個廣泛的概念,旨在將這種復雜性隱藏起來,讓用戶只需通過一個界面(比如一個特定的應用或錢包)進行交互,復雜的操作都在後臺完成。基礎層面的簡化嘗試包括:

  • 帳戶簡化(AA)允許智能合約在不需要用戶對每個操作都籤名的情況下進行交易(即“可編程加密帳戶”)。它涉及到定義誰能籤名(密鑰管理)、籤什麼(交易內容)、怎麼籤(籤名算法)以及何時籤名(交易批準條件)。這些功能的結合,實現了如使用社交媒體登入操作去中心化應用、兩步驗證、帳戶恢復和自動化操作(如自動籤名交易)等。雖然這類討論常常圍繞以太坊(2023年春季通過的ERC-4337標準),但許多其他鏈條如Aptos, Sui, Near, ICP, Starknet, 和 zkSync已經內置了帳戶簡化功能。
  • 鏈條簡化讓用戶可以在不同的鏈條上進行交易,同時只需要操作一個帳戶(一個界面,多個鏈條)。包括Near, ICP, 和 dWallet在內的幾個團隊正在研究這個問題。這些解決方案採用了多方計算(MPC)和鏈上籤名技術,將其他網路的私鑰分割成多個小部分,在源鏈的驗證者之間共享,由他們籤署跨鏈交易。當用戶想要操作另一條鏈時,需要足夠數量的驗證者籤名以滿足加密閾值。這種方式保持了安全性,因爲私鑰從未完全在任何地方共享過。但是,這也存在驗證者可能串通的風險,因此底層鏈的密碼經濟安全和驗證者的去中心化仍然至關重要。
  • 在更高層面上,意圖功能使得將用戶的需求和願望轉換成區塊鏈可執行的操作成爲可能。這需要意圖解決者——專門的鏈外代理,負責找到滿足用戶意圖的最佳解決方案。已經有一些應用採用了特定的意圖,例如DEX聚合器(尋找“最佳價格”)和橋接聚合器(尋找“最便宜/最快的橋接方式”)。旨在簡化用戶表達復雜意圖和開發者構建以意圖爲中心應用的通用意圖解決網路(如Anoma, Essential, Suave)正在出現。但是,這方面還存在許多問題,包括如何規範化這一過程、意圖中心語言將是什麼樣的、是否總有最優解以及是否能找到它。

零知識證明的實際應用案例:

  • 使用 AA x ZK 進行身分驗證: Sui 就是一個例子 zkLogin,這使用戶能夠使用熟悉的憑據(例如電子郵件地址)登入。它使用 ZKP 來防止第三方將 Sui 地址與其相應的 OAuth 標識符連結起來。
  • 提高AA錢包籤名驗證的效率:通過智能合約進行交易驗證的成本通常比通過傳統帳戶(EOA)進行的要高。Orbiter項目通過一個綜合服務來應對這一挑戰,該服務使用零知識證明來確保交易籤名的正確性,並且通過一個Merkle世界狀態樹來維持AA帳戶的nonce值和gas餘額。通過證明的聚合和在所有用戶之間平等分擔鏈上驗證的成本,這種方法能夠大幅度降低費用。

零知識證明(ZKPs)可能解決的挑戰

  • 實現最優執行或意圖滿足的證明:盡管意圖和帳戶抽象(AA)能夠簡化用戶面臨的復雜性,但它們也可能導致中心化趨勢,並使我們需要依賴特定的中介(即解決方案提供者)來尋找最佳執行路徑。不是僅僅依賴於這些中介的誠信,零知識證明技術有潛力用來確保爲用戶選擇的是解決方案提供者評估過的最佳路徑。
  • 意圖結算的隱私保護:協議如Taiga 旨在實現完全私密的意圖結算,以保護用戶隱私——這是向區塊鏈網路中增加隱私(或至少是保密性)的更廣泛努力的一部分。它利用零知識證明(Halo2)來保護狀態轉換(如應用類型、參與方等)的敏感信息不被泄露。
  • AA錢包的密碼找回:這個提案的目標是讓用戶在丟失私鑰時能夠恢復他們的錢包。方法是在合約錢包中存儲一個散列(密碼和隨機數的組合),用戶可以利用他們的密碼生成一個零知識證明,以此來證明自己是帳戶的主人,並請求更換私鑰。設定一個確認期限(3天或更長),以此作爲預防未授權訪問嘗試的安全措施。

2 - 交易排序機制

在區塊鏈中,所有交易都需要先進行排序才能被打包進區塊。排序的方法有很多,例如:按照交易給出的手續費高低排序(手續費高的優先處理)、按交易提交的時間順序排序(先提交的先處理),或是給私有交易內存池中的交易優先權等。

關於誰來負責這一排序工作,模塊化架構提供了多種可能性,包括Rollup的排序器(可以是中心化或去中心化的)、基於L1的排序以及共享排序網路(一個由多個Rollup共用的去中心化排序器網路)。這些方法各有不同的信任假設和擴展能力。在實際應用中,交易的排序和打包過程有時也會由協議外的專業機構(如區塊建造者)來執行,這些機構專門負責創建和優化區塊內容。

零知識證明技術的現有應用

  • 確保交易池加密正確: Radius是一個採用了實用可驗證延遲加密((PVDE)技術的加密交易池的共享排序網路。用戶通過生成零知識證明來確保解開時間鎖的謎題能正確解密有效交易,這意味着所涉及的交易確實包含了有效的籤名和隨機數,並且交易發起人擁有足夠的資金支付交易費用。

零知識證明(ZKPs)能夠解決的潛在問題

  • 可驗證的排序規則(VSR):這是一種要求提案人或排序者遵守一系列執行排序規則的機制,並額外保證這些規則得到了遵循。這種驗證既可以通過零知識證明來實現,也可以通過欺詐證明來實現,後一種方式需要提案人或排序者提供足夠的經濟保證金,一旦他們的行爲被證明是不當的,這筆保證金就會被沒收。

3 - 執行與結算層

執行層負責智能合約的運行和狀態的更新。使用zkVM技術的執行層,不僅返回運算結果,還能證實狀態轉換的正確性。這意味着網路的其他參與者無需重新執行交易,只需通過驗證相關的證明就能確認交易的正確性。

使用可證明的執行還有一個額外的好處:可以進行更復雜的計算,因爲在鏈外計算時不會受到鏈上資源限制的影響。這開啓了一扇大門,允許在區塊鏈上運行那些計算密集的新應用,而這些應用都是建立在可靠計算的基礎之上的。

現有的 ZK 集成

  • zkEVM rollups:一種特殊類型的 zkVM,經過優化,可與以太坊兼容並證明 EVM 執行環境。然而,以太坊兼容性越接近,性能方面的權衡就越大。 2023 年推出的多個 zkEVM,包Polygon zkEVM, zkSync Era, Scroll, 和 Linea。 Polygon 最近宣布了他們的類型1 zkEVM驗證器,這使得能夠以每個區塊 0.20-0.50 美元的價格證明主網以太坊區塊(即將進行優化以進一步降低成本)。RiscZero等提供成本較高的以太坊區塊驗證解決方案
  • 替代zkVM:一些協議採取了另一種路徑,優化性能/可證明性(Starknet, Zorp)或開發者友好性,而不是盡量與以太坊兼容。後者的例子包括zkWASM協議(Fluent, Delphinus Labs)和zkMOVE(M2zkmove)。
  • 以隱私爲重點的zkVM:在這種情況下,ZKP用於兩件事:避免重新執行和實現隱私。盡管僅使用ZKP能夠實現的隱私有限(僅個人隱私狀態),即將推出的協議爲現有解決方案增加了很多表達性和可編程性。例子包括Aleo的snarkVM, Aztec’s的AVM和Polygon的 MidenVM
  • ZK協處理器:允許在鏈上數據上進行鏈下計算(但不包括狀態)。ZKP用於證明正確執行,比樂觀協處理器結算更快,但存在成本折衷。鑑於生成ZKP的成本和/或難度,我們看到了一些混合版本,例如Brevis coChain,允許開發者在ZK或樂觀模式之間選擇(成本與保證難度之間的折衷)。

零知識證明(ZKPs)能夠解決的未解決問題

  • 集成zkVM:當前,大部分的底層網路(L1s)還是通過重新執行操作來驗證狀態是否正確轉換。如果能在底層網路中集成一個zkVM(零知識虛擬機),就能避免這種重復執行,因爲驗證者可以直接驗證證明。這樣不但能提高系統的運行效率。雖然大家最關注的是集成了zkEVM的以太坊,但實際上許多其他的生態系統也存在依賴於重復執行的問題。
  • zkSVM:盡管目前SVM(Solana虛擬機)主要在Solana的L1網路中使用,但有些團隊,如Eclipse,正嘗試利用SVM支持在以太坊上進行結算的rollups。Eclipse還計劃使用Risc Zero技術爲SVM中狀態轉換的潛在問題提供零知識欺詐證明。然而,一個完整的zkSVM還沒有被真正探索過,這可能是因爲這個問題的復雜性,以及SVM本身更多地被優化用於其他方面,而不是證明性。

4 - 數據查詢與讀取性能提升

在大多數應用中,從區塊鏈讀取數據的過程,即數據查詢,扮演着至關重要的角色。盡管近年來的討論和改進大多集中在提升寫入(即執行操作)的能力上,但由於讀取和寫入之間的不平衡性(特別是在去中心化環境中),提升讀取能力實際上更加重要。不同區塊鏈的讀/寫比例各不相同,但根據Sig基於兩年實際數據的估計,Solana節點上超過96%的調用是讀取操作——讀/寫比例達到了24:1。

提升讀取能力不僅包括通過專用的驗證器客戶端(例如Solana的Sig)來增加讀取速度(即每秒更多的讀取次數),還包括實現更復雜的查詢功能(比如結合讀取和計算),例如通過使用協處理器來完成。

另一個考慮點是如何去中心化數據查詢方式。目前,區塊鏈上的大部分數據查詢請求都依賴於受信任的第三方(基於聲譽),如RPC節點(Infura)和索引器(Dune)。一些更去中心化的選擇包括The Graph和存儲證明運營商(這些也可以進行驗證)。此外,還有一些嘗試建立去中心化RPC網路的努力,比如 Infura DIN 或者 Lava Network ((除了提供去中心化RPC服務,Lava還計劃未來提供更多的數據訪問服務)。

現有的零知識證明應用

  • 存儲證明:使用戶能夠在不依賴第三方的情況下,從區塊鏈查詢歷史和當前數據。零知識證明技術用於數據壓縮和驗證提取數據的正確性。這方面的開發項目包括Axiom, Brevis, Herodotus,和 Lagrange

ZKP 可以解決的問題

  • 更高效的私密狀態查詢:爲了增強隱私保護,許多隱私保護項目採用UTXO模型的改進版,這比傳統的帳戶模型具有更優的隱私性,但這種模型不夠對開發者友好,並可能引起同步問題。例如,Zcash 自2022年以來就因屏蔽交易量的大幅增加而面臨同步挑戰。用戶必須等錢包與區塊鏈同步後才能使用資金,這對網路的正常運作是一個基本挑戰。Aztec最近爲解決這一問題徵求了關於節點發現的建議,但尚未找到確定的解決方案。

5 - 證明

隨着越來越多應用引入零知識證明(ZKPs),證明和驗證過程已迅速成爲模塊化體系中不可或缺的一環。但目前,大部分證明基礎架構仍舊採用有權限和集中化的形式,很多應用都依賴於單一的證明提供者。

盡管集中化的方案在復雜性上較爲簡單,但是去中心化證明架構,並將其作爲模塊化體系中的一個獨立部分,能帶來多重益處。最關鍵的一點是它能提供活性保證,這對於那些需要頻繁生成證明的應用來說至關重要。用戶還能因爲競爭增加和分攤給多個證明提供者的工作量而享受到更強的抗審查性和更低的費用。

我們認爲,面向通用目的的證明者網路(多應用、多證明者)相比於單一應用證明者網路(單一應用、多證明者)更爲優越,因爲它們能更高效地利用現有硬件並且對證明者來說更簡單。更高的硬件利用率也意味着用戶能享受到更低的費用,因爲證明者無需通過提高費用來彌補冗餘(盡管仍需覆蓋固定成本)。

Figment Capital 對當前的證明供應鏈狀況進行了詳細的概述,包括證明生成和證明聚合兩個部分(證明聚合本質上也是證明生成,只不過是以兩個證明作爲輸入,而不是執行路徑)。

來源:Figment Capital

現有的 ZK 技術應用

  • STARK與SNARK結合:STARK技術具有快速且無需可信設置的優點,但其生成的證明文件較大,在以太坊L1上的驗證費用較高。通過在最後一步將STARK用SNARK封裝,可以大幅降低驗證成本。但這樣做增加了系統的復雜性,並且這種復合證明系統的安全性還未經過深入研究。目前已實施的項目包括Polygon的 Polygon zkEVM, Boojum in zkSync Era, 和 RISC Zero
  • 去中心化的通用證明網路:通過將更多應用集成到去中心化的證明網路中,不僅可以提高證明硬件的使用效率,還可以降低用戶成本(無需爲硬件冗餘支付費用)。此類項目包括GevulotSuccinct

ZKP 可以解決的問題

  • ZK欺詐證明:在樂觀模式解決方案中,任何人都可以挑戰狀態轉換並創建欺詐證明。但傳統的驗證方式需要通過重新執行來完成,這一過程較爲繁瑣。ZK欺詐證明通過創建狀態轉換的證明來解決這一問題,這樣可以更高效地完成驗證(無需重新執行),可能還能加快結算速度。這一技術正在由Optimism(與O1 Labs和RiscZero合作)和AltLayer x RiscZero等團隊開發。
  • 更高效的證明聚合:ZKP的一個重要功能是可以將多個證明聚合成一個,這樣做不會顯著增加驗證成本,從而可以在多個應用中分攤驗證費用。此類技術目前由NEBRAGevulot等項目進行開發。

來源: Figment Capital

6 - 數據發布與信息可獲取性

數據發布(DP)的目標是確保數據在短時間內(1-2周)不僅可用,而且容易獲取。這一點對於確保系統的安全性(例如,樂觀rollups需要在挑戰期(1-2周)通過重新執行來驗證交易的正確執行)和活性(比如,即便使用了有效性證明,有時仍需底層交易數據來確認資產所有權,處理緊急撤離、強制交易或核對輸入輸出是否一致)都非常關鍵。對於使用者(比如zk-橋和rollups),這涉及到一次性費用,用於覆蓋短期內存儲交易和狀態信息的成本,直到數據被清理。需要注意的是,數據發布網路並不適用於長期存儲數據(對於長期存儲的方案,請參考下一節)。

Celestia 率先推出了其主網,成爲首個替代DP層(10月31日),但隨着Avail, EigenDA,和Near DA 等預計在2024年推出,未來將有更多選擇。此外,以太坊的EIP 4844 升級增強了其數據發布能力(同時爲blob存儲創造了獨立的費用市場),並爲全面實施dank-sharding奠定了基礎。DP功能也在向其他生態系統擴展,例如 @nubit_org/riema-secures-angel-investment-for-launching-the-first-bitcoin-native-data-availability-layer-49ccf0487380">Nubit 致力於在比特幣上實現原生DP。

很多DP方案不僅僅提供基本的數據發布服務,它們還包括爲主權rollups提供共享安全性(如CelestiaAvail)或增強rollups間的互操作性(如Avail的Nexus)。還有項目(如(DomiconZero Gravity)同時提供數據發布和長期狀態存儲服務,這是一個非常有吸引力的方案。這也展示了在模塊化體系中兩個組件的再次整合趨勢,未來我們可能會看到更多這樣的嘗試,無論是進一步分解還是重新整合。

零知識證明技術的現有應用

  • 確保擦除編碼準確無誤:擦除編碼通過增加數據的冗餘度,確保即便部分數據丟失,也能恢復原始數據。這一機制對於數據可用性抽樣(DAS)尤爲關鍵,其中輕節點僅需抽樣區塊的一小部分數據,便能以較高概率確認數據的完整性。然而,如果數據的編碼過程出現惡意篡改,即使輕節點抽樣了足夠多的數據塊,也可能無法恢復原始數據。通過有效性證明(即零知識證明)或欺詐證明來驗證擦除編碼的正確性,其中後者可能會因挑戰期的延遲而受到影響。除Celestia外,其他所有方案均採用有效性證明進行驗證。
  • 利用零知識輕客戶端實現的數據橋:即使是使用了外部數據發布層的Rollups,也必須向結算層證明數據已被正確發布。這正是數據認證橋的作用所在。採用零知識證明,可以提高在以太坊上驗證源鏈共識籤名的效率。Avail的VectorX和Celestia的BlobstreamX數據認證橋,都是依托與Succinct合作構建的零知識輕客戶端來驅動的。

ZKP 可以解決的問題

  • Celestia通過引入有效性證明優化擦除編碼的準確性:在數據發布網路中,Celestia因採用欺詐證明來確保擦除編碼的正確性而獨樹一幟。如果有區塊提案者惡意地錯誤編碼了數據,其他任何完整節點都能提出欺詐證明來質疑此行爲。盡管這種方式實施起來較爲簡單,但它引入了延遲問題(區塊直到欺詐證明期結束後才被確認)並且依賴輕節點信任至少有一個誠實的完整節點來提出欺詐證明(輕節點無法自行驗證)。然而,Celestia正在考慮將其目前使用的Reed-Solomon編碼與零知識證明相結合來證實編碼的正確性,這樣做能大幅縮短確認時間。關於這個討論的最新進展可以在這裏 找到,包括先前工作組的記錄資料(以及將ZKPs加入到Celestia基礎層的更廣泛嘗試)。
  • 零知識證明的數據可用性抽樣(DAS):已經進行了一些使用零知識證明來驗證數據可用性的嘗試,在此模式下,輕節點僅需驗證默克爾根和一個零知識證明,而無需下載數據的小片段來進行傳統的抽樣。這會進一步降低輕節點的要求,但看起來相關的開發工作目前已經暫停。

7 - 數據長期(狀態)存儲

長期存儲歷史數據主要用於數據同步和響應查詢請求。然而,不是每個節點都能存儲全部數據,多數節點會刪除舊數據以維持硬件需求在合理範圍內。我們通常依賴專門的節點(如歸檔節點和索引器)來保存所有歷史數據,並按需爲用戶提供。

此外,像 FILArweave這樣的去中心化存儲提供商,提供了成本效益較高的長期存儲解決方案。盡管大部分區塊鏈沒有固定的歸檔存儲流程,這些去中心化存儲協議是存儲歷史數據並通過其網路內置激勵措施增加數據冗餘的理想選擇。

ZK技術在現有存儲中的應用

  • 存儲證明:長期存儲服務商需要定期產生零知識證明(ZKP),證明他們確實保存了所聲明的數據。例如,FIL 的時空證明(PoSt)就是一種存儲服務商通過定期驗證他們的存儲數據,以此獲得區塊獎勵的機制。

ZKP 可以解決的問題

  • 證明數據來源和查看敏感數據的授權:對於想要交換敏感數據的兩個不可信方,ZKP 可用於證明一方擁有查看數據所需的憑據,而無需上傳實際文檔或泄露密碼和日志。詳細信息。

8 - 共識機制的作用

由於區塊鏈技術基於分布式點對點系統,不存在一個被普遍信任的第三方來定義所謂的全球性真理。相反,網路中的節點通過一種被稱爲“共識”的機制來共同認定當前的真實情況(即確定哪一個區塊是正確的)。基於權益證明(PoS)的共識方法大致可分爲兩類:一是基於拜佔庭容錯(BFT)的方法,即一羣驗證者通過共識來決定最終狀態;二是基於鏈的方法,即通過分叉選擇規則來事後決定最終狀態。盡管大多數現行的PoS共識機制都是基於BFT的,但Cardano採用的是最長鏈策略。同時,基於有向無環圖(DAG)的共識機制,如Narwhal-Bullshark,也在Aleo、Aptos和Sui等平台上得到了某種程度的應用,並引起了人們的廣泛關注。

共識機制是模塊化系統中多個不同組件的核心,包括共享序列器、去中心化證明和基於區塊鏈的數據發布網路(與基於委員會的如EigenDA不同)。

零知識證明技術的現有應用

  • 在基於ZK的隱私網路中進行質押:對於基於PoS的隱私網路,質押代幣持有者面臨一個難題,即他們需要在保護隱私與參與共識(以及獲得質押獎勵)之間做出選擇。Penumbra通過一種獨特的方式應對這一挑戰,即取消質押獎勵,而是將未綁定和已綁定的質押視作兩種不同的資產,這樣既保護了個人的委托隱私,同時還能公開每個驗證者綁定的總金額。
  • 私密治理:長期以來,實現匿名投票在加密世界一直是個挑戰,Nouns Private Voting等項目正在努力推動這一進展。匿名投票同樣適用於治理領域,Penumbra等至少一個項目正在嘗試實現提案的匿名投票。在這裏,零知識證明技術可以用來證實投票者擁有投票權(例如通過代幣所有權)並且滿足了特定的投票條件(例如尚未投票)。

ZKP 可以解決的問題

  • 私人領導人選舉:以太坊目前在每個 epoch 開始時選舉接下來的 32 個區塊提議者,並且本次選舉的結果是公開的。這會帶來惡意方依次對每個提議者發起 DoS 攻擊以試圖禁用以太坊的風險。爲了解決這個問題, 是一項用於在以太坊上選舉區塊提議者的隱私保護協議的提案。驗證者使用 ZKP 來證明洗牌和隨機化是誠實執行的。還有其他方法可以實現類似的最終目標,本文涵蓋了其中一些方法 a16z 的博客文章
  • 私密領導人選舉:以太坊目前在每個時代開始時公開選舉接下來的32個區塊提案者。這種公開的選舉結果可能使得惡意方有機會對每個提案者依次發起DoS攻擊,試圖癱瘓以太坊網路。爲了應對這一問題,Whisk 提出了一個隱私保護的協議,用於在以太坊上選舉區塊提案者。在這個方案中,驗證者利用零知識證明來證實洗牌和隨機化過程的誠實性。此外,還有其他方法旨在實現類似的目標,a16z的一篇博客文章中對此進行了介紹。
  • 籤名聚合:通過零知識證明聚合籤名可以大幅降低籤名驗證的通訊和計算成本(驗證一個聚合證明而不是每個單獨的籤名)。這一策略已在ZK輕客戶端中得到應用,未來有可能進一步擴展到共識機制中

9 - 結算過程

在區塊鏈中,結算過程可視爲驗證事務正確性和解決爭議的最終環節,相當於法律體系中的最高法院。一項交易被認爲是最終性的,當它達到不可逆轉的狀態時(或在使用概率性最終性時,達到難以逆轉的程度)。達到最終性的時間依賴於所用的結算層,而這層的性能則依賴於具體採用的最終性規則和區塊時間。

特別是在跨rollup交互中,最終性的延遲成問題,rollup在能夠確認交易前需要等待以太坊的確認(樂觀rollup需要7天,有效性rollup需要12分鍾加上驗證時間)。這降低了用戶體驗。爲解決這一問題,業界正在嘗試採用具有一定安全級別的預確認方案,如Polygon AggLayer 或者zkSync HyperBridge等生態系統特定解決方案,以及Near的快速最終確定層這類通用解決方案,後者通過利用Near’s Fast Finality Layer的經濟安全性來連接不同的rollup生態系統。此外,還有使用EigenLayer進行“軟確認”的原生rollup橋梁,以避免等待完全最終確定。

現有的 ZK 應用

  • 通過有效性rollup加速結算:與樂觀rollup不同,有效性rollup不依賴挑戰期來驗證狀態轉變的正確性,而是直接利用零知識證明(ZKP)。這大大加快了在基礎層的結算速度(從以太坊的7天縮短到12分鍾),並且避免了交易的重復執行。

10 - 安全性

安全性涉及到保障措施的堅固程度,是區塊鏈價值提案中至關重要的一環。然而,建立起加密經濟的安全機制並非易事 - 它提高了進入門檻,對那些急需安全保障的應用(如各類中間件和其他第一層協議)構成了創新的阻礙。

共享安全的概念是利用現有的權益證明(PoS)網路的經濟安全基礎,並讓它面臨額外的風險(即處罰的條件),而非讓每個單獨的組件自己嘗試建立安全機制。雖然在工作量證明(PoW)網路中也進行過類似的嘗試(合並挖礦.)),但由於激勵機制不一致,礦工更容易合謀利用協議(由於工作在現實世界中進行,即利用計算力挖礦,因此更難以懲罰不良行爲)。與之相比,PoS的安全機制更爲靈活,可以被其他協議所利用,因爲它同時具有正面(質押收益)和負面(削減)激勵。

基於共享安全理念構建的協議包括:

  • EigenLayer力圖利用現有的以太坊安全機制來保護廣泛的應用程序。該項目的白皮書於2023年初發布,EigenLayer目前處於主網alpha測試階段,預計在今年晚些時候正式推出主網。
  • Cosmos在2023年5月推出了其跨鏈安全(ICS)功能,使得Cosmos Hub(Cosmos上最大的鏈之一,擁有約24億美元的質押ATOM)能夠將其安全機制租賃給其他鏈。通過使用驗證Cosmos Hub區塊的驗證者集來驗證消費鏈的區塊,旨在降低在Cosmos生態上啓動新鏈的門檻。然而,目前只有兩條消費鏈(Neutron和Stride)處於活躍狀態。
  • Babylon也在嘗試讓BTC參與共享安全。爲了解決合並挖礦中難以懲罰不良行爲的問題,它正在創建一個虛擬的PoS層,允許用戶將BTC鎖定在比特幣的一個質押合約中(無需跨鏈操作)。由於比特幣不支持智能合約,質押合約的懲罰規則通過UTXO交易在比特幣腳本中表達。
  • 在其他網路上重新質押的例子包括Near的Octopus和Solana的Picasso。Polkadot的Parachains也採用了共享安全的理念。

現有的零知識證明應用

  • 零知識證明與經濟安全的融合:雖然基於零知識證明的安全保障可能更爲強大,但對某些應用而言,證明的成本依然過高,且生成證明的時間過長。 Brevis coChain是這方面的一個例子,它是一個從ETH重質押者那裏獲得經濟安全的協處理器,樂觀地保證計算的正確性(通過零知識欺詐證明)。dApps可以根據它們對安全性和成本的具體需求,在純零知識模式和coChain模式之間做出選擇。

11 - 互操作性

在一個由多條區塊鏈構成的世界中,如何安全高效地實現互操作性一直是個棘手問題,這從價值28億美元的跨鏈橋攻擊事件中可見一斑。在模塊化系統中,互操作性尤爲關鍵——它不僅需要實現鏈與鏈之間的通信,還要讓區塊鏈內部的不同組件(如數據層和結算層)能夠相互協作。因此,不可能再像在傳統集成區塊鏈中那樣,僅通過運行一個完整節點或驗證一個共識證明來實現。這意味着在系統中引入了更多的復雜元素。

互操作性涵蓋了代幣跨鏈和更廣泛的跨鏈消息傳遞。目前有多種解決方案,各有其在安全性、響應速度和成本方面的權衡。同時滿足這三方面非常難,通常需要犧牲其中一方面。此外,不同鏈間的標準差異也使得在新鏈上的部署變得更加復雜。

目前對輕客戶端(輕節點)的不同類型定義尚不明確,但Fluent & Modular Media的聯合創始人Dino的文章對此進行了很好的介紹。當前大部分輕客戶端僅驗證共識,但理想狀態下,我們希望有能同時驗證執行和數據可用性的輕客戶端,減少依賴度,接近全節點的安全性,同時又不需要高昂的硬件支持。

現有的 ZK 集成

  • ZK輕客戶端(共識驗證):大多數現有輕客戶端能夠驗證其他鏈的共識狀態,不管是完整的驗證人集合還是部分驗證人(例如以太坊同步委員會)。通過使用ZKP技術,可以更快、更經濟地完成驗證,因爲原始鏈上使用的籤名系統可能不被目標鏈直接支持。盡管ZK輕客戶端在橋接應用中的重要性預計將增加,但目前其廣泛應用仍面臨着證明和驗證成本以及爲每個新鏈實現ZK輕客戶端的挑戰。相關協議的例子包括Polyhedra、Avail和Celestia的數據認證橋,以及zkIBC by Electron Labs
  • 存儲證明:如前所述,存儲證明可以在不使用可信第三方的情況下從區塊鏈查詢歷史和當前數據。這也與互操作性相關,因爲它們可用於跨鏈通信。例如,用戶可以證明他們在一條鏈上擁有代幣,並將其用於另一條鏈上的治理(無需橋接)。還有嘗試使用存儲證明進行橋接,例如該解決方案由 LambdaClass 開發
  • ZK預言機:預言機作爲連接現實世界數據與區塊鏈的橋梁,ZK預言機通過證明數據的來源和完整性,提高了現有基於聲譽系統的預言機模型的安全性和可靠性。

ZKP 可以解決的問題

  • 全功能輕客戶端:全功能輕客戶端不僅僅是信任其他鏈的驗證者集,它還會檢查執行和數據的準確性。這樣做可以減少對信任的依賴,使其性能更接近全節點,同時保持較低的硬件需求,讓更多人能夠運行輕客戶端。然而,在大多數鏈上,特別是在以太坊,驗證共識之外的內容仍然成本高昂。而且,輕客戶端雖然能驗證信息的真僞,但若信息被識別爲虛假,還需要額外的機制來處理這一問題。
  • 聚合層:Polygon 的 AggLayer通過聚合證明和統一的橋接合約,旨在實現生態系統內不同L2之間的順暢互操作性。聚合證明不僅提高了驗證的效率和安全性,還確保了依賴的鏈狀態和數據包的一致性,保證了基於其他鏈無效狀態的rollup狀態不能在以太坊上進行結算。zkSync的HyperChainsAvail Nexus 也在採用類似的方法,推動了鏈間互操作性的發展。

當零知識證明徹底改變模塊化技術架構時會發生什麼?

設想一下,如果生成零知識證明(ZKPs)的速度極快(幾乎達到光速)且成本極低(幾乎爲零),那麼最終的局面會是怎樣的?也就是說,零知識證明何時會徹底改變模塊化技術架構?

總的來說,我們認爲在這種情況下會有兩個顯著的變化:

  1. 所有不必要的重復執行將被消除:通過採用1/N的執行模式(而不是N/N的重復執行模式),我們能大幅降低網路的整體冗餘性,從而更高效地利用底層硬件資源。盡管還會有一些額外開銷,但這將使區塊鏈在計算效率上更加接近中心化系統。
  2. 大部分應用將依賴零知識證明提供的加密保障,而非經濟安全:當生成證明的時間和成本不再是問題時,我們認爲大多數應用會選擇依賴ZKPs來獲得更強的安全保障。當然,這也意味着需要在易用性和開發者友好度上進行改進,以便構建零知識證明應用,不過這正是多個團隊正在努力解決的問題。

    還有一個關於隱私(或信息流管理)的復雜條件,零知識證明可以被用於一些客戶端證明的隱私應用,這正是像Aleo、Aztec或Polygon Miden等平台正在開發的功能,但要實現廣泛的隱私保護,還需要依賴於多方計算(MPC)和全同態加密(FHE)等技術的進步,這可能是未來博客文章的一個話題。

面臨的風險

如果我們的預測錯誤,未來既不採用模塊化技術架構也不普遍應用零知識證明技術,會怎樣呢?我們的觀點面臨的一些潛在風險包括:

模塊化增加了復雜性

隨着鏈的數量不斷增加,用戶和開發者都面臨挑戰。用戶需要在多個鏈(可能還要管理多個錢包)上管理資金,而應用開發者則面臨穩定性和可預測性較低的問題,這使得他們很難決定應該在哪個鏈上進行開發。他們還必須考慮到狀態和流動性的碎片化問題。這一點在當前尤爲突出,因爲我們仍在探索哪些組件適合解耦,哪些應重新耦合。我們認爲,簡化用戶操作和提供安全高效的互操作解決方案是解決這一問題的關鍵。

零知識證明技術能否達到實用的性能水平?

一個無法避免的問題是,目前生成零知識證明的過程既耗時又成本高昂。對於當前許多應用來說,信任執行環境(TEEs)針對隱私保護的解決方案,或者是基於樂觀/加密經濟的安全方案在成本上更爲合理。

不過,針對零知識證明的軟件優化和硬件加速方面正在進行大量的工作。通過證明聚合,即將成本分散到多個參與方,可以進一步降低驗證成本,從而降低每位用戶的成本。此外,還有可能對底層技術進行調整,以更好地適應零知識證明的驗證。但是,零知識證明在硬件加速方面面臨的一個挑戰是,證明系統的快速進化使得專用硬件(ASICs)的開發變得復雜,因爲一旦底層證明系統的標準發生變化,這些硬件很快就會過時。

Ingonyama嘗試通過一個叫做ZK分數的比較指標來衡量證明性能,該指標基於運行計算的操作成本(OPEX),並追蹤每瓦特的模數乘法操作次數(MMOPS)。想要深入了解這一主題,我們推薦閱讀 @Cysic/BJQcpVbXn?ref=blog.succinct.xyz">Cysic和 @ingonyama/revisiting-paradigms-hardware-acceleration-for-zero-knowledge-proofs-5dffacdc24b4">Ingonyama的博客,以及Wei Dai的演講。

零知識證明提供的隱私保護是否足夠?

零知識證明技術只能用來保護個人的隱私狀態,而無法用於需要多方在加密數據上進行計算的共享狀態(例如一個私有的Uniswap)。要實現完全的隱私保護,還需要全同態加密(FHE)和多方計算(MPC)技術的支持,但這些技術在成本和性能上還需要大幅提升才能廣泛應用。盡管如此,對於那些不需要共享私有狀態的特定場景,如身分驗證或支付,零知識證明仍然是一個有用的工具。不是所有的問題都必須用同一種方式來解決。

總結

我們目前的情況如何呢?盡管我們正在取得一天天的進展,但仍有大量工作待完成。最迫切需要解決的問題是,如何在保持速度和成本效率的同時,確保不同模塊化組件之間能夠安全地交換價值和信息,並且如何讓這一切對最終用戶透明,避免他們需要處理跨鏈操作、錢包切換等技術細節。

目前我們還處於探索階段,但隨着我們逐漸明確每個應用場景中最佳平衡點的位置,局勢將逐步穩定。這將爲形成標準(無論是非正式的還是正式的)提供機會,爲在這些區塊鏈上構建的開發者提供更多穩定性。

雖然本文特別聚焦於零知識證明,我們也對現代密碼學解決方案(包括ZKPs、多方計算(MPC)、全同態加密(FHE)和可信執行環境(TEE))如何協同工作表示出越來越多的興趣——這是我們已經開始見證的現象。

雖然這篇文章特別關注 ZKP,但我們也越來越感興趣現代密碼學解決方案(ZKP、MPC、FHE 和 TEE)最終將如何一起發揮作用 - 我們已經看到了這一點。

感謝您的閱讀!

聲明:

  1. 本文轉載自 [equilibrium],著作權歸屬原作者[Hannes Huitula],如對轉載有異議,請聯系Gate Learn團隊,團隊會根據相關流程盡速處理。
  2. 免責聲明:本文所表達的觀點和意見僅代表作者個人觀點,不構成任何投資建議。
  3. 文章其他語言版本由Gate Learn團隊翻譯, 在未提及Gate.io的情況下不得復制、傳播或抄襲經翻譯文章。

零知識證明會成爲模塊化區塊鏈的核心嗎?

進階5/13/2024, 3:06:24 PM
雖然Web3通常被定義爲“讀、寫、擁有”,但考慮到公共區塊鏈的核心優勢是確保計算的準確性並簡化驗證過程,我們認爲對於互聯網的第三次迭代,一個更準確的描述應是“讀、寫、驗證”。

什麼是區塊鏈以及它們如何擴展當前的計算範式?

區塊鏈,一種協作機制,讓全球的參與者能夠在不需要第三方介入的情況下,按照一致認同的規則進行合作。

計算機的設計初衷是進行數據存儲、數據處理和進行通信。而區塊鏈技術引入了第四個元素:確保上述三個過程(數據存儲、處理和通信)能按照約定的方式進行。這種確保機制讓不相識的人也能夠進行合作,而不需要依賴任何可信的第三方介入,實現了去中心化。

這些額外的確保機制可能是基於經濟(如信任博弈理論和獎懲機制)或是基於密碼學(信任數學)的,但大部分應用是這兩者的結合,即所謂的“密碼經濟學”。這與目前主要基於聲譽的系統形成了明顯的對比。

盡管Web3常被描述爲“閱讀、寫入、擁有”,我們認爲,鑑於公鏈的關鍵優勢在於可靠的計算和易於驗證這些保證是否得到履行,互聯網的第三個階段更合適的描述應該是“閱讀、寫入、驗證”。如果我們創建了可以買賣和控制的數字產品,擁有權可以視爲一種確保計算的特例。然而,許多區塊鏈應用受益於這種確保計算的特性,但並不直接涉及擁有權。比如,在一個完全基於鏈的遊戲中,如果你的健康值是77/100,這個健康值是你擁有的嗎,還是僅僅因爲遵循了大家共同認可的規則而在鏈上得以執行的?我們傾向於後者,但Chris Dixon可能有不同的看法。

Web3= “讀、寫、驗證”。

零知識證明與模塊化——加速變革的兩大趨勢

盡管區塊鏈技術備受期待,但其分散化的特點也帶來了效率低下和操作復雜的問題。大多數區塊鏈爲確保交易的正確性需要節點重復執行交易驗證,這種方法不僅浪費資源,還與高效的集中式處理形成對比。區塊鏈的發展目標是盡可能地提高效率,使其接近集中化處理的水平。

盡管區塊鏈的基礎設施在過去十年有了顯著改進,但距離能夠支持互聯網規模的處理還有很長的路要走。我們觀察到,無論是在表達性還是難度方面,區塊鏈都面臨着權衡選擇。模塊化設計可以加快這種權衡的實驗過程,而零知識證明技術則能進一步擴展這些權衡的界限。

  • 表達性關乎系統能夠保障的內容範圍,包括可擴展性、隱私保護、可編程性和組件間的互操作性;
  • 而難度則涉及這些保障的實現難度,如安全性和去中心化程度。

模塊化是指系統的不同組件可以被獨立出來並重新組合的能力。這種設計通過快速反饋和低門檻進入特性,促進了快速的試驗和專業化發展。模塊化與一體化的選擇不是非黑即白,而是需要在不同程度的解耦和集成間尋找平衡。

零知識證明(ZKP)允許一方(證明者)向另一方(驗證者)證明某信息的真實性,而無需透露除了驗證信息本身之外的任何細節。這種方式不僅提高了系統的可擴展性和效率,還增強了隱私保護,因爲它減少了重復執行的需要。此外,ZKP還通過提供強有力的技術保證,增強了系統的安全性和可靠性,推動了技術的進步和應用的廣泛性。

我們認爲,模塊化和對所有事物的零知識證明化(簡稱“ZK化”)是兩個未來將持續加速發展的趨勢。這兩個趨勢各自爲領域內的探索提供了獨特的視角,但我們更加關注它們的交集部分。我們關注的兩個主要問題是:

  1. 目前模塊化技術堆中,哪些部分已經開始使用零知識證明(ZKPs),而哪些部分還待開發?
  2. 使用零知識證明(ZKPs)能解決哪些問題?

然而,在討論這些問題之前,我們需要了解 2024 年模塊化堆棧的最新情況。

2024年的模塊化技術堆

我們過去常用的模塊化技術堆圖示,包含四個基本組件(執行、數據發布、共識、結算),雖然作爲一個基礎思維模型很有幫助,但考慮到模塊化領域的快速發展,我們認爲這種表示方式已不再足夠。隨着進一步的解構,出現了之前被認爲是更大模塊一部分的新組件,同時也產生了新的依賴關係以及不同組件之間需要的安全互操作性(後文將進一步討論)。鑑於這一領域發展的速度,要全面跟進堆棧各層面的創新變得相當困難。

早期對web3技術堆的探索嘗試包括Kyle Samani(Multicoin)的工作,他的研究最初發布於2018年年,並在2019年進行了更新。他的研究內容從去中心化的最後一英裏互聯網接入(比如Helium)到最終用戶的密鑰管理等方面都有涵蓋。雖然其背後的理念可以重新利用,但某些部分,如證明和驗證等,完全缺失。

基於這些考慮,我們嘗試構建了一個關於2024年模塊化技術堆的更新視圖,對現有的四部分模塊化技術堆進行了擴展。我們按組件而非功能進行了分類,這意味着比如P2P網路被歸入到共識組件中,而不是作爲獨立組件分離出來,主要是因爲圍繞它建立協議相當困難。

零知識證明在模塊化技術棧中的應用

隨着我們對模塊化技術棧的理解逐步深入,現在是時候探討一個核心問題了:零知識證明(ZK)技術已經影響了技術棧的哪些部分,以及它有潛力解決哪些現有的問題,特別是那些可以通過零知識證明來避免重復執行操作或增強隱私保護的問題。在我們深入分析每個單獨組件之前,這裏先提供一個我們研究的概要。

1 - 用戶操作的簡化

目前,區塊鏈用戶面臨着需要同時操作多個鏈條、錢包和界面的復雜情況,這不僅麻煩而且阻礙了區塊鏈的廣泛應用。用戶操作的簡化是一個廣泛的概念,旨在將這種復雜性隱藏起來,讓用戶只需通過一個界面(比如一個特定的應用或錢包)進行交互,復雜的操作都在後臺完成。基礎層面的簡化嘗試包括:

  • 帳戶簡化(AA)允許智能合約在不需要用戶對每個操作都籤名的情況下進行交易(即“可編程加密帳戶”)。它涉及到定義誰能籤名(密鑰管理)、籤什麼(交易內容)、怎麼籤(籤名算法)以及何時籤名(交易批準條件)。這些功能的結合,實現了如使用社交媒體登入操作去中心化應用、兩步驗證、帳戶恢復和自動化操作(如自動籤名交易)等。雖然這類討論常常圍繞以太坊(2023年春季通過的ERC-4337標準),但許多其他鏈條如Aptos, Sui, Near, ICP, Starknet, 和 zkSync已經內置了帳戶簡化功能。
  • 鏈條簡化讓用戶可以在不同的鏈條上進行交易,同時只需要操作一個帳戶(一個界面,多個鏈條)。包括Near, ICP, 和 dWallet在內的幾個團隊正在研究這個問題。這些解決方案採用了多方計算(MPC)和鏈上籤名技術,將其他網路的私鑰分割成多個小部分,在源鏈的驗證者之間共享,由他們籤署跨鏈交易。當用戶想要操作另一條鏈時,需要足夠數量的驗證者籤名以滿足加密閾值。這種方式保持了安全性,因爲私鑰從未完全在任何地方共享過。但是,這也存在驗證者可能串通的風險,因此底層鏈的密碼經濟安全和驗證者的去中心化仍然至關重要。
  • 在更高層面上,意圖功能使得將用戶的需求和願望轉換成區塊鏈可執行的操作成爲可能。這需要意圖解決者——專門的鏈外代理,負責找到滿足用戶意圖的最佳解決方案。已經有一些應用採用了特定的意圖,例如DEX聚合器(尋找“最佳價格”)和橋接聚合器(尋找“最便宜/最快的橋接方式”)。旨在簡化用戶表達復雜意圖和開發者構建以意圖爲中心應用的通用意圖解決網路(如Anoma, Essential, Suave)正在出現。但是,這方面還存在許多問題,包括如何規範化這一過程、意圖中心語言將是什麼樣的、是否總有最優解以及是否能找到它。

零知識證明的實際應用案例:

  • 使用 AA x ZK 進行身分驗證: Sui 就是一個例子 zkLogin,這使用戶能夠使用熟悉的憑據(例如電子郵件地址)登入。它使用 ZKP 來防止第三方將 Sui 地址與其相應的 OAuth 標識符連結起來。
  • 提高AA錢包籤名驗證的效率:通過智能合約進行交易驗證的成本通常比通過傳統帳戶(EOA)進行的要高。Orbiter項目通過一個綜合服務來應對這一挑戰,該服務使用零知識證明來確保交易籤名的正確性,並且通過一個Merkle世界狀態樹來維持AA帳戶的nonce值和gas餘額。通過證明的聚合和在所有用戶之間平等分擔鏈上驗證的成本,這種方法能夠大幅度降低費用。

零知識證明(ZKPs)可能解決的挑戰

  • 實現最優執行或意圖滿足的證明:盡管意圖和帳戶抽象(AA)能夠簡化用戶面臨的復雜性,但它們也可能導致中心化趨勢,並使我們需要依賴特定的中介(即解決方案提供者)來尋找最佳執行路徑。不是僅僅依賴於這些中介的誠信,零知識證明技術有潛力用來確保爲用戶選擇的是解決方案提供者評估過的最佳路徑。
  • 意圖結算的隱私保護:協議如Taiga 旨在實現完全私密的意圖結算,以保護用戶隱私——這是向區塊鏈網路中增加隱私(或至少是保密性)的更廣泛努力的一部分。它利用零知識證明(Halo2)來保護狀態轉換(如應用類型、參與方等)的敏感信息不被泄露。
  • AA錢包的密碼找回:這個提案的目標是讓用戶在丟失私鑰時能夠恢復他們的錢包。方法是在合約錢包中存儲一個散列(密碼和隨機數的組合),用戶可以利用他們的密碼生成一個零知識證明,以此來證明自己是帳戶的主人,並請求更換私鑰。設定一個確認期限(3天或更長),以此作爲預防未授權訪問嘗試的安全措施。

2 - 交易排序機制

在區塊鏈中,所有交易都需要先進行排序才能被打包進區塊。排序的方法有很多,例如:按照交易給出的手續費高低排序(手續費高的優先處理)、按交易提交的時間順序排序(先提交的先處理),或是給私有交易內存池中的交易優先權等。

關於誰來負責這一排序工作,模塊化架構提供了多種可能性,包括Rollup的排序器(可以是中心化或去中心化的)、基於L1的排序以及共享排序網路(一個由多個Rollup共用的去中心化排序器網路)。這些方法各有不同的信任假設和擴展能力。在實際應用中,交易的排序和打包過程有時也會由協議外的專業機構(如區塊建造者)來執行,這些機構專門負責創建和優化區塊內容。

零知識證明技術的現有應用

  • 確保交易池加密正確: Radius是一個採用了實用可驗證延遲加密((PVDE)技術的加密交易池的共享排序網路。用戶通過生成零知識證明來確保解開時間鎖的謎題能正確解密有效交易,這意味着所涉及的交易確實包含了有效的籤名和隨機數,並且交易發起人擁有足夠的資金支付交易費用。

零知識證明(ZKPs)能夠解決的潛在問題

  • 可驗證的排序規則(VSR):這是一種要求提案人或排序者遵守一系列執行排序規則的機制,並額外保證這些規則得到了遵循。這種驗證既可以通過零知識證明來實現,也可以通過欺詐證明來實現,後一種方式需要提案人或排序者提供足夠的經濟保證金,一旦他們的行爲被證明是不當的,這筆保證金就會被沒收。

3 - 執行與結算層

執行層負責智能合約的運行和狀態的更新。使用zkVM技術的執行層,不僅返回運算結果,還能證實狀態轉換的正確性。這意味着網路的其他參與者無需重新執行交易,只需通過驗證相關的證明就能確認交易的正確性。

使用可證明的執行還有一個額外的好處:可以進行更復雜的計算,因爲在鏈外計算時不會受到鏈上資源限制的影響。這開啓了一扇大門,允許在區塊鏈上運行那些計算密集的新應用,而這些應用都是建立在可靠計算的基礎之上的。

現有的 ZK 集成

  • zkEVM rollups:一種特殊類型的 zkVM,經過優化,可與以太坊兼容並證明 EVM 執行環境。然而,以太坊兼容性越接近,性能方面的權衡就越大。 2023 年推出的多個 zkEVM,包Polygon zkEVM, zkSync Era, Scroll, 和 Linea。 Polygon 最近宣布了他們的類型1 zkEVM驗證器,這使得能夠以每個區塊 0.20-0.50 美元的價格證明主網以太坊區塊(即將進行優化以進一步降低成本)。RiscZero等提供成本較高的以太坊區塊驗證解決方案
  • 替代zkVM:一些協議採取了另一種路徑,優化性能/可證明性(Starknet, Zorp)或開發者友好性,而不是盡量與以太坊兼容。後者的例子包括zkWASM協議(Fluent, Delphinus Labs)和zkMOVE(M2zkmove)。
  • 以隱私爲重點的zkVM:在這種情況下,ZKP用於兩件事:避免重新執行和實現隱私。盡管僅使用ZKP能夠實現的隱私有限(僅個人隱私狀態),即將推出的協議爲現有解決方案增加了很多表達性和可編程性。例子包括Aleo的snarkVM, Aztec’s的AVM和Polygon的 MidenVM
  • ZK協處理器:允許在鏈上數據上進行鏈下計算(但不包括狀態)。ZKP用於證明正確執行,比樂觀協處理器結算更快,但存在成本折衷。鑑於生成ZKP的成本和/或難度,我們看到了一些混合版本,例如Brevis coChain,允許開發者在ZK或樂觀模式之間選擇(成本與保證難度之間的折衷)。

零知識證明(ZKPs)能夠解決的未解決問題

  • 集成zkVM:當前,大部分的底層網路(L1s)還是通過重新執行操作來驗證狀態是否正確轉換。如果能在底層網路中集成一個zkVM(零知識虛擬機),就能避免這種重復執行,因爲驗證者可以直接驗證證明。這樣不但能提高系統的運行效率。雖然大家最關注的是集成了zkEVM的以太坊,但實際上許多其他的生態系統也存在依賴於重復執行的問題。
  • zkSVM:盡管目前SVM(Solana虛擬機)主要在Solana的L1網路中使用,但有些團隊,如Eclipse,正嘗試利用SVM支持在以太坊上進行結算的rollups。Eclipse還計劃使用Risc Zero技術爲SVM中狀態轉換的潛在問題提供零知識欺詐證明。然而,一個完整的zkSVM還沒有被真正探索過,這可能是因爲這個問題的復雜性,以及SVM本身更多地被優化用於其他方面,而不是證明性。

4 - 數據查詢與讀取性能提升

在大多數應用中,從區塊鏈讀取數據的過程,即數據查詢,扮演着至關重要的角色。盡管近年來的討論和改進大多集中在提升寫入(即執行操作)的能力上,但由於讀取和寫入之間的不平衡性(特別是在去中心化環境中),提升讀取能力實際上更加重要。不同區塊鏈的讀/寫比例各不相同,但根據Sig基於兩年實際數據的估計,Solana節點上超過96%的調用是讀取操作——讀/寫比例達到了24:1。

提升讀取能力不僅包括通過專用的驗證器客戶端(例如Solana的Sig)來增加讀取速度(即每秒更多的讀取次數),還包括實現更復雜的查詢功能(比如結合讀取和計算),例如通過使用協處理器來完成。

另一個考慮點是如何去中心化數據查詢方式。目前,區塊鏈上的大部分數據查詢請求都依賴於受信任的第三方(基於聲譽),如RPC節點(Infura)和索引器(Dune)。一些更去中心化的選擇包括The Graph和存儲證明運營商(這些也可以進行驗證)。此外,還有一些嘗試建立去中心化RPC網路的努力,比如 Infura DIN 或者 Lava Network ((除了提供去中心化RPC服務,Lava還計劃未來提供更多的數據訪問服務)。

現有的零知識證明應用

  • 存儲證明:使用戶能夠在不依賴第三方的情況下,從區塊鏈查詢歷史和當前數據。零知識證明技術用於數據壓縮和驗證提取數據的正確性。這方面的開發項目包括Axiom, Brevis, Herodotus,和 Lagrange

ZKP 可以解決的問題

  • 更高效的私密狀態查詢:爲了增強隱私保護,許多隱私保護項目採用UTXO模型的改進版,這比傳統的帳戶模型具有更優的隱私性,但這種模型不夠對開發者友好,並可能引起同步問題。例如,Zcash 自2022年以來就因屏蔽交易量的大幅增加而面臨同步挑戰。用戶必須等錢包與區塊鏈同步後才能使用資金,這對網路的正常運作是一個基本挑戰。Aztec最近爲解決這一問題徵求了關於節點發現的建議,但尚未找到確定的解決方案。

5 - 證明

隨着越來越多應用引入零知識證明(ZKPs),證明和驗證過程已迅速成爲模塊化體系中不可或缺的一環。但目前,大部分證明基礎架構仍舊採用有權限和集中化的形式,很多應用都依賴於單一的證明提供者。

盡管集中化的方案在復雜性上較爲簡單,但是去中心化證明架構,並將其作爲模塊化體系中的一個獨立部分,能帶來多重益處。最關鍵的一點是它能提供活性保證,這對於那些需要頻繁生成證明的應用來說至關重要。用戶還能因爲競爭增加和分攤給多個證明提供者的工作量而享受到更強的抗審查性和更低的費用。

我們認爲,面向通用目的的證明者網路(多應用、多證明者)相比於單一應用證明者網路(單一應用、多證明者)更爲優越,因爲它們能更高效地利用現有硬件並且對證明者來說更簡單。更高的硬件利用率也意味着用戶能享受到更低的費用,因爲證明者無需通過提高費用來彌補冗餘(盡管仍需覆蓋固定成本)。

Figment Capital 對當前的證明供應鏈狀況進行了詳細的概述,包括證明生成和證明聚合兩個部分(證明聚合本質上也是證明生成,只不過是以兩個證明作爲輸入,而不是執行路徑)。

來源:Figment Capital

現有的 ZK 技術應用

  • STARK與SNARK結合:STARK技術具有快速且無需可信設置的優點,但其生成的證明文件較大,在以太坊L1上的驗證費用較高。通過在最後一步將STARK用SNARK封裝,可以大幅降低驗證成本。但這樣做增加了系統的復雜性,並且這種復合證明系統的安全性還未經過深入研究。目前已實施的項目包括Polygon的 Polygon zkEVM, Boojum in zkSync Era, 和 RISC Zero
  • 去中心化的通用證明網路:通過將更多應用集成到去中心化的證明網路中,不僅可以提高證明硬件的使用效率,還可以降低用戶成本(無需爲硬件冗餘支付費用)。此類項目包括GevulotSuccinct

ZKP 可以解決的問題

  • ZK欺詐證明:在樂觀模式解決方案中,任何人都可以挑戰狀態轉換並創建欺詐證明。但傳統的驗證方式需要通過重新執行來完成,這一過程較爲繁瑣。ZK欺詐證明通過創建狀態轉換的證明來解決這一問題,這樣可以更高效地完成驗證(無需重新執行),可能還能加快結算速度。這一技術正在由Optimism(與O1 Labs和RiscZero合作)和AltLayer x RiscZero等團隊開發。
  • 更高效的證明聚合:ZKP的一個重要功能是可以將多個證明聚合成一個,這樣做不會顯著增加驗證成本,從而可以在多個應用中分攤驗證費用。此類技術目前由NEBRAGevulot等項目進行開發。

來源: Figment Capital

6 - 數據發布與信息可獲取性

數據發布(DP)的目標是確保數據在短時間內(1-2周)不僅可用,而且容易獲取。這一點對於確保系統的安全性(例如,樂觀rollups需要在挑戰期(1-2周)通過重新執行來驗證交易的正確執行)和活性(比如,即便使用了有效性證明,有時仍需底層交易數據來確認資產所有權,處理緊急撤離、強制交易或核對輸入輸出是否一致)都非常關鍵。對於使用者(比如zk-橋和rollups),這涉及到一次性費用,用於覆蓋短期內存儲交易和狀態信息的成本,直到數據被清理。需要注意的是,數據發布網路並不適用於長期存儲數據(對於長期存儲的方案,請參考下一節)。

Celestia 率先推出了其主網,成爲首個替代DP層(10月31日),但隨着Avail, EigenDA,和Near DA 等預計在2024年推出,未來將有更多選擇。此外,以太坊的EIP 4844 升級增強了其數據發布能力(同時爲blob存儲創造了獨立的費用市場),並爲全面實施dank-sharding奠定了基礎。DP功能也在向其他生態系統擴展,例如 @nubit_org/riema-secures-angel-investment-for-launching-the-first-bitcoin-native-data-availability-layer-49ccf0487380">Nubit 致力於在比特幣上實現原生DP。

很多DP方案不僅僅提供基本的數據發布服務,它們還包括爲主權rollups提供共享安全性(如CelestiaAvail)或增強rollups間的互操作性(如Avail的Nexus)。還有項目(如(DomiconZero Gravity)同時提供數據發布和長期狀態存儲服務,這是一個非常有吸引力的方案。這也展示了在模塊化體系中兩個組件的再次整合趨勢,未來我們可能會看到更多這樣的嘗試,無論是進一步分解還是重新整合。

零知識證明技術的現有應用

  • 確保擦除編碼準確無誤:擦除編碼通過增加數據的冗餘度,確保即便部分數據丟失,也能恢復原始數據。這一機制對於數據可用性抽樣(DAS)尤爲關鍵,其中輕節點僅需抽樣區塊的一小部分數據,便能以較高概率確認數據的完整性。然而,如果數據的編碼過程出現惡意篡改,即使輕節點抽樣了足夠多的數據塊,也可能無法恢復原始數據。通過有效性證明(即零知識證明)或欺詐證明來驗證擦除編碼的正確性,其中後者可能會因挑戰期的延遲而受到影響。除Celestia外,其他所有方案均採用有效性證明進行驗證。
  • 利用零知識輕客戶端實現的數據橋:即使是使用了外部數據發布層的Rollups,也必須向結算層證明數據已被正確發布。這正是數據認證橋的作用所在。採用零知識證明,可以提高在以太坊上驗證源鏈共識籤名的效率。Avail的VectorX和Celestia的BlobstreamX數據認證橋,都是依托與Succinct合作構建的零知識輕客戶端來驅動的。

ZKP 可以解決的問題

  • Celestia通過引入有效性證明優化擦除編碼的準確性:在數據發布網路中,Celestia因採用欺詐證明來確保擦除編碼的正確性而獨樹一幟。如果有區塊提案者惡意地錯誤編碼了數據,其他任何完整節點都能提出欺詐證明來質疑此行爲。盡管這種方式實施起來較爲簡單,但它引入了延遲問題(區塊直到欺詐證明期結束後才被確認)並且依賴輕節點信任至少有一個誠實的完整節點來提出欺詐證明(輕節點無法自行驗證)。然而,Celestia正在考慮將其目前使用的Reed-Solomon編碼與零知識證明相結合來證實編碼的正確性,這樣做能大幅縮短確認時間。關於這個討論的最新進展可以在這裏 找到,包括先前工作組的記錄資料(以及將ZKPs加入到Celestia基礎層的更廣泛嘗試)。
  • 零知識證明的數據可用性抽樣(DAS):已經進行了一些使用零知識證明來驗證數據可用性的嘗試,在此模式下,輕節點僅需驗證默克爾根和一個零知識證明,而無需下載數據的小片段來進行傳統的抽樣。這會進一步降低輕節點的要求,但看起來相關的開發工作目前已經暫停。

7 - 數據長期(狀態)存儲

長期存儲歷史數據主要用於數據同步和響應查詢請求。然而,不是每個節點都能存儲全部數據,多數節點會刪除舊數據以維持硬件需求在合理範圍內。我們通常依賴專門的節點(如歸檔節點和索引器)來保存所有歷史數據,並按需爲用戶提供。

此外,像 FILArweave這樣的去中心化存儲提供商,提供了成本效益較高的長期存儲解決方案。盡管大部分區塊鏈沒有固定的歸檔存儲流程,這些去中心化存儲協議是存儲歷史數據並通過其網路內置激勵措施增加數據冗餘的理想選擇。

ZK技術在現有存儲中的應用

  • 存儲證明:長期存儲服務商需要定期產生零知識證明(ZKP),證明他們確實保存了所聲明的數據。例如,FIL 的時空證明(PoSt)就是一種存儲服務商通過定期驗證他們的存儲數據,以此獲得區塊獎勵的機制。

ZKP 可以解決的問題

  • 證明數據來源和查看敏感數據的授權:對於想要交換敏感數據的兩個不可信方,ZKP 可用於證明一方擁有查看數據所需的憑據,而無需上傳實際文檔或泄露密碼和日志。詳細信息。

8 - 共識機制的作用

由於區塊鏈技術基於分布式點對點系統,不存在一個被普遍信任的第三方來定義所謂的全球性真理。相反,網路中的節點通過一種被稱爲“共識”的機制來共同認定當前的真實情況(即確定哪一個區塊是正確的)。基於權益證明(PoS)的共識方法大致可分爲兩類:一是基於拜佔庭容錯(BFT)的方法,即一羣驗證者通過共識來決定最終狀態;二是基於鏈的方法,即通過分叉選擇規則來事後決定最終狀態。盡管大多數現行的PoS共識機制都是基於BFT的,但Cardano採用的是最長鏈策略。同時,基於有向無環圖(DAG)的共識機制,如Narwhal-Bullshark,也在Aleo、Aptos和Sui等平台上得到了某種程度的應用,並引起了人們的廣泛關注。

共識機制是模塊化系統中多個不同組件的核心,包括共享序列器、去中心化證明和基於區塊鏈的數據發布網路(與基於委員會的如EigenDA不同)。

零知識證明技術的現有應用

  • 在基於ZK的隱私網路中進行質押:對於基於PoS的隱私網路,質押代幣持有者面臨一個難題,即他們需要在保護隱私與參與共識(以及獲得質押獎勵)之間做出選擇。Penumbra通過一種獨特的方式應對這一挑戰,即取消質押獎勵,而是將未綁定和已綁定的質押視作兩種不同的資產,這樣既保護了個人的委托隱私,同時還能公開每個驗證者綁定的總金額。
  • 私密治理:長期以來,實現匿名投票在加密世界一直是個挑戰,Nouns Private Voting等項目正在努力推動這一進展。匿名投票同樣適用於治理領域,Penumbra等至少一個項目正在嘗試實現提案的匿名投票。在這裏,零知識證明技術可以用來證實投票者擁有投票權(例如通過代幣所有權)並且滿足了特定的投票條件(例如尚未投票)。

ZKP 可以解決的問題

  • 私人領導人選舉:以太坊目前在每個 epoch 開始時選舉接下來的 32 個區塊提議者,並且本次選舉的結果是公開的。這會帶來惡意方依次對每個提議者發起 DoS 攻擊以試圖禁用以太坊的風險。爲了解決這個問題, 是一項用於在以太坊上選舉區塊提議者的隱私保護協議的提案。驗證者使用 ZKP 來證明洗牌和隨機化是誠實執行的。還有其他方法可以實現類似的最終目標,本文涵蓋了其中一些方法 a16z 的博客文章
  • 私密領導人選舉:以太坊目前在每個時代開始時公開選舉接下來的32個區塊提案者。這種公開的選舉結果可能使得惡意方有機會對每個提案者依次發起DoS攻擊,試圖癱瘓以太坊網路。爲了應對這一問題,Whisk 提出了一個隱私保護的協議,用於在以太坊上選舉區塊提案者。在這個方案中,驗證者利用零知識證明來證實洗牌和隨機化過程的誠實性。此外,還有其他方法旨在實現類似的目標,a16z的一篇博客文章中對此進行了介紹。
  • 籤名聚合:通過零知識證明聚合籤名可以大幅降低籤名驗證的通訊和計算成本(驗證一個聚合證明而不是每個單獨的籤名)。這一策略已在ZK輕客戶端中得到應用,未來有可能進一步擴展到共識機制中

9 - 結算過程

在區塊鏈中,結算過程可視爲驗證事務正確性和解決爭議的最終環節,相當於法律體系中的最高法院。一項交易被認爲是最終性的,當它達到不可逆轉的狀態時(或在使用概率性最終性時,達到難以逆轉的程度)。達到最終性的時間依賴於所用的結算層,而這層的性能則依賴於具體採用的最終性規則和區塊時間。

特別是在跨rollup交互中,最終性的延遲成問題,rollup在能夠確認交易前需要等待以太坊的確認(樂觀rollup需要7天,有效性rollup需要12分鍾加上驗證時間)。這降低了用戶體驗。爲解決這一問題,業界正在嘗試採用具有一定安全級別的預確認方案,如Polygon AggLayer 或者zkSync HyperBridge等生態系統特定解決方案,以及Near的快速最終確定層這類通用解決方案,後者通過利用Near’s Fast Finality Layer的經濟安全性來連接不同的rollup生態系統。此外,還有使用EigenLayer進行“軟確認”的原生rollup橋梁,以避免等待完全最終確定。

現有的 ZK 應用

  • 通過有效性rollup加速結算:與樂觀rollup不同,有效性rollup不依賴挑戰期來驗證狀態轉變的正確性,而是直接利用零知識證明(ZKP)。這大大加快了在基礎層的結算速度(從以太坊的7天縮短到12分鍾),並且避免了交易的重復執行。

10 - 安全性

安全性涉及到保障措施的堅固程度,是區塊鏈價值提案中至關重要的一環。然而,建立起加密經濟的安全機制並非易事 - 它提高了進入門檻,對那些急需安全保障的應用(如各類中間件和其他第一層協議)構成了創新的阻礙。

共享安全的概念是利用現有的權益證明(PoS)網路的經濟安全基礎,並讓它面臨額外的風險(即處罰的條件),而非讓每個單獨的組件自己嘗試建立安全機制。雖然在工作量證明(PoW)網路中也進行過類似的嘗試(合並挖礦.)),但由於激勵機制不一致,礦工更容易合謀利用協議(由於工作在現實世界中進行,即利用計算力挖礦,因此更難以懲罰不良行爲)。與之相比,PoS的安全機制更爲靈活,可以被其他協議所利用,因爲它同時具有正面(質押收益)和負面(削減)激勵。

基於共享安全理念構建的協議包括:

  • EigenLayer力圖利用現有的以太坊安全機制來保護廣泛的應用程序。該項目的白皮書於2023年初發布,EigenLayer目前處於主網alpha測試階段,預計在今年晚些時候正式推出主網。
  • Cosmos在2023年5月推出了其跨鏈安全(ICS)功能,使得Cosmos Hub(Cosmos上最大的鏈之一,擁有約24億美元的質押ATOM)能夠將其安全機制租賃給其他鏈。通過使用驗證Cosmos Hub區塊的驗證者集來驗證消費鏈的區塊,旨在降低在Cosmos生態上啓動新鏈的門檻。然而,目前只有兩條消費鏈(Neutron和Stride)處於活躍狀態。
  • Babylon也在嘗試讓BTC參與共享安全。爲了解決合並挖礦中難以懲罰不良行爲的問題,它正在創建一個虛擬的PoS層,允許用戶將BTC鎖定在比特幣的一個質押合約中(無需跨鏈操作)。由於比特幣不支持智能合約,質押合約的懲罰規則通過UTXO交易在比特幣腳本中表達。
  • 在其他網路上重新質押的例子包括Near的Octopus和Solana的Picasso。Polkadot的Parachains也採用了共享安全的理念。

現有的零知識證明應用

  • 零知識證明與經濟安全的融合:雖然基於零知識證明的安全保障可能更爲強大,但對某些應用而言,證明的成本依然過高,且生成證明的時間過長。 Brevis coChain是這方面的一個例子,它是一個從ETH重質押者那裏獲得經濟安全的協處理器,樂觀地保證計算的正確性(通過零知識欺詐證明)。dApps可以根據它們對安全性和成本的具體需求,在純零知識模式和coChain模式之間做出選擇。

11 - 互操作性

在一個由多條區塊鏈構成的世界中,如何安全高效地實現互操作性一直是個棘手問題,這從價值28億美元的跨鏈橋攻擊事件中可見一斑。在模塊化系統中,互操作性尤爲關鍵——它不僅需要實現鏈與鏈之間的通信,還要讓區塊鏈內部的不同組件(如數據層和結算層)能夠相互協作。因此,不可能再像在傳統集成區塊鏈中那樣,僅通過運行一個完整節點或驗證一個共識證明來實現。這意味着在系統中引入了更多的復雜元素。

互操作性涵蓋了代幣跨鏈和更廣泛的跨鏈消息傳遞。目前有多種解決方案,各有其在安全性、響應速度和成本方面的權衡。同時滿足這三方面非常難,通常需要犧牲其中一方面。此外,不同鏈間的標準差異也使得在新鏈上的部署變得更加復雜。

目前對輕客戶端(輕節點)的不同類型定義尚不明確,但Fluent & Modular Media的聯合創始人Dino的文章對此進行了很好的介紹。當前大部分輕客戶端僅驗證共識,但理想狀態下,我們希望有能同時驗證執行和數據可用性的輕客戶端,減少依賴度,接近全節點的安全性,同時又不需要高昂的硬件支持。

現有的 ZK 集成

  • ZK輕客戶端(共識驗證):大多數現有輕客戶端能夠驗證其他鏈的共識狀態,不管是完整的驗證人集合還是部分驗證人(例如以太坊同步委員會)。通過使用ZKP技術,可以更快、更經濟地完成驗證,因爲原始鏈上使用的籤名系統可能不被目標鏈直接支持。盡管ZK輕客戶端在橋接應用中的重要性預計將增加,但目前其廣泛應用仍面臨着證明和驗證成本以及爲每個新鏈實現ZK輕客戶端的挑戰。相關協議的例子包括Polyhedra、Avail和Celestia的數據認證橋,以及zkIBC by Electron Labs
  • 存儲證明:如前所述,存儲證明可以在不使用可信第三方的情況下從區塊鏈查詢歷史和當前數據。這也與互操作性相關,因爲它們可用於跨鏈通信。例如,用戶可以證明他們在一條鏈上擁有代幣,並將其用於另一條鏈上的治理(無需橋接)。還有嘗試使用存儲證明進行橋接,例如該解決方案由 LambdaClass 開發
  • ZK預言機:預言機作爲連接現實世界數據與區塊鏈的橋梁,ZK預言機通過證明數據的來源和完整性,提高了現有基於聲譽系統的預言機模型的安全性和可靠性。

ZKP 可以解決的問題

  • 全功能輕客戶端:全功能輕客戶端不僅僅是信任其他鏈的驗證者集,它還會檢查執行和數據的準確性。這樣做可以減少對信任的依賴,使其性能更接近全節點,同時保持較低的硬件需求,讓更多人能夠運行輕客戶端。然而,在大多數鏈上,特別是在以太坊,驗證共識之外的內容仍然成本高昂。而且,輕客戶端雖然能驗證信息的真僞,但若信息被識別爲虛假,還需要額外的機制來處理這一問題。
  • 聚合層:Polygon 的 AggLayer通過聚合證明和統一的橋接合約,旨在實現生態系統內不同L2之間的順暢互操作性。聚合證明不僅提高了驗證的效率和安全性,還確保了依賴的鏈狀態和數據包的一致性,保證了基於其他鏈無效狀態的rollup狀態不能在以太坊上進行結算。zkSync的HyperChainsAvail Nexus 也在採用類似的方法,推動了鏈間互操作性的發展。

當零知識證明徹底改變模塊化技術架構時會發生什麼?

設想一下,如果生成零知識證明(ZKPs)的速度極快(幾乎達到光速)且成本極低(幾乎爲零),那麼最終的局面會是怎樣的?也就是說,零知識證明何時會徹底改變模塊化技術架構?

總的來說,我們認爲在這種情況下會有兩個顯著的變化:

  1. 所有不必要的重復執行將被消除:通過採用1/N的執行模式(而不是N/N的重復執行模式),我們能大幅降低網路的整體冗餘性,從而更高效地利用底層硬件資源。盡管還會有一些額外開銷,但這將使區塊鏈在計算效率上更加接近中心化系統。
  2. 大部分應用將依賴零知識證明提供的加密保障,而非經濟安全:當生成證明的時間和成本不再是問題時,我們認爲大多數應用會選擇依賴ZKPs來獲得更強的安全保障。當然,這也意味着需要在易用性和開發者友好度上進行改進,以便構建零知識證明應用,不過這正是多個團隊正在努力解決的問題。

    還有一個關於隱私(或信息流管理)的復雜條件,零知識證明可以被用於一些客戶端證明的隱私應用,這正是像Aleo、Aztec或Polygon Miden等平台正在開發的功能,但要實現廣泛的隱私保護,還需要依賴於多方計算(MPC)和全同態加密(FHE)等技術的進步,這可能是未來博客文章的一個話題。

面臨的風險

如果我們的預測錯誤,未來既不採用模塊化技術架構也不普遍應用零知識證明技術,會怎樣呢?我們的觀點面臨的一些潛在風險包括:

模塊化增加了復雜性

隨着鏈的數量不斷增加,用戶和開發者都面臨挑戰。用戶需要在多個鏈(可能還要管理多個錢包)上管理資金,而應用開發者則面臨穩定性和可預測性較低的問題,這使得他們很難決定應該在哪個鏈上進行開發。他們還必須考慮到狀態和流動性的碎片化問題。這一點在當前尤爲突出,因爲我們仍在探索哪些組件適合解耦,哪些應重新耦合。我們認爲,簡化用戶操作和提供安全高效的互操作解決方案是解決這一問題的關鍵。

零知識證明技術能否達到實用的性能水平?

一個無法避免的問題是,目前生成零知識證明的過程既耗時又成本高昂。對於當前許多應用來說,信任執行環境(TEEs)針對隱私保護的解決方案,或者是基於樂觀/加密經濟的安全方案在成本上更爲合理。

不過,針對零知識證明的軟件優化和硬件加速方面正在進行大量的工作。通過證明聚合,即將成本分散到多個參與方,可以進一步降低驗證成本,從而降低每位用戶的成本。此外,還有可能對底層技術進行調整,以更好地適應零知識證明的驗證。但是,零知識證明在硬件加速方面面臨的一個挑戰是,證明系統的快速進化使得專用硬件(ASICs)的開發變得復雜,因爲一旦底層證明系統的標準發生變化,這些硬件很快就會過時。

Ingonyama嘗試通過一個叫做ZK分數的比較指標來衡量證明性能,該指標基於運行計算的操作成本(OPEX),並追蹤每瓦特的模數乘法操作次數(MMOPS)。想要深入了解這一主題,我們推薦閱讀 @Cysic/BJQcpVbXn?ref=blog.succinct.xyz">Cysic和 @ingonyama/revisiting-paradigms-hardware-acceleration-for-zero-knowledge-proofs-5dffacdc24b4">Ingonyama的博客,以及Wei Dai的演講。

零知識證明提供的隱私保護是否足夠?

零知識證明技術只能用來保護個人的隱私狀態,而無法用於需要多方在加密數據上進行計算的共享狀態(例如一個私有的Uniswap)。要實現完全的隱私保護,還需要全同態加密(FHE)和多方計算(MPC)技術的支持,但這些技術在成本和性能上還需要大幅提升才能廣泛應用。盡管如此,對於那些不需要共享私有狀態的特定場景,如身分驗證或支付,零知識證明仍然是一個有用的工具。不是所有的問題都必須用同一種方式來解決。

總結

我們目前的情況如何呢?盡管我們正在取得一天天的進展,但仍有大量工作待完成。最迫切需要解決的問題是,如何在保持速度和成本效率的同時,確保不同模塊化組件之間能夠安全地交換價值和信息,並且如何讓這一切對最終用戶透明,避免他們需要處理跨鏈操作、錢包切換等技術細節。

目前我們還處於探索階段,但隨着我們逐漸明確每個應用場景中最佳平衡點的位置,局勢將逐步穩定。這將爲形成標準(無論是非正式的還是正式的)提供機會,爲在這些區塊鏈上構建的開發者提供更多穩定性。

雖然本文特別聚焦於零知識證明,我們也對現代密碼學解決方案(包括ZKPs、多方計算(MPC)、全同態加密(FHE)和可信執行環境(TEE))如何協同工作表示出越來越多的興趣——這是我們已經開始見證的現象。

雖然這篇文章特別關注 ZKP,但我們也越來越感興趣現代密碼學解決方案(ZKP、MPC、FHE 和 TEE)最終將如何一起發揮作用 - 我們已經看到了這一點。

感謝您的閱讀!

聲明:

  1. 本文轉載自 [equilibrium],著作權歸屬原作者[Hannes Huitula],如對轉載有異議,請聯系Gate Learn團隊,團隊會根據相關流程盡速處理。
  2. 免責聲明:本文所表達的觀點和意見僅代表作者個人觀點,不構成任何投資建議。
  3. 文章其他語言版本由Gate Learn團隊翻譯, 在未提及Gate.io的情況下不得復制、傳播或抄襲經翻譯文章。
Comece agora
Registe-se e ganhe um cupão de
100 USD
!