📢 Gate廣場 #创作者活动第一期# 火熱開啓,助力 PUMP 公募上線!
Solana 爆火項目 Pump.Fun($PUMP)現已登入 Gate 平台開啓公開發售!
參與 Gate廣場創作者活動,釋放內容力量,贏取獎勵!
📅 活動時間:7月11日 18:00 - 7月15日 22:00(UTC+8)
🎁 活動總獎池:$500 USDT 等值代幣獎勵
✅ 活動一:創作廣場貼文,贏取優質內容獎勵
📅 活動時間:2025年7月12日 22:00 - 7月15日 22:00(UTC+8)
📌 參與方式:在 Gate 廣場發布與 PUMP 項目相關的原創貼文
內容不少於 100 字
必須帶上話題標籤: #创作者活动第一期# #PumpFun#
🏆 獎勵設置:
一等獎(1名):$100
二等獎(2名):$50
三等獎(10名):$10
📋 評選維度:Gate平台相關性、內容質量、互動量(點讚+評論)等綜合指標;參與認購的截圖的截圖、經驗分享優先;
✅ 活動二:發推同步傳播,贏傳播力獎勵
📌 參與方式:在 X(推特)上發布與 PUMP 項目相關內容
內容不少於 100 字
使用標籤: #PumpFun # Gate
發布後填寫登記表登記回鏈 👉 https://www.gate.com/questionnaire/6874
🏆 獎勵設置:傳播影響力前 10 名用戶,瓜分 $2
站在Celestia的視角解析Rollup:6種變體的審查抗性和活性
作者:NashQ,Celestia研究員
原文標題:重新定義排序器:了解聚合器和標頭生成器
編譯:Faust,極客Web3
譯者註:出於讓Rollup模型更容易理解、更方便剖析的目的,Celestia研究員NashQ**將Rollup的定序器(Sequencer)分成了兩個邏輯實體——聚合器和Header生成者。同時,他將交易排序過程分為了三個邏輯步驟:包含、排序和執行(inclusion, ordering, and ution)。 **
在這種分析思路引導下,主權Rollup的6大重要變體更加清晰易懂。 **NashQ細緻討論了不同Rollup變體的審查抗性和活性,還探討了每種Rollup變體的節點在信任最小化狀態下的最低配置(就是指要達到Trustless狀態,Rollup用戶至少要運行哪些類型的節點)。 **
雖然本文是站在Celestia的視角解析Rollup,與以太坊社區分析Rollup模型的方式有所不同,但考慮到以太坊Rollup與Celestia主權Rollup的諸多互通之處,以及後者日益增強的影響力,對於以太坊愛好者而言,此文也極其值得一讀。
什麼是Rollup?
Rollup是將其“交易數據”發佈到另一個區塊鏈並繼承其共識和數據可用性的區塊鏈。
為什麼我特意使用“交易數據”這個詞而不是“區塊”呢?這涉及到rollup區塊和rollup數據之間的區別,最簡潔的rollup只需要像下文中第一種變體那樣的rollup數據。
Rollup區塊是一種數據結構,它表示某個區塊高度下的區塊鏈賬本。 Rollup區塊由rollup數據和rollup header組成。其中,Rollup數據可以是一批交易,或一批交易間的狀態變化。
變體1:悲觀Rollup / Based Rollup
構建Rollup的最簡單方法是讓用戶將交易發佈到另一個區塊鏈上,我們將後者稱為共識和數據可用性層(DA-Layer),在下面我會簡稱為DA層(譯者註:近似於以太坊社區常說的Layer1)。
在我要介紹的第一種Rollup變體中,Rollup網絡的節點必須重新執行DA層包含的Rollup交易,以檢查賬本的最終狀態。這便是悲觀Rollup!
悲觀Rollup是一種只支持全節點的Rollup,這些全節點需要重新執行Rollup賬本包含的所有交易以檢查其有效性。
但在這種情況下,誰充當了Rollup的定序器Sequencer?實際上除了Rollup的全節點以外,沒有任何實體執行過Rollup賬本包含的交易。一般來講,定序器會聚合交易數據,並生成一個Rollup header。但上文所說的悲觀Rollup沒有Rollup header!
為了方便討論,我們可以將定序器拆分為兩個邏輯實體:聚合器Aggregator和Header生成者。要生成Rollup Header,必須先執行交易,完成狀態轉換再計算得到對應的Header。但對於聚合器,它不需要完成狀態轉換,就可以進行聚合步驟。
排序Sequencing就是“聚合+ 創建Rollup Header”的過程。
聚合aggregation是將交易數據批量打包為一個批次Batch的步驟。一個批次一般包含很多筆交易(譯者註:Batch就是Rollup區塊中除Header以外的那部分數據)。
Header生成步驟則是創建Rollup Header的過程。 Rollup Header是關於Rollup區塊的元數據,至少包含了對該區塊中交易數據的commitment(譯者註:這裡說的commitment是指對交易處理結果正確性的承諾)。
通過上述視角,就可以看出Rollup的各部分組件都由誰來充當。首先來看聚合器Aggregator這部分。前面提及的悲觀Rollup沒有Header生成過程,用戶將交易直接發佈到DA層上,這意味著DA層網絡實質就充當了聚合器。
所以,悲觀Rollup就是將聚合步驟委託給DA層的Rollup變體,它沒有定序器Sequencer。有時候這類Rollup被稱為“based rollup”。
Based Rollup具備和DA層相同的抗審查性及活性(活性衡量系統對用戶請求的反饋速度)。此類Rollup的用戶如果要達到信任最小化(最接近Trustless)的狀態,至少要運行一個DA層網絡的輕節點,及Rollup網絡的全節點。
變體2:使用共享聚合器的悲觀匯總
讓我們討論一下使用共享聚合器的悲觀匯總。這個構思由Evan Forbes在其關於共享定序器設計的論壇帖子中提出。其關鍵假設是,共享定序器是為交易排序的唯一正規途徑。 Evan如此解釋共享定序器的好處:
“為了達到與Web2等效的用戶體驗,共享定序器可提供快速生成的Soft Commitment(不是很可靠的保障)。這些Soft Commitment提供了關於最終的交易次序的一些保障(就是承諾交易次序不會改變),並且可讓Rollup賬本狀態更新的步驟提前進行(但此時還沒完成最終確定Finalize)。
一旦Rollup區塊數據確認發佈到了基礎層Base Layer(此處應指DA層),Rollup賬本的狀態更新就完成了最終敲定Finalize。 ”
上述Rollup變體仍然隸屬於悲觀Rollup範疇,因為這類Rollup系統中只有全節點,沒有輕節點。每個Rollup節點都要執行所有的交易,來保證賬本狀態更新的有效性。因為這類Rollup沒有輕節點,就不需要Rollup Header,也就不需要Header生成者。 (譯者註:一般而言,一條區塊鏈的輕節點不需要同步完整的區塊,只接收區塊頭即可)
由於沒有Rollup Header生成這個步驟,上述Rollup的共享定序器可以不必執行交易進行狀態更新(生成Header的先決條件),而只包含聚合交易數據的過程。所以我更傾向將其稱為共享聚合器shared aggregator。
在這種變體中,Rollup用戶在信任最小化狀態下,至少需要運行DA層輕節點+共享聚合器網絡的輕節點+ Rollup全節點。
此時,需要通過共享聚合器網絡的輕節點來驗證發布的aggregator header(這裡指的不是Rollup Header)。上面提到,共享聚合器承擔了交易排序的工作,它在發布的aggregator header中,包含了一個密碼學commitment,對應著DA層上它發布的Batch。
這樣一來,Rollup節點運行者可以確認,自己從DA層收到的批次Batch,是由共享聚合器創建的,而非其他人。
由於共享聚合器承擔了包含和排序的工作,Rollup的抗審查性就取決於它。
如果假設L_ss是共享聚合器的活性,L_da是DA-Layer的活性,那麼該Rollup模型的活性就是L = L_da && L_ss。換句話說,如果兩個部分中任意一個存在活性故障,則Rollup也存在活性故障。
為簡單起見,我將活性作為一個bool值來考察。如果共享聚合器故障了,Rollup就無法繼續運轉。如果DA層網絡故障了,共享聚合器可以繼續為Rollup區塊提供Soft Commitment。但此時,Rollup的各項屬性將完全取決於共享聚合器網絡,而後者的各項屬性往往遠不及原本的DA層。
讓我們來繼續探討上述Rollup方案的抗審查性:
在該方案中,DA層不能對某些筆特定的交易進行審查(譯者註:交易審查往往可以拒絕讓某些交易上鍊),它只能針對共享聚合器提交的整個交易批次Batch展開交易審查(拒絕讓某個Batch包含進DA層)。
但按照Rollup的工作流程,共享聚合器在向DA層提交交易批次Batch時,早已完成了交易排序,不同批次間的順序也定完了。所以,DA層的這種交易審查,除了延遲Rollup的賬本最終性確認外,沒有其他作用。
綜上,我認為抗審查性的重點,是確保沒有任何一個實體可以控製或操縱系統內的信息流通,而活性則涉及維護系統的功能和可用性,即使存在網絡中斷和對抗行為。雖然這與當前主流的學術定義衝突,但我仍然會使用我所闡述的概念定義。
變體3:基於Based Rollup和共享聚合器的悲觀Rollup
儘管共享聚合器為用戶和社區帶來了好處,但我們仍應避免過度依賴它,並且要允許用戶從共享聚合器撤出至DA層。我們可以**將前面介紹的兩種Rollup變體組合,在使用共享聚合器的同時,允許用戶直接向DA層提交交易。 **
我們假設,最終的Rollup交易序列取決於共享聚合器提交的交易序列,以及用戶在DA層區塊中直接提交的Rollup交易。我們將這稱作Rollup的分叉選擇規則。
聚合在這里分成了兩步。首先,共享聚合器發揮作用,聚合一些交易。然後,DA層可以將共享聚合器提交的批次Batch和用戶直接提交的交易進行聚合。
**此時的抗審查性分析要更複雜些。 **DA層網絡節點可能在下一個DA層區塊出塊前,對共享聚合器提交的Batch進行審查,在知曉了Batch內的交易數據後,DA層節點可以提取MEV價值,先用自己在Rollup網絡上的賬戶發起搶跑交易,並將其搶先包含至DA層區塊,之後才包含Rollup共享聚合器提交的Batch。
顯然,第三類Rollup變體的soft commitment保障的交易次序最終確定性,要比前面提到的第二類Rollup變體更脆弱。在這種情況下,共享聚合器將MEV價值拱手送給了DA層節點。對此,我建議讀者觀看關於利用有利可圖的審查MEV 的研究講座。
目前已經有一些設計方案出現,以降低DA層網絡節點執行此類MEV交易的能力,例如“重組窗口期”功能,這會使得Rollup網絡用戶直接向DA層提交的交易被延遲執行。 Sovereign Labs 在其名為Based Sequencing with Soft Confirmations 的設計提案中詳細描述了這一點,其中提出了“首選定序器”的概念。
由於MEV問題取決於Rollup選擇的聚合器方案,以及rollup分叉選擇規則,某些方案將不洩漏MEV給DA層,而一些方案將洩漏部分或全部MEV給DA層,但這是另一個話題。
至於活性,這種rollup 方案比僅允許共享聚合器向DA層提交交易的方案更具優勢。如果共享聚合器出現活性故障,用戶仍然可以向DA層提交交易。
最後,讓我們談談信任最小化下的Rollup用戶最低配置:
至少要運行DA層輕節點+ 共享聚合器輕節點+ Rollup 全節點。
此時,仍然需要驗證共享聚合器發布的aggregator header,使得rollup 全節點能夠根據分叉選擇規則區分交易批次。
變體4:Optimistic Based Rollup和中心化的Header生成者
讓我們討論一種被稱為Based Optimistic Rollup 的變體及中心化的Header生成器。 **這種方案使用DA層聚合Rollup交易,但引入了一個中心化的Header生成器來生成Rollup Header,以啟用Rollup 輕節點。 **
Rollup 輕節點可以通過單輪欺詐證明,間接檢查Rollup交易的有效性。輕節點會對Rollup Header的生成者持樂觀態度,並在欺詐證明窗口期結束後進行最終確認。另一種可能是,它從誠實的全節點那裡接收到欺詐證明,得知Header生成者提交了有錯誤的數據。
我不打算在此文詳細介紹單輪欺詐證明的工作原理,因為這超出了本文涉及的範圍。單輪欺詐證明的好處是可以將欺詐證明窗口期從7天縮短到一定程度,具體的數值有待確定,但數量級比傳統的樂觀rollup更小。輕節點可以通過Rollup全節點組成的P2P網絡獲取欺詐證明,而不需要等待後續的爭議過程,因為所有的判據都在單個欺詐證明中完整的提供了。
上述Rollup模型使用DA層作為聚合器,並繼承了它的審查抗性。此時的DA層負責包含和排序交易。中心化的Header生成者將從DA層中讀取Rollup交易序列,並據此構建對應的Rollup Header。 Header生成者將把Header和Stateroot發佈到DA層。這些Stateroot是創建欺詐證明時所必需的。 **簡而言之,聚合器負責包含和排序交易,Header生成器會執行交易更新狀態得到Stateroot。 **
假設DA層(此時它也充當了Rollup的聚合器)是足夠去中心化的,並具有良好的抗審查性。此外,Header生成器不能更改聚合器發布的Rollup交易序列。現在,如果將Header生成器去中心化,帶來的唯一好處是更好的活性,但Rollup的其他屬性與第一種變體Based Rollup相同。
如果Header生成器發生活性故障,Rollup 也會發生活性故障。輕節點將無法跟進Rollup賬本的進度,但全節點可以。此時,變體4所描述的Rollup退化成了變體1描述的Based Rollup。顯然,變體4描述的信任最小化最低配置是:
**DA層輕節點+Rollup輕節點。 **
變體5:Based ZK-Rollup和去中心化的Prover Market
我們已經討論了悲觀Rollup(Based Rollup)和樂觀Rollup,現在是時候考慮ZK-Rollup了。最近Toghrul做了一個關於聚合器(Sequencer)和Header生成器(Prover)分離的演講(Sequencer-Prover Separation in Zero-Knowledge Rollups)。在這種模型中,將交易作為Rollup數據而非State Diff進行發布要更容易處理,所以我會著重於討論前者。 **變體5是一個基於zk-rollup的去中心化Prover Market。 **
到目前為止,你應該對Rollup的工作原理比較熟悉了。變體5將聚合器角色委託給了DA層節點,由後者進行包含和排序交易的工作。我會引用Sovereign-Labs 的文檔,它對變體5中一筆交易的生命週期進行了很好的解釋:
用戶發布一個新的數據塊到L1鏈(DA層)上。一旦這些數據塊在L1鏈上被最終確定,它就在邏輯上具備最終性(不可更改)。 L1鏈的區塊進入最終確定階段(就是不可回滾)後,Rollup的全節點會掃描這些區塊,按照次序處理所有與Rollup有關的數據塊,生成最新的Rollup狀態根Stateroot。此時,從Rollup全節點的角度來看,這些數據塊已經完成了最終確定。
在這個模型中,Header生成者由去中心化的Prover Market充當。
Prover證明者節點(在ZKVM內運行的全節點)的工作過程與普通的Rollup全節點有類似的地方——掃描DA層區塊鏈並按次序處理所有Rollup交易批次——生成對應的零知識證明並將其發佈到DA層鏈上。 (如果Rollup系統想激勵Prover證明者,要讓後者將生成的ZK證明發到DA層鏈上,否則就無法確定哪個Prover率先提交了ZK證明)。一旦某個交易批次對應的ZK證明被發佈到鏈上,該交易批次在全體Rolup節點(包括輕節點)眼中就完成了最終確定。
變體5具備和DA層一樣的抗審查性。去中心化的Prover Market不能對Rollup交易展開審查,因為DA層上已經確定了規範的交易次序,只是為了獲得更好的活性及創建激勵市場,所以才將Header生成器(這裡指Prover)去中心化。
這裡的活性是L = L_da && L_pm(Prover的活性)。如果Prover Market的激勵不一致,或者出現活性故障,Rollup輕節點將無法同步區塊鏈進度,但Rollup的全節點可以,對於全節點而言,這只不過又回退到了變體1所說的Based Rollup/悲觀Rollup。這裡的信任最小化最低配置與樂觀Rollup情況下相同,即
DA層輕節點+Rollup輕節點。
變體6:混合型Based Rollup+中心化的樂觀Header生成者+去中心化Prover
我們仍然讓DA層節點充當Rollup的聚合器,並委託其進行包含和排序交易的工作。
正如你從下圖中看到的,ZK Rollup 和樂觀Rollup都採用DA層上相同的有序交易批次,作為Rollup賬本來源。這是我們可以同時使用兩個證明系統的原因:DA層上的有序交易批次本身並不受證明系統的影響。
先談一下最終性。從Rollup 全節點的角度來看,當DA層自身的區塊完成最終敲定時,其包含的Rollup交易批次也是最終確定不可更改的了。但是我們更關心輕節點視角下的最終性。假設中心化的Header生成者抵押了一些資產,並在生成的Rollup Header上簽名,連帶將計算出的Stateroot提交到DA層。
與前面的變體4一樣,輕節點將樂觀地信任Header生成者,相信它發布的Header沒錯,並等待來自全節點網絡的欺詐證明。如果欺詐證明的窗口期結束了,全節點網絡還沒發布欺詐證明,從Rollup 輕節點的角度來看,Rollup 區塊就完成了最終確定。
關鍵之處在於,如果我們可以獲得一個ZK證明,就不必再等待欺詐證明窗口期結束。除了單輪欺詐證明,我們可以用ZK證明取代欺詐證明,並丟掉惡意的Header生成器生成的錯誤Header!
當輕節點接收到對應某個Rollup交易批次的ZK證明時,這個批次就會完成最終確定。
現在我們有了快速的Soft Commitment和快速的最終性Finality。
變體6仍然具有與DA層等同的抗審查性,因為它是基於DA層的。對於活性,我們將有L = L_da && (L_op || L_pm),這意味著我們增加了活性保證。如果中心化的Header生成器或去中心化的Prover Market二者之一有活性故障,我們可以退化到二者中的另一種方案。
此種變體中,用戶信任最小化的最低配置是:
**一個DA層輕節點+ 一個Rollup 輕節點。 **
摘要:
1.我們將Rollup的關鍵角色——定序器Sequencer拆分為兩個邏輯成分:
聚合器和Header生成器。
2.我們將Sequencer的工作分為三個邏輯過程:包含、排序和執行。
3.悲觀rollup和based rollup 是一種東西。
4.根據需求,您可以選擇不同的聚合器和Header生成器方案。
5.這篇文章中介紹的每個Rollup變種都遵循了相同的設計模式:
最後,我還有一些想法。請您思考: