Rollup
交易有三個階段,最終和不可逆。它通過分離交易排序和執行過程,實現了排序最終性,讓任何人都可以確定
數據庫
狀態。用戶可以快速提取資金,執行者可以靈活等待交易積累後再結算。已有多種Rollup實現了排序最終性,包括
Arbitrum
、
Optimism
、
Scroll
、
Polygon Hermez
和ZkSync。這對於優化交易執行延遲非常有用。
原文標題:Tiers of Transaction Finality for Rollups
原文作者:PATRICK MCCORRY
原文來源:
cryptofrens
編譯:
AI 翻譯官
一個 Rollup[3] 交易在逐步變得已結算、最終和不可逆時有三個階段。
我們在 Rollup 的背景下探討一個有趣的問題:
交易最終性 → 什麼時候一個 Rollup 交易被認為是最終和不可逆的?
在 Rollup 中,交易最終性與工作量證明區塊鏈的最終一致性[4] (等待 X 次確認)或
以太坊
的權益證明協議(在連續兩次超級多數投票(epochs)[5] 後最終確定交易)非常不同。
在 Rollup 中,追求交易最終性有三個階段:
排序者(Sequencer)的承諾 → 排序者向用戶承諾交易將按預期排序和執行。
排序最終性 → 用戶的交易相對於所有其他交易有一個最終排序。
執行結算 → 橋接
智能合約
確信用戶交易的最終執行。
我們的文章重點討論上述三個階段以及交易如何通過每個階段。在進一步深入之前,交易的最終性對於 Optimistic 和 Validity Rollups 是相同的,或者至少兩種類型的 Rollups 都可以利用它
排序者是唯一知曉鏈下數據庫待處理狀態的一方,因為他們有權決定 / 提議待處理交易的排序。
在高層次上,交易的生命周期從用戶用數字簽名授權交易開始,然後將交易傳遞給排序者。
排序者可以回應:
他們交易的預測執行,
承諾當交易最終結算時,這個執行將成立。
這種承諾是可能的,因為排序者是唯一擁有所有待處理交易列表的一方。他們有權決定交易的排序,然後再傳遞出去。因此,只有排序者知曉鏈下數據庫的待處理狀態。
我們稱之為承諾,因為排序者可以決定向用戶返回無效響應並忽略交易。
Rollups 有兩種方法可以幫助防範惡意和撒謊的排序者:
簽名收據。 排序者可能需要返回帶有其數字簽名的收據,稍後可以用來懲罰他們對用戶撒謊。
強制包含。 用戶可以繞過排序者,將其交易提交給橋接智能合約。
雖然排序者的角色是提供一個快速路徑來決定交易執行的最終順序,但這並不是他們的唯一決定權。最終由橋接智能合約決定所有待處理交易的最終排序。
話雖如此,只要排序者在及時發布(~24 小時對於 Arbitrum)的情況下,橋接將優先考慮排序者提議的交易批次。
橋接智能合約決定交易的最終排序,並授權任何人計算鏈下數據庫的副本
橋接智能合約和底層區塊鏈履行數據可用性層的角色,提供一個單一保證:
數據可用性[6]:數據項在某個時間點發布,並且所有在線方都可以獲取它。
在 Rollups 的情況下,將一批交易發布到橋接智能合約使所有誠實的用戶、執行者和其他排序者能夠獲取交易列表。
新的一批交易應附加到Rollup的規範交易鏈中。任何一方都可以對其本地數據庫副本執行新交易並計算鏈下數據庫的新狀態。這是一個確定性過程,所有各方應得出相同的狀態。
正如我們稍後將看到的——只要你能相信有一個誠實的一方會站出來並執行結算——那麼就有可能在橋接之上構建僅依賴於排序最終性的協議。
注意,有些Rollups繞過了這個階段,因為排序者直接將交易發送給執行者,這樣做有利有弊,我們在此不討論。
最終目標是說服智能合約關於已排序交易的執行。
執行結算的唯一目的是說服智能合約,而不是外部方或共識協議,關於所有已排序交易的最終執行。
畢竟,在這一點上:
橋接已經排序了所有待執行的交易,
任何人,包括用戶,都可以計算預期數據庫的副本。
唯一不知道當前數據庫狀態的一方是橋接智能合約,因為它缺乏重放和處理所有待處理交易的計算資源。
由執行者來證明並提議新的數據庫狀態,並提供證明證明該證明是正確的。執行者可以決定處理一個或多個交易批次,唯一的約束是執行必須尊重交易的最終排序。證據可以是欺詐證明或有效性證明。
執行結算的唯一原因是授權橋接合約執行副作用,包括從鏈下系統向L1智能合約轉移資金或發送消息。只有當橋接確信相關交易的執行時,才能執行副作用。換句話說,橋接合約只有在確信所有交易都是有效且正確執行的情況下才會釋放資金。
這引出了Rollup最有趣的方面之一。
它將交易排序和計算預期執行的過程分開:
首先排序。 所有參與方都可以確定相同的交易列表,並在本地計算鏈下數據庫的新狀態。
延遲執行。 整個過程的重點是說服橋接智能合約關於排序交易執行後的數據庫新狀態。
分離這些過程允許任何人可以在執行與橋接智能合約結算之前確定性地計算出數據庫狀態。
排序和執行之間的時間延遲可能是巨大的。例如,如果我們考慮交易批次發送到橋接智能合約的頻率,那麼在撰寫本文時,Arbitrum[7] 和 Optimism[8]大約每 30 秒發送一次。
因此,排序的最終性可以在<10 分鐘內確定,但執行結算可能需要至少 2 周。
這引出了本文的關鍵要點:
在排序後和結算前進行交易。 只要你能相信有一個誠實的參與方會站出來並強制最終執行與橋接智能合約的結算,那麼代理可以在排序最終確定後對未結算的數據庫狀態採取行動。
讓我們考慮一個用戶想要快速從Rollup提取資金到
以太坊
的三步過程:
用戶發送資金 + 費用。 用戶可以選擇一個流動性提供者(LP)並發起一筆將資金轉移給LP的交易。該交易在Rollup上確認,並將資金發送到以太坊上的一個特殊仲裁合約。
LP 等待排序最終性。 LP將等待Rollup交易達到排序最終性後再決定在以太坊上向用戶發送資金。
LP 或用戶獲得資金。 當執行結算時,用戶的資金將到達Arbitrum合約。如果LP已經支付了用戶,Arbitrum合約將把資金發送給LP;如果LP未能履行職責,合約將簡單地將資金退還給用戶在L1上的賬戶。
在上述例子中,用戶可以在<10 分鐘內樂觀地從LP那裡收到資金,而LP可以確信他們將在~2 周內收到還款。如果出現問題且LP未能履行職責,用戶將在~2 周後收到還款。_這有多令人興奮?!_
總之,任何直接將交易數據發布到橋接智能合約的Rollup都可以實現排序最終性。
我們已經提到Arbitrum和Optimism支持排序最終性,但我也知道Scroll、Polygon Hermez和可能的ZkSync也實現了這一點。
大多數討論集中在Optimistic Rollups如何利用排序最終性來繞過執行結算延遲(~2 周)。
然而,這對有效性Rollups同樣有用,因為用戶可以在交易被排序執行時假定其最終性。這為執行者提供了_等待排序交易積累的靈活性_,然後再生成有效性證明並結算執行。
up only my frens
标签
Arbitrum
Optimism
Polygon Hermez
Rollup
Scroll
zkSync
以太坊
以太坊
數據庫
智能合約
来源链接:
https://mp.weixin.qq.com/s?__biz=MzU5NzUwODcyMw==∣=2247517504&idx=1&sn=bb5e...
说明:比推所有文章只代表作者观点,不构成投资建议
原文链接:https://www.bitpush.news/articles/6908517
相关新闻
激辩丨市场流动性告急、散户赚钱难上加难,交易所和VC成原罪?
观点:加密市场下一步走势如何?BTC和ETH的主导地位将增强
近 500 家项目 8 年角逐终出独角兽,Web3 Social Summer 将至?
市场流动性分散,交易比特币的成本是多少?
自述:一个华语 DAO 的两年 曾濒临国库耗尽 如何活下来?
Add A Comment