原文作者: Ethereum
創作者:Xinyang
審核者:DAOctor
原文: The Risks of LSD
自從 ETH2 提上日程後,人們就 sharding(分片)討論了很長時間。danksharding 提出後,社區似乎對數據分片達成了共識,將執行權留給了 L2(各種 Rollup),而最初的多委員會(multi-committee)執行分片(execution sharding)設計由於其復雜性而很少被談論。但我認爲執行分片仍需深入研究,它的一些屬性仍然可以使用,尤其是它的安全模型。
在這篇文章中,將提出 Collaborative Rollup,一種新型的 Rollup,它基於從執行分片方案派生的多委員會,因此具有相同的安全模型。與 ZK Rollup 相比,它可以輕松地完全兼容 EVM,而 zkEVM 仍然很難解析一些操作碼。與 Optimistic Rollup 相比,Collaborative Rollup 不需要一段長時間的挑战期。
Collaborative Rollup 的關鍵組件包括生產者節點(PN)、背書節點(EN)、管理合約(MC)和狀態合約(SC)。
人們可以質押代幣並將其公鑰(BLS)注冊到 MC ,成爲 PN 或 EN。我們將根據質押數量選擇前 N 個 EN,並通過 RANDAO 或 VRF 等可信任的隨機來源將它們隨機分發到 M 個委員會中。委員會的信息也由 MC 管理。
PN 以數據包的形式收集 L2 交易,通過在 EVM 中運行交易生成執行結果,並將結果發送給 EN 委員會進行背書。EN 通過在其本地 EVM 中實際執行交易來驗證結果。如果結果有效,EN 籤署結果作爲背書並廣播它們。委員會中收集到至少 2/3 EN 的背書的,可以將這些 BLS 籤名聚合爲證明,並像其他 Rollup 一樣將執行結果、證明和交易提交到鏈上。
如上所述,Collaborative Rollup 的安全模型依賴於隨機委員會的背書,就像 ETH2 原來討論的執行分片一樣。衆所周知,單個節點不能被信任,而一組隨機選擇的節點卻可以。如果我們假設少於 1/3 的節點是惡意的,並且委員會的多數是 2/3,那么只有當惡意節點無法在單個委員會中獲得多數時,才能保持安全。
接下來,我們將估計惡意節點在委員會中獲得多數席位的概率。設 N 是總節點的大小,其中 K 個是惡意的。n 是委員會大小, k 是對手大小,因此一個委員會中惡意節點數量的概率分布可以建模爲超幾何分布:
所求的概率
遵循累積超幾何分布,當 很大時,它會降級到二項分布:
其中 p 是 1/3。我們可以看到,當 n 足夠大時,惡意節點在委員會中獲得多數席位的概率可以忽略不計。這裏,“多數”可以理解爲 POS 中的質押份額。下面列舉一些概率情形:
另一方面,如果一個包含非法驗證的背書被某個故障節點籤名,無論它是否可以獲得足夠的籤名來提交給 L1,籤名的無效背書本身都可以被視爲欺詐證明並提交給 L1 以懲罰籤名節點,這是一種 1-of-N 信任模式。
L2 中的狀態可以組織爲一棵 Verkle 樹,它使用 KZG 作爲其狀態承諾,也像 MPT 一樣實現 trie。因此,狀態根是整棵樹的承諾。我們在這裏使用 Verkle 樹,因爲它的 proof 比 Merkle 樹小。給定 N 個葉子的 k-ary 樹,則是
PN 在其本地 EVM 中執行交易後,我們可以獲得輸入狀態、輸出狀態和輸出狀態根。那么執行結果可以作如下呈現:
執行結果包括背書費用信息,最後狀態根,結果的狀態根,交易的 Merkle 根,以及相關的輸入狀態和 Verkle 證明,屬於最後狀態根輸出狀態的 Verkle 路徑,需要執行的交易,以及上面三個根的籤名和背書費用信息。
當 EN 接收到一個合格的 PN 產生的執行結果時,它首先檢查它是否具有最後狀態根,然後驗證輸入狀態的 Verkle 證明以及輸出狀態的路徑。如果以上所有內容都有效,我們將擁有一個包含所有所需狀態的部分狀態樹。之後,檢查交易的 Merkle 根並在該狀態樹頂部使用本地 EVM 運行所有交易以生成輸出狀態樹。最後,檢查輸出狀態樹的根是否與執行結果中的根相等。如果爲真,則通過對執行結果中三個根的數據進行籤名來生成背書,並且值爲 1。否則,EN 只對與上述內容相同的數據籤名,但值爲 0。
任何籤名的 EN,收到來自 2/3 委員會的背書的,可以將背書中的籤名聚合爲一個以形成最終背書,並將其提交給 L1,由合約調用交易,就像其他 rollup 一樣。L1 鏈通過驗證籤名以及背書中交易的 Merkle 根來檢查背書。如果它們都有效且狀態爲 1,則將接受 rollup 交易並將狀態根設置到狀態合約 SC。
如上所述,承諾到 L1 的交易費用將由 EN 支付。還有一點需要說明的是,在發送給 EN 進行背書的執行結果中有背書費用信息。SC 中的每個 PN 都有一個背書費用帳戶,用於支付該費用。EN 將檢查账戶余額以確定是否足以支付要背書的執行結果中設定的費用。一定比例的背書費用會被支付給成功將背書交易發送到 L1 的EN,所有籤署背書的 EN(包括發送交易的)將平分剩余的費用。
背書費用信息也可以設計爲包括 GAS_PRICE 和 GAS_LIMIT 。無論執行結果是否有效,SN 都可以收集委員會 2/3 的籤名,承諾到 L1,並收取背書費。
另外,如上所述,這裏有一個漁夫機制。任何無效的背書,無論是否已承諾到 L1,都可以作爲惡意證明並由任何節點發送到 L1。支持錯誤背書的 EN 的質押將被削減,一部分削減的質押將作爲激勵提供給證明發送節點。
標題:DAOrayaki |Collaborative Rollup:無需 ZK EVM的更快確定性提案
地址:https://www.torrentbusiness.com/article/12181.html
標籤: