加密貨幣交易所 加密貨幣交易所
Ctrl+D 加密貨幣交易所
ads
首頁 > 幣贏 > Info

Rollup排序器完全指南:概念、現狀與共享排序_ROL:ROLL

Author:

Time:1900/1/1 0:00:00

原文作者:JamesPrestwich

原文編譯:0x11?,ForesightNews

共享排序器正在飛速發展,是時候對它是什么及其存在的原因進行深入分析了。這篇文章分析的對象僅限于OptimisticRollup,歡迎ZK關注者前來指教。

排序器是什么?

排序器是OptimisticRollup中的半信任化角色。雖然交易可以由主鏈本身進行排序,但這并不經濟,用戶必須單獨提交其Rollup交易對應的主鏈交易,并支付主鏈上費用。排序器通過允許Rollup交易共享單個主鏈交易來為用戶解決這些問題。

排序器聚合鏈下的多筆用戶交易來補充主鏈的排序,并將它們作為單個交易集合提交到主鏈,交易成本在用戶間分攤。排序器還可以壓縮交易集合,進一步節省主鏈數據可用性成本。與依賴排序器的用戶相比,自主排序的用戶將為包含在Rollup中的交易支付更多費用。

但是,排序器可以對交易集合中的交易排序進行控制。它可以選擇不包含用戶交易,從而迫使用戶自行排序,支付更高的主鏈成本。它還可以通過重新排序和插入提取的方法在交易集合中提取MEV。它們實際上擁有對Rollup的優先寫入權限。值得注意的是,因為排序器可以與合約交互,所以只有絕對可靠的交易才能通過鏈上機制可靠地強制執行,不可靠的交易在強制排序時很可能會失敗。

這使得排序器成為Rollup用戶的半信任方。雖然排序器無法阻止用戶訪問Rollup,但他們可以延遲用戶的訪問,導致用戶承擔額外的費用,并從用戶的交易中提取價值。通過去中心化進一步約束排序器的行為是一個活躍的研究課題。

排序和執行有什么區別?

排序器是主鏈排序的補充,它不計算Rollup的狀態,實際上它可能會選擇對無效交易進行排序。Rollup節點必須解析和清理排序數據,導出Rollup的有效歷史記錄,并執行歷史記錄以生成最新狀態。排序器則完全不參與此過程。?

跨鏈流動性聚合器Router Protocol已集成Scroll測試網:6月27日消息,跨鏈流動性聚合器Router Protocol已集成Layer2解決方案Scroll測試網,支持開發人員構建IDApp,以擴展到Scroll,同時Scroll內的項目也可以通過Router Protocol訪問多個區塊鏈網絡。[2023/6/27 22:01:55]

不過,正如我的朋友Fred不斷提醒我的那樣,一旦交易被排序,結果就是確定的。這意味著所有Rollup節點將根據排序器生成的順序達成一致結果。給定已知歷史,Rollup有一個正確的狀態。一旦節點找到這個狀態,一個或多個提議者會將其提交給主鏈的Rollup合約。

理論上,任何節點都可以是提議者,不需要任何權限。提議者將狀態連同保證金一起提交給主鏈。如果欺詐證明結果是狀態無效,保證金就會被沒收。該合約在計時器結束后接受證明,然后其中包含的用戶交易在主鏈上執行。執行節點通過欺詐游戲確保提議者誠實,我們傾向于將執行節點稱為「Rollup全節點」或「驗證者」。??

換句話說,一旦排序被提交到主鏈,狀態就變成最終的和不可變的。提議者計算并報告最終狀態給Rollup合約,以維護Rollup到主鏈的資產橋的利益。提議者不會創造狀態,他們只是計算并證明它。Rollup合約不會創建或最終確定Rollup,它只是從提議者那里獲得Rollup狀態。

為什么要將排序和提議分離?

這是一個復雜的問題。從根本上說,將它們分開是因為它們本身是分開的。這聽起來像是同義反復,但似乎每個人都花了很長時間才意識到這一點。我們驀然回首,才發現Rollup的思想歷史多年來一直在Plasma和狀態通道中曲折發展。在基于比特幣的proto-Rollup早期,并沒有排序器,用戶只需將他們的交易發布到主鏈。之后,這種設計消失多年,最終因為Barry的工作重新出現。在Barry和Celestia之間,Rollup的研究主要集中在Rollup橋與主鏈的交互上。在SovereignRollup出現之前,甚至沒有人意識到我們其實在構建更好的Mastercoin。

金色相對論 | Jay:Rollup + 以太坊2.0 分片可以把ETH TPS 達到10萬筆/秒:11月27日消息,在今日舉行的金色相對論中,針對“從以太坊的發展過程來看,選擇pow作為1.0階段有一定的歷史因素,但隨著現在的技術發展,例如rollup以及layer2解決方案的增加,您認為以太坊還需要以太坊2.0嗎?”的問題,Loopring COO Jay表示,首先L2 方案還在很早期,zkRollup, OVM, Plasma, State channel 都是并行存在著的。目前看來Rollup 技術比較收社區推崇也是最主流的方案。但Rollup 里面也分zk 和optimism 2 大方向。未來到底是一個Rollup 獨大還是多個平行進行都還很難說。特別是在各個rollup之前還不能打通的情況下。所以在不能說服社區都用一個rollup方案或同意的情況下,2.0 需要不斷的進行下去。另外Rollup + 2.0 分片可以ETH TPS 達到10萬筆/秒。完全是一個互補的方案,而不是排斥的。只有到達這個量級才是目前生活中可以取代中心化系統的量級,所以我們更應該不斷推動。[2020/11/27 22:20:23]

拋開出處不談,排序器解決了一個特定的問題:用戶交易成本最小化。然而,這個過程中又引入了一個新問題:排序器可以同時對同一交易產生多個排序結果。如果排序完全由主鏈完成,將會有一個單一的規范排序,但用戶交易費用會更昂貴。我們選擇使用排序器來改善Rollup中的用戶體驗。

假設存在很多個排序器,因為有多個提議者。排序器們可以提交相互沖突的排序,我們現在需要一種機制來「規范」主鏈上的特定排序批次。當前的Rollup通過一個單一的、特定的、已知的、半可信的排序器來實現這一點。選擇單個排序器使我們能夠解決這個問題,直到去中心化排序器到來。因為我們想要多個提議者,但只需要一個排序器,所以必須將這兩個角色分開。

數據依賴性是另一個重要的原因:提議者需要排序,但是排序器不需要狀態。提議者依賴于排序器工作的輸出,但是排序器不依賴于提議者。因為數據依賴是單向的,所以需要在角色之間劃定界限,并允許參與者專注于單一角色。

以太坊擴容方案Arbitrum Rollup推出Uniswap V2端口:11月6日,以太坊擴容方案Arbitrum Rollup的開發團隊 Offchain Labs宣布推出在Arbitrum Rollup上Uniswap V2端口,這意味著可以在Arbitrum Rollup的以太坊擴容測試網上運行的 Uniswap V2。官方表示,此舉可將交易費成本降低55倍。[2020/11/6 11:48:28]

為了回答最初的問題,我們將提議者和排序器分開,因為它們本身是分開的。提議者在排序器的下游工作。Rollup將信任和權威授予了排序器,而提議者只是一個普通工作人員。

排序器、提議者和驗證者現狀

Arbitrum和Optimism是兩種常見的ORU方案。我想簡要介紹一下他們中的主要角色,不會涉及到代碼,只是規范和文檔。Optimism的討論將僅限于Bedrock設計。

Arbitrum

除了批處理和壓縮用戶交易外,Arbitrum排序器還運行一個完整的節點。交易被直接發送到排序器,它在交易排序時創建一個可信的WebSocket提要。Arbitrum將此提要作為「軟」確認來源。排序器對排序結果作出承諾,用戶通常可以依賴該排序。節點、MEV搜索者或其他參與者可以使用此提要來預先計算Rollup狀態。

排序器會定期將經過排序的壓縮交易發布到主鏈。主鏈最終確定代表Rollup的「硬」確認。一旦主鏈確定了排序,它就成為Arbitrum鏈上不可更改的部分,其中排序的所有交易都成為最終狀態,結果狀態也成為最終狀態。

自然地,因為排序器設置交易順序,所以它具有優先寫入權限。排序器可以控制排序的內容,從而控制Rollup歷史中交易的排序。當然,用戶可以通過主鏈上的delayedinbox強制包含交易。搜索者已經竭盡全力將WebSocket交易提要的延遲降到最低,因此他們很可能會形成一個強大的MEV市場來對Arbitrum交易進行排序。

V神:Rollups成為新的執行環境:剛剛V神發推稱,Rollups成為新的執行環境。就在該推文之前,V神剛剛更新以太坊路線圖,表明以rollup構建為中心。[2020/10/2]

有13個經過許可的Arbitrum提議者,他們中每一個都在名為「RBlock」的特定承諾中托管了ETH。用戶可以選擇依賴一定比例的質押來做出關于Rollup的最終決定,而無需運行Rollup完整節點。雖然Arbtirum驗證者可以識別欺詐,但只有提議者可以通過欺詐證明質疑承諾的有效性。實際上,只有提議者可以成為完整的驗證者。

正義,就像一個排序器,是盲目的,它必須帶著劍

Optimism

與Arbitrum一樣,除了批處理和壓縮用戶交易外,Optimism排序器也運行一個完整的節點。交易直接發送到排序器,排序器在排序時創建可信的預確認。Optimism用戶可以使用這些確認作為最終軟確認的來源。排序器對排序作出承諾,用戶通常可以依賴該排序。節點、MEV搜索者或其他參與者可以使用這些確認來預先計算Rollup狀態。

排序器會定期將經過排序的壓縮交易發布到主鏈。主鏈最終確定代表Rollup的「硬」確認。一旦主鏈確定了序列,它就成為Optimism鏈歷史中不可更改的一部分。其中排序的所有交易都成為最終狀態,結果狀態也成為最終狀態。

自然地,因排序器設置交易順序,所以它具有優先寫入權限。排序器可以控制排序的內容,從而控制Rollup歷史中交易的排序。當然,用戶可以通過在主鏈強制包含交易。作為MEV拍賣概念的發起者,一個用于排序Optimism交易的強大MEV市場似乎將要形成。

Optimism有1個經過許可的提議者。該提議者簽署了對主鏈的特定承諾,稱為「狀態輸出」或「L2輸出根」。用戶在做出關于Rollup的最終決定時可以選擇依賴提議者,而無需運行Rollup全節點。雖然Optimism驗證者可以識別欺詐,但只有一個經過許可的挑戰者可以通過簽名來挑戰承諾的有效性。挑戰者可以隨時刪除一個L2輸出根,無需欺詐證明。實際上,只有獲得許可的挑戰者才能成為完整的驗證者。

DASH核心團隊聘任Bob Carroll為CTO:據DASH官方消息,DASH Core聘任Bob Carroll為新任CTO。Bob Carroll曾任Phoenix大學CIO,擁有數十年行業經驗。[2018/6/5]

小結

當前兩個主要的Rollup都集中在同一種設計上,它可能會變得非常混亂。他們經常對同一個概念使用不同的名稱,但他們的設計幾乎相同。

共享排序器

在對排序器有了新的理解后,讓我們繼續討論我真正想談的內容:共享排序器。當Rollup共享同一個排序器時會發生什么?

不同的Rollup是什么意思?

借用Ben的定義,我們應該將Rollup視為狀態、狀態轉換函數和證明系統。Rollup有合約和賬戶,它有一個虛擬機來處理交易以更新這些合約和賬戶,而非主權Rollup有一個證明系統來運行與主鏈的橋接。每個組件有多種設計,它們可以在一定程度上混合搭配。

但是,有些組件比其他組件更平等。總的來說,我們大概應該把狀態看作是鏈的本質。鏈不傾向于改變它們的狀態。畢竟,以太坊開發者多次更改虛擬機,多次更改共識機制,但只更改過一次狀態。狀態即是Rollup,虛擬機和證明系統的存在是為了支持它。因此,不同的Rollup具有不同的狀態。它們可能共享一個證明系統或一個STF,但兩個Rollup永遠不可能共享相同的狀態。

提取、檢查和過濾

Rollup從主鏈歷史中獲取它們的狀態。為了做到這一點,每個Rollup都必須定義一個「提取」函數。提取函數將主鏈歷史分為Rollup歷史和non-Rollup歷史。STF處理Rollup歷史以創建Rollup狀態。實際上,提取功能變成了一個「鏡頭」,Rollup通過它檢查主鏈。

Rollup使排序器能夠選擇提取函數下一次運行的輸出。排序器選擇Rollup節點下一步將看到和處理的數據,因此對STF的操作和下一個狀態有一定的控制。

在排序器創建主鏈數據視圖后,Rollup節點運行過濾功能。因為排序器不一定知道它所服務的Rollup的狀態,所以允許在其排序中包含無效交易。提取后,Rollup節點會看到這些無效交易,并將其刪除。當給定無效交易時,Rollup節點不會出錯,而是簡單地忽略它并繼續。L1必須禁止垃圾信息以保持共識,而Rollup則不需要。

共享排序器

共享排序器為兩個或多個Rollup的提取函數提供輸入。因此,它為兩者設置新的歷史記錄,控制STF的輸入。它可以單獨為每個Rollup執行此操作,也可以同時為兩者執行此操作。單獨設置歷史記錄時,它的工作方式與未共享的排序器完全相同。

然而,當同時為兩個Rollup創建新的歷史記錄時,共享排序器可以通過原子「鏈接」兩個Rollup的歷史記錄來行使一些額外的權力。排序器同時為每個Rollup生成序列,并確保兩者都確認或都不確認。這允許排序器對兩條鏈的歷史進行控制,因此對Rollup的下一個狀態有一定程度的控制。

原子包含

在這一點上,我必須重申,排序器可以對其產生的排序行使很大的自由裁量權。這意味著雖然用戶可以使用共享排序器在多個Rollup上進行交易,而無需與主鏈進行交互,但他們不一定依賴排序器在這些交易之間產生任何特定的關系。共享排序器的支持者設想了一種新結構,用戶可以在其中指定包含的原子性,即可以強制排序器通過共享強制排序機制同時對多個Rollup中的一組交易進行排序。這將允許用戶確保所有這些原子交易都包含在Rollup歷史中,或者全部不包含。

這并不像看起來那么好。因為只有絕對可靠的交易才能強制排序,只有絕對可靠的交易集才能保證在原子包含時原子執行。正如我們之前所說,包含和執行是分開的。Rollup在包含之后和執行之前通過過濾器功能過濾掉無效交易。假設排序器獲取用戶的原子集,并導致一個交易失敗或失效。該交易將在排序后被過濾,并且不會執行。這意味著原子包含不足以保證原子執行,除非涉及的所有交易都是絕對可靠的。

具體而言,可以原子執行簡單的發送和取款,但任何容易出錯的東西,如交換或DeFi交互,都不能。不幸的是,大多數高價值交互都包含1個或多個容易出錯的交易,因此似乎很難使原子包含發揮作用。這有效地排除了通過共享排序器進行交叉Rollup的DeFi可組合性。共享排序器不是靈丹妙藥,用戶的資產可能被鎖定在異步跨鏈模型中,直到流程結束。

Rollup組合的原子執行

還記得之前談到的排序器如何在將排序發布到主鏈之前提供可信的執行保證嗎?您可以設想一個共享排序器針對多Rollup系統做同樣的事情。共享排序器可以運行每個Rollup的完整節點,并使用它們來確定交易是否成功。然后它可以承諾它不會產生原子交易集不全部成功的排序。

當然,這個系統是值得信任的。你會相信排序器不會說謊。您現在可能在想「我們可以通過限制排序器的行為將其轉換為免信任的系統嗎?」我很高興/悲傷/困惑地說答案是「是的,但是」。是的,但我們這樣做的方法是組合每個Rollup的STF,以創建一個執行所有組合Rollup交易的單個STF。也就是說,我們必須使所有Rollup之間的所有虛擬機原子化。這相當于使它們成為相同的Rollup。所以是的,我們可以實現不受信任的原子執行,方法是通過將多個Rollup合并為一個。這可能是個好主意1,但我懷疑它的可行性。

偶然性關系的原子執行

我在別處寫過這個,另一個可靠的選擇是在交易和Rollup狀態之間集成顯式的偶然關系。這會將評估突發事件的負擔轉移到提議者身上,因為他們必須根據他們對遠程Rollup的信任來計算和提議狀態根。但是,我認為我們可以通過重復應用過濾器功能來簡化它。假設偶然性在某個交易和區塊中是明確的,我們可以運行兩次過濾器,一次假設預測的狀態有效,一次假設預測的狀態無效。這可以擴展到n個預測狀態,代價是對過濾器函數進行2?^n次評估.

在這個世界上,提議者可以證明2?^n個根,每個根都有明確的偶然關系。例如,提議者可以證明「根是X取決于遠程Rollup狀態A,否則是Y」,而不是說「根是X」。這樣,提議者就不會永遠評估遠程Rollup區塊。相反,他們會根據來自其他狀態的假設信息,多次評估自己的過濾函數和狀態。這真的很酷,因為它保留了Rollup的分離,同時仍然允許復雜的即時交叉Rollup通信。

結論

排序器是鐘表匠巧奪天工之作,它設置Rollup歷史記錄,然后看著它滴答滴答地走到它的命定狀態。Optimism和Arbitrum并無多大差別,但兩者安全性確有不同。沒有人知道排序器是做什么的。共享排序器可以進行原子包含,但不能進行原子執行,如果沒有Rollup組合或其他一些執行機制,就無法將原子包含納入原子執行。所有這些關于共享排序器實現無縫互操作性的吹噓都是垃圾科學。

Tags:ROLROLLARBRUMTrollCoinTROLLBNBBarbecueSwapDragon Crypto Aurum

幣贏
Bitget Research每周要聞:MEME板塊持續火熱,BTC能否突破3萬美金大受矚目_BIT:超級比特幣SBTC最新消息

過去一周,市場出現了不少新的熱門幣種和話題。1.市場焦點MarketTrends本周(?05.01-05.06)市場最關注的焦點話題為:前期熱門?meme?集體沖高回落,BTC?能否突破?3?萬.

1900/1/1 0:00:00
當年馬斯克離開 OpenAI 的真相_OPEN:馬斯克幣最新消息

在ChatGPT?的影響下,目前?OpenAI?成為了全球最火爆的AI公司。然而回顧過去,它與馬斯克之間的恩怨從創立之初就埋下了.

1900/1/1 0:00:00
V 神宣布 ETH 3.0 路線圖,引入權益證明共識機制、分片等_以太坊:CLV

近日,以太坊聯合創始人VitalikButerin在Zuzalu核心開發演示期間宣布了ETH3.0路線圖.

1900/1/1 0:00:00
薅 DAO 的羊毛?DAO 資金掠奪者是如何榨干國庫的?_DAO:ALGO

DAO在加密領域獲得了極大的關注和投資,其中有幾個DAO在各自的國庫中管理著數十億美元。然而,并不是所有DAO的參與者都有著高尚的目的.

1900/1/1 0:00:00
一文讀懂 zkSync Era 生態_SYN:Synth sJPY

zkSyncEra是一個最近剛上線的Layer2。其主網于2023年3月24日上線,根據DeFiLlama的數據,zkSyncEra總鎖倉量在4月10日突破一億美元,距離主網上線僅17日.

1900/1/1 0:00:00
數據解讀比特幣的鏈上交易:日交易筆數創新高,_KEX:泰達幣和比特幣區別大嗎

原文作者:RafaelSchultze-Kraft,Glassnode?創始人兼?CTO原文編譯:Felix,PANews比特幣鏈上交易的數量最近出現了驚人的增長,單日交易超過?50?萬筆.

1900/1/1 0:00:00
ads