Rollup排序器去中心化:技術趨勢與前沿方案解析

2024-08-01 16:08:38

前言

排序器(Sequencer)是以太坊擴容方案 Rollup 中的核心組件之一,負責對交易進行排序,並執行區塊創建、交易接受、交易排序、交易執行以及交易數據提交等相關任務。隨着以太坊網絡 Layer 2 解決方案的不斷增加及其生態系統的蓬勃發展,Layer 2 的盈利模式和中心化問題日益受到關注。尤其是在 Rollup 中,如何實現排序器的去中心化以及排序器利潤的分配機制,成為大家關心的熱點話題。

什么是排序器?

排序器,顧名思義,是負責對交易進行排序的角色。在比特幣網絡中,交易排序的職責由礦工負責;在以太坊網絡中,這一職責由節點集合承擔。這些角色並非固定,而是通過共識機制來確定誰有權參與交易的順序執行。

目前,主流的 Rollup 方案大多運行中心化的單一排序器。用戶在 Layer 2 (L2)的交易首先進入 mem 池(此時交易是無序的)。排序器將這些交易進行排序、壓縮成一組有序的批次,然後發送到以太坊的數據可用性(DA)層。

中心化 VS 去中心化

去中心化排序器賽道概覽

去中心化排序器可以通過兩種方式實現:一種是由 Rollup 項目方自行开發,另一種是借助第三方服務。借助第三方實現去中心化排序器,通常被稱為 Sequencing-as-a-Service(排序即服務)。

目前,有多個項目專注於去中心化排序器方案,包括 Espresso、Astria、SUAVE、Radius 等。盡管它們的實現路徑各不相同,但目標都是為了提升排序器的去中心化程度和可靠性。

Espresso

在 Espresso 排序器的排序機制下,L2 交易大致經歷以下生命周期:

  • 交易發送: 用戶在二層網絡上發生的交易通過 API 發送到 Rollup 服務器。

  • 交易排序: 交易進入 mem 池後,排序器通過 HotShot 共識選舉對交易進行排序,並將其包含在一個區塊中。

  • 交易廣播與確認: 排序器將排序後的交易廣播出去,其他節點通過 HotShot 共識達成共識後出塊,交易被執行。同時,軟承諾機制提供快速的交易確認。

  • 區塊承諾: 排序器將包含交易的區塊承諾及其共識證書(QC:Quorum Certificate)發送並存儲在 L1 排序器合約中,證明該區塊通過共識達成軟最終性。

  • 狀態更新: 已執行該區塊的 Rollup 節點將新的 Rollup 狀態發送到 L1。在 zkRU(零知識 Rollup)情況下,需要附帶有效性證明,而在 ORU(優化 Rollup)情況下則會進入挑战期。

  • 狀態驗證: L1 Rollup 合約通過驗證排序器合約發送來的 QC,檢查狀態更新的有效性。

這個流程可以簡化理解為:

  • 交易排序與區塊創建: 在一組排序器中,通過 HotShot 共識機制選出一個排序器,它負責對 Rollup 交易進行排序,並將這些交易包含在一個區塊中。

  • 共識與區塊承諾: 該區塊必須由其他的 Rollup 節點籤署並達成共識(至少 2/3 的 HotShot 節點同意)才具有「最終性」。然後,相關的區塊承諾和新的 Rollup 狀態根提交給 L1 基礎層進行驗證。

  • 快速確認與最終性: 「最終性」帶引號是為了讓 Rollup 交易更快地確認,減少延遲,提升用戶體驗。然而,Rollup 交易最終還是要由 L1 基礎層進行驗證(zkRU 需要驗證有效性證明,ORU 需要等待挑战期結束)。如果 L1 驗證交易沒有問題,此時 Rollup 的交易才具有真正的最終性。

  • 潛在回滾: 如果 L1 驗證發現交易無效,相關的已出塊的 L2 區塊將面臨回滾。因此,「最終性」是為了讓交易快速確認,而最終性是為了繼承以太坊的安全性。

Astria

Astria 的定位是提供通用、無需許可的去中心化排序器,為不同的 Rollup 提供开箱即用的共享排序器服務。

運行機制

Astria 的去中心化排序器運行機制與 Espresso Sequencer 類似,目的是通過將交易排序的權利下放來減少排序者的特權。具體來說,Astria 提出了兩種針對排序器的輪換機制:

  • 領導者輪換(Leader Rotation): 這是一種簡單的輪換機制,通過預定的規則或時間間隔在排序器之間輪換領導者,從而分散排序權力。

  • 拜佔庭容錯(BFT)共識算法: 這是一種更加復雜和安全的機制,允許在存在惡意節點的情況下仍能達成共識。通過這種算法,多個排序器共同參與決策,確保系統在遭受一定數量的節點故障或攻擊時仍能正常運行。

領導者輪換

通過選舉產生的排序器組成一個集合,集合中的排序器輪流對 Rollup 交易進行排序。這種方式避免了單一排序器長時間壟斷交易排序權的問題,並在一定程度上解決了對用戶持續審查的隱憂。

SUAVE

SUAVE 是由 Flashbots 开發的去中心化、即插即用的共享排序器解決方案。作為一個通用平臺,SUAVE 能夠為各種 L1/L2 網絡提供內存池管理和去中心化的區塊構建功能。與傳統共享排序器設計不同,SUAVE Chain 是一條 EVM 兼容鏈,它通過區塊“競標”的機制實現交易排序。

SUAVE 架構

SUAVE 的架構由三個核心組件組成:通用偏好環境、最佳執行市場和去中心化區塊構建。

  • 偏好環境

  • SUAVE 的偏好環境廣泛涵蓋了從簡單交易到復雜事件的各種需求。用戶的交易偏好會以交易形式反映在內存池中,偏好環境作為一個公共的內存池將這些偏好匯總起來。SUAVE 提供的通用偏好環境不僅使多鏈用戶的偏好變得公开透明,還有效減少了信息不對稱,並在一定程度上緩解了跨鏈 MEV 問題。

  • 執行市場

  • 執行市場由一群執行者組成,他們負責監聽 SUAVE 的內存池並相互競爭。競爭驅動這些執行者為用戶的偏好提供最佳執行方案。可以將這些執行者視為通過“競標”方式來實現用戶需求的參與者,他們力求將產生的 MEV 盡可能多地返還給用戶。

  • 去中心化區塊構建

  • 最後,基於收集到的偏好數據和最佳執行路徑,去中心化區塊構建網絡會將這些交易信息打包到區塊中,完成從交易發現、排序到區塊出塊的整個過程。

Radius

Radius 的定位是一個無需信任的共享排序層。與前述方案的實現機制不同,Radius 通過引入加密內存池(encrypted mempool)來確保 Rollup 交易的排序過程無需信任。這種方法有效消除了 MEV 和用戶交易審查的問題,從而保障了交易的公正性和透明性。

盡管像 Espresso 和 Astria 等基於共識機制的去中心化排序器在一定程度上減少了 MEV 和審查風險,但它們通常以犧牲網絡可擴展性和時間效率為代價,從而導致交易確認延遲(因為需要就交易排序達成共識)。此外,雖然這些排序器在去中心化環境中運行,由於內存池中的交易信息是公开透明的,排序器仍然可能存在惡意攫取 MEV 的風險。Radius 通過引入加密內存池(encrypted mempool),確保排序器無法看到相關交易信息,旨在從根本上解決排序器惡意攫取 MEV 和審查交易的問題。

技術架構

Radius 的技術架構分為四個主要功能層級:排序層(Radius)、執行層(Rollup)、結算層和數據可用性層。

  • 排序層

  • 用戶將加密交易及其證明提交給排序器。

  • 排序器驗證這些證明及交易的有效性。

  • 排序器在解密交易之前對交易進行排序。

  • 排序器構建一個區塊。

  • 排序器將構建好的區塊提交給 Rollup 執行層。

  • 執行層

  • Rollup 接收排序器提交的區塊,並按照指定的順序執行交易。

  • Rollup 將交易狀態及狀態證明提交至結算層。

  • 結算層

  • 結算層負責接收和驗證來自 Rollup 的狀態和狀態證明,以確認交易的最終性。

  • 結算層確保交易執行符合排序層指定的順序。

  • 數據可用性層

  • 數據可用性層負責存儲數據並確保這些數據的可用性。

mempool 的加密機制 - PVDE

Radius 採用基於零知識證明的加密方案“實用可驗證延遲加密”(PVDE)來實現加密內存池(mempool)。這一機制確保了交易在排序過程中保持加密狀態,增加了交易處理的安全性。

具體流程如下:

  • 用戶提交交易

  • 用戶生成一個時間鎖謎題和一個對稱密鑰。

  • 用戶使用對稱密鑰對交易進行加密,加密後的交易進入內存池(mempool)。

  • 排序器處理交易

  • 排序器對加密交易進行排序,但在解鎖時間鎖謎題之前無法獲取解密密鑰。

  • 排序器在解鎖時間鎖謎題前,計算訂單承諾,並將該承諾提交給結算層。這一承諾用於驗證排序器是否按照順序將交易提交給 Rollup 執行層。

Metis

Metis 是首批實踐去中心化 PoS 排序器的 Layer 2 網絡,為未來的發展提供了一個重要的範本。這個範本不僅實現了排序器的去中心化,還提供了基於 PoS(權益證明)的去中心化 Optimistic Rollup 解決方案。在該範本中,Metis 的去中心化 PoS 排序器包括三個主要角色:管理員、排序器和 PoS 共識層。

在傳統的 Rollup 模型中,單一的 Sequencer 雖然能有效處理交易和數據,但也集中權力,可能引發多種風險:

  • 操作風險: 如果 Sequencer 發生故障或遭受攻擊,整個系統的交易處理將被阻斷。

  • 審查風險: Sequencer 能夠選擇性處理或拒絕交易,這可能限制用戶訪問特定的去中心化金融(DeFi)協議或服務。

  • 操縱風險 :Sequencer 在交易排序中可能優先處理自身交易,通過提高交易費用獲取不正當利益,即最大可提取價值(MEV)。

為了解決這些問題,Metis 設計了一個去中心化的 Sequencer 池,由多個 Sequencer 節點共同完成交易的聚合、排序和執行。這一設計確保了系統的公正性和透明度:

  • 共識機制: 超過三分之二的 Sequencer 節點必須對每個新區塊的狀態達成共識,之後才能將交易批次提交到以太坊主網(L1)。

  • 多方計算(MPC)籤名: 在交易批次提交到 L1 之前,通過 MPC 籤名驗證批次的真實性,確保數據的准確性。

去中心化 Sequencer 的優勢:

  • 增強安全性: 通過多個節點共同決策,降低了單點故障的風險,提高了網絡的魯棒性和安全性。

  • 降低審查和操控的可能性: 多個 Sequencer 的存在使得單一節點難以操控或審查交易,保護用戶的交易自由。

  • 穩定性和冗余: 支持 Sequencer 的平滑輪換,最小化故障或中斷的影響,提高了整個網絡的穩定性。

在 Metis 的去中心化 Sequencer 模型中,每個節點由幾個關鍵組件組成:

  • L2 Geth(包括 OP-Node): 負責交易排序和區塊組裝。

  • 適配器模塊: 作為與其他外部模塊(主要是 PoS 節點)交互的中介。

  • 批次提交者(Proposer): 負責構建交易批次並在獲得多個 Sequencer 的認可後提交到 L1。

  • PoS 節點: 在以太坊、共識和 Metis 層之間進行協調,確保資產的安全鎖定並獎勵驗證者。

  • 共識層: 由與以太坊主網並行運行的 Tendermint PoS 節點組成,確保操作效率而不妨礙主網的進程。

L2 Geth(包括 OP-Node)

主要代碼為https://github.com/MetisProtocol/mvm fork optimism

主要是修改了兩部分

  1. 區塊組裝:mvm\l2 geth 服務代碼,加入了 applyTransactionToTip 處理邏輯,以此判斷當前 sequencer 是否應組裝當前區塊。

  2. 交易排序:修改原 op-node 代碼,借助 MPC 共識層的適配器模塊,獲取輪換列表與區塊高度對應的當前排序器的位置,來檢查自己是否為當前有效排序器。

Sequencer 輪換

  • 輪換信息存在L2 MetisSequencerSet 合約中,信息由共識層(PoS 節點)控制

  • 每個 epoch,共識層更新 Sequencer 信息,經過 MPC 籤名,發起交易,更新合約 Sequencer 列表

  • 每個 epoch,根據合約 Sequencer 列表信息,輪流當職

  • 違規:未及時,或者產生錯誤交易(兩筆相同 L2 TxID),PoS 層會選擇新的 Sequencer,{構造 ReselectSeqencer 交易 + MPC 籤名},新的 Sequencer 會在L2上發起當前 TxID 的交易,同時新的 Sequencer 也會更新到 MetisSequencerSet 合約 {沒有懲罰機制}

  • 觸發更新:收到常規交易,並且達輪換間隔,會暫停當前常規交易,執行 MetisSequencerSet.sol 合約更新交易,然後 PoS 層選擇將執行當前常規交易的新排序器。

  • 加入:POS 合約,部署在L1,任何人,抵押 metis,申請成為 sequencer。當達到上限,進入等待隊列

  • 獲得一個 NFT

  • 禁止直接轉移,可通過 LockingPool 合約->updateSigner 更換籤名者,轉移 NFT

  • NFT 的 tokenId 對應 sequence id

  • 替換:當 sequencer 長期處於不健康狀態,將被踢出,並由候補替換

  • 退出:

  • 銷毀 NFT

  • update:通過 LockingPool 合約->updateSigner 更換籤名者,轉移 NFT

  • 選擇: 加權隨機選擇算法

MPC 模塊

負責管理多重籤名密鑰的整個生命周期

  1. 多重籤名生成

  2. 密鑰重新共享

  3. 應用籤名

  4. 刪除籤名

  5. 提供對多種多重籤名異步使用的支持

處理流程

第 1 階段:通知 MPC 節點做好准備

  • 在本地生成一個隨機數 sessionID;

  • keyGenPrepare 使用p2p網絡將消息廣播到所有 MPC 節點;

  • 每個 MPC 節點收到 keyGenPrepare 消息後,啓動各自的處理 goroutine;

  • 根據 檢查本地數據(數據是指 TSS 模塊是否存儲了該 id 對應的 mpc 信息)keyId;

  • 如果狀態中已有數據 READY,則直接從存儲中返回數據,無需繼續操作 keyGen;

  • 如果已經存在具有 PENDING 狀態的數據,則返回錯誤,以避免由於並發執行不同的密鑰生成調用而導致密鑰生成不一致;

  • 建立p2p通信通道;

  • 將消息返回 keyGenReady 給發起節點;

第二階段:啓動 keyGen 流程

  • 發起節點等待接收 keyGenReady 來自所有節點的消息;

  • 一旦發起節點收到 keyGenReady 來自所有節點的消息,它就會 keyGenStart 使用 p2p 網絡將消息廣播到所有 MPC 節點;

  • 收到 keyGenStart 消息後,每個 MPC 節點:

  • 在本地構造一個 LocalParty 實例;

  • 开始從其他節點接收信息

展望

區塊鏈排序器的發展前景充滿了激動人心的變革。隨着區塊鏈生態系統的不斷演進,排序器將經歷從中心化到更加分散、高效和適應性強的解決方案的重大轉變。這一變革對提高以太坊生態系統的交易效率、可擴展性和安全性至關重要。

去中心化是加密貨幣的核心哲學。通過共享排序網絡,經濟機制能夠有效地解決價值累積和收入分配的問題。隨着排序器模塊化構建和开發框架的日益成熟,未來這些技術將成為行業發展的強大催化劑,推動區塊鏈生態系統向更加創新和高效的方向邁進。

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。

推薦文章

動區週報:比特幣衝刺十萬大關、SEC 主席辭職、微策略再加倉BTC..

本週(11/17-11/23)重要大事速覽 比特幣動態 :比特幣價格接近 10 萬美元 ,市值「...

Arthur Wang
4 2小時前

以太坊突破3400美元後蓄勢待發?分析師看法與ETH巨鯨動態整理

比 特幣今(23)日清晨持續發力最高來到 99,588 美元,雖然隨後賣壓湧現回落至 98,500...

Editor Jr.
4 2小時前

IKEA:當前消費環境更像2008金融危機後,客戶錢包大幅縮水

美 國經濟目前消費者信心仍算穩定、勞動力市場甚至有一點加溫的跡象,葉倫也多次表示經濟正逐步走向「軟...

Editor Jr.
4 2小時前

Beam Chain將給以太坊帶來五大新變化?

衆所周知,以太坊誕生於 PoW 工作量證明, 2021 年成功轉為 PoS 權益證明。對此,以太坊...

星球日報
4 2小時前

Meme修煉手冊:幾點是Meme神盤的黃金時間?

原創 | Odaily星球日報( @OdailyChina ) 作者|南枳( @Assassin_...

星球日報
7 18小時前

把握下一個千倍幣,Meme玩家必備掃鏈工具指南

最近一飛衝天的 meme 太多,風起雲湧一飛衝天的 meme 層出不窮。無論是賽道、還是想象空間,...

星球日報
7 18小時前