以太坊(ETH)經濟區(EEZ)提出一套設計,讓主網與多個 Rollup 的合約呼叫能在同一個以太坊區塊內串連。EEZ旨在讓主網及參與的 Rollup 共同使用資產與合約。
EEZ不是新的區塊鏈,也不採用獨立技術堆疊,而是由以太坊合約及參與鏈之間的連接規則構成。各鏈仍保有自己的虛擬機與交易排序,同時共享以太坊區塊。
當資金與應用程式分散在不同 Rollup 上,使用者通常得先透過跨鏈橋轉移資產,再進行後續交易,才能在另一條鏈上使用資產。EEZ提出的方式,是呼叫主網或其他參與 Rollup 上的合約,將這些步驟串連在同一個區塊內。
跨鏈呼叫透過代理合約地址進行。系統會在其他鏈上預先建立與參與鏈各合約相對應的地址,並以 EEZ合約地址、原合約地址及鏈 ID,透過 CREATE2 計算出該地址。
組合器會預先計算交易涉及的各鏈執行結果,並將呼叫結果記錄在執行表中。執行表包含呼叫結果、Rollup 執行前後的狀態值、回到以太坊的呼叫清單,以及相關結果的連續雜湊值。
證明系統會產生用來驗證執行表及 Rollup 狀態轉換的資料。以太坊上的 EEZ合約負責驗證證明;代理合約收到呼叫時,會確認實際呼叫內容是否符合預先計算的結果,再回傳回應。
驗證執行表的交易與呼叫代理合約的交易會組成一個交易包。區塊建構者會依序將整個交易包納入區塊,或整包排除;驗證交易會先執行,接著是代理合約呼叫,兩者都在同一個以太坊區塊內處理。
Rollup 回傳以太坊的呼叫會直接在以太坊執行。Rollup 會取得組合器預先計算的結果;若以太坊合約再次呼叫 Rollup 合約,這種巢狀結構也能記錄在執行表中。
在這套設計中,原子性執行是指整組作業會一同成功,或在條件不符時回滾。若組合器發現某個步驟可能失敗,就不會提交交易包;若以太坊上的實際執行結果與預先計算不同,兩條鏈上的作業都會回滾。
EEZ方面介紹了公開測試網 Rollup X 的示範:使用主網流動性處理 CoW Swap 訂單,並在同一區塊內取得結果;另有一項案例是在主網與 Rollup 上同步變更 Safe 帳戶的所有者。
Rollup X 上的 Safe 以代理合約形式對應主網 Safe,簽署者與權限仍保留在主網合約中。TechFlowPost說明,系統會在交易執行前確認主網狀態,讓權限變更反映在相連的 Rollup 上。
本站先前曾報導,主網紀錄中可確認8筆 EEZ交易,當時無法直接測量 Rollup 內部的執行情況。這次技術說明則介紹呼叫與驗證如何透過設計流程串連。
公開開發狀態顯示,Rollup X 測試網目前使用單一證明者,核心合約的安全審計正在進行。即時零知識證明則仍列在官方開發狀態的規劃階段。
在實際運作上,組合器可以暫緩提交交易包,或延後部分項目的執行。透過主網處理呼叫需要以太坊區塊空間,應用程式也必須確認所需項目是否確實執行。
TechFlowPost指出,快速產塊、與以太坊同步呼叫及採用去中心化排序器,三者難以同時兼顧。以區塊間隔為200毫秒的鏈為例,若每60個區塊才產生一次同步區塊,呼叫主網的頻率就會是每12秒一次。組合器與區塊建構者也能看到未加密的交易,最大可提取價值(MEV)因此可能集中在這些參與者手中。
Comment 0