委託執行分片 (DES):一種用於實現理論上最佳執行層擴展性的高度並行化 zkEVM

委託執行分片 (DES):一種用於實現理論上最佳執行層擴展性的高度並行化 zkEVM

Ethereum Magicians·

我提出委託執行分片 (DES) 的構想,透過遞迴 SNARK 聚合與基於委員會的委託機制來實現以太坊執行層的並行化,旨在利用整個網路的運算資源來達成理論上最佳的擴展性。

我一直在研究關於 Lean 規範的內容,特別是 Lean-Multisig;顯而易見的一點是,後量子(PQ)安全性被列為首要任務,但同時為了 XMSS 簽名聚合,一個「極簡 zkVM」也正在開發中,而不是在現階段直接追求完整的 zkEVM 規範。

在我看來,多重簽名 SNARK 化(multisig-snarking)具有一些有趣的影響:

Lean 並非像 BLS 那樣透過配對(pairings)進行密碼學聚合,而是實際計算所有簽名,但將這些計算的有效性證明為一個聚合體;這提供了 SNARK 的簡潔性。

由於聚合是遞歸進行的,簽名驗證實際上在簽名委員會中是並行化的,這與基於配對的聚合在範式上有所不同——後者僅是密碼學驗證,而非計算證明。

這在單槽最終性(SSF)的背景下經常被提及,有了這種 BLS 所不具備的效率水平,SSF 才變得可行。

我發現沒人討論的一點是,這在實際上已經將信標鏈(beacon-chain)的執行並行化了,而這種可能性所帶來的影響實際上是驚人的;請容我嘗試解釋我的想法:

執行鏈與共識鏈在概念上的分離,部分歸因於其不相連的性質:信標鏈計算共識引擎的權益證明(PoS)和數據可用性採樣(blob-verification),而執行鏈的狀態轉換函數(STF)則計算 EVM 和世界狀態;兩者實際上是獨立的狀態機,而信標機封裝了以太坊虛擬機。

將共識引擎並行化是一件大事,因為它帶來了極高的擴展性;在某種程度上,SSF 是共識層上的無限擴展。現在問你自己一個問題:如果透過計算證明的遞歸聚合實現的理論上最優擴展性,可以應用在執行層上,那會是什麼樣子?理論上,那將是一個完全槓桿化所有可用計算資源的網絡。

這種並行化之所以在信標鏈上可行,是因為驗證者簽名不具備上下文(context):一個簽名的有效性/存在與所有其他簽名的有效性/存在是相互獨立的,因此它們可以無限並行化,因為它們永遠不會衝突,從而可以在不相連的處理器上計算。相比之下,執行層 STF 的完美並行化則具有挑戰性,因為世界狀態是一種上下文,可能會在不同的計算中產生衝突,但我們能走多遠呢?

BALs 的存在證明了 EVM 的並行化是有益的,但可以並行化的狀態更改數量上限在哪裡?無論你如何優化不相交交易(disjoint transactions)的並行化,最終都會達到 CPU 線程耗盡的點;如果那時不相交的執行轉移到其他節點呢?以下是它在實踐中可能的運作方式:

每個時隙(slot)建立一個包含列表(inclusion-list),可能類似於 EIP-7805;該列表定義了表示「執行列」(execution-column)的元數據,特定的交易會落入其中;這些列包含的所有交易在副作用上都是不相交的,因此可以與其他列的交易並行執行。可以將其想像為根據副作用等價關係將交易劃分為等價類。然後可以使用 APS 風格的委託來選擇「執行委員會」來執行包含列表中特定的交易列。與目前的 Lean-Multisig 類似,這些計算被 SNARK 化,這些 SNARK 由委員會領導者(或任何成員)聚合並發送給區塊提議者,提議者再將委員會的 SNARK 遞歸聚合為進一步的 SNARK,以證明整個區塊的執行有效。

這實際上消除了目前網絡中存在的上限,即為了去中心化,任何家用電腦都需要能夠重新執行任何其他區塊;即使在完全 SNARK 化的情況下這也是成立的,因為提議者仍然需要能夠完全執行自己的區塊。

我認為,如果你將此與 EIP-4444 和 EIP-7736 的歷史與狀態過期、完全數據可用性採樣(DAS)以及類似 Verkle 樹的技術相結合,你就有可能在數據層和執行層上槓桿化幾乎整個網絡的資源,從而實現理論上的最優擴展性。你甚至可以透過實施新的 Gas 計算來進一步優化,根據交易的可並行化程度來增加成本,這樣用戶實際上是在為訪問世界狀態中更活躍的部分付費。值得注意的是,這種多線程 Gas 本可以防止像 DAO 這樣累積了以太幣總供應量中錯誤比例的情況,因為隨著越來越多的用戶開始修改世界計算機中的相同狀態,用戶將不得不支付越來越高的 Gas 成本;根據交易的可並行化程度支付 Gas 成本,從而激勵了帳戶抽象和使用自己的代碼,這加強了去中心化。

本質上,區塊鏈的困境在於任何一個節點都必須能夠實時跟隨整個網絡的執行,因為你唯一能真正信任的執行是發生在你自已 CPU 上的執行;透過 zkEVM 並行化,你可以利用簡潔證明來證明在並行執行鏈的不信任節點上的執行有效性,從而解決這個瓶頸,實現理論上的最優擴展性。

感謝閱讀。

        1 則貼文 - 1 位參與者

        [閱讀完整主題](https://ethereum-magicians.org/t/delegated-execution-sharding-des-a-hyper-parallelized-zkevm-for-theoretically-optimal-execution-layer-scalability/28290)

Ethereum Magicians

相關文章

其他收藏 · 0