以太坊 Layer 2 資產橋方案解析:Arbitrum、zkSync 與 DeGate Bridge
本文作者:DeGate。
以太坊自 2015 年誕生以來,快速成長為最活躍、最繁忙的區塊鏈,無論是從應用的豐富性、鏈上的資產規模還是從交易量、安全性等指標看,以太坊都是當前無可爭議的公鏈之王。而隨著以太坊生態的快速發展,特別是 DeFi 的徹底引爆,導致原本設計的吞吐量嚴重不足,根據 etherscan.io 的每日交易數據統計,當前以太坊 TPS 在 17 左右(合約操作占比較大降低了這一數值),動輒幾十甚至上百美元的 Gas 費和超長的交易等待時間成為限制以太坊生態進一步蓬勃發展、進入主流世界的主因。
長期以來,整個以太坊社區都在為解決吞吐量和高昂手續費問題而努力,其中一個主要解決方案即以太坊 2.0,它將大幅增加每秒交易數量,並將最快於 2021 年底發布;而如 EIP-1559 提案,則希望對交易手續費計費方式進行調整,來變相達到降低 Gas 費用的目的。
與此同時,有一個聲音出現了:真的有必要將所有交易都放在主鏈上計算處理麼?
Layer2 簡介
將本應在以太坊主鏈即 Layer 1 (L1)上處理的交易,轉移到 Layer 2 (L2)上處理,隨後再將結果從 L2 傳回 L1 確認,我們將這種解決方案稱為以太坊 Layer 2。L2 的理論 TPS 達到了 2000-4000,這已經超越了 Visa 的處理能力------每秒 1700 筆交易。因此,許多人認為 L2 方案是以太坊贏得主流用戶的關鍵。
目前存在的 L2 方案,主要包括以下幾個:
Optimistic Rollups:數據上鏈、欺詐證明。應用團隊包括 Optimism、Offchain Labs Arbitrum rollup、Fuel Network;
ZK Rollups :數據上鏈、零知識證明。應用團隊包括 Loopring、Starkware、Matter Labs zkSync、Aztec 2.0;
Validium :數據鏈下保存、零知識證明。應用團隊包括 Starkware、Matter Labs zkPorter;
Plasma :數據鏈下保存、欺詐證明。應用團隊包括 OMG Network、Matic Network、Gazelle、Leap DAO;
State Channels: 應用團隊包括 Connext、Raiden、Perun.
需要重點指出的是,側鏈方案因為其共識安全性沒有繼承 L1,所以我們並不認為側鏈屬於 L2 方案。
在眾多方案中,Rollups 正逐步取得市場的認可,成為以太坊最可靠的擴容解決方案,一方面該方案直接繼承了 L1 的共識機制和安全特性,另一方面它也不會損害 L1 的安全性和主權。事實上,Vitalik 直言不諱的說過,Rollup 是以太坊長期擴容解決方案中可以最快被實現的一個。而 Rollups 的兩種方案 Optimistic Rollups 和 ZK Rollups 最大的區別是它們分別使用了欺詐證明 (fraud proofs) 和有效性證明 (validity proofs) 來確保 batches 裡的後狀態根 (post-state root) 的正確性。
對於 Rollups 方案而言,如何將資產從 L1 存入 L2,再從 L2 提回 L1,更進一步的,如何從一個 L2 網絡提取到另一個 L2 網絡,是一個核心問題,我們將承擔這一責任的基礎設施稱為橋(Bridge)。
原生橋實現
我們研究了當前主流的 Rollup 方案的原生橋實現原理,並從 Optimistic 和 zkSync 方案中各選取一個代表,進行對比。
Arbitrum
Arbitrum 協議利用其 L1、L2 之間的通信能力,理論上可以無須信任的將任意形式的以太坊資產(包括 Ether、ERC20、ERC721 等)在 L1、L2 之間轉移。當將資產從 L1 轉入 L2 時,資產被存入一個 L1 上的 Arbitrum 橋合約中,之後一筆相同數量的資產在 L2 上被鑄造並存入指定地址;而將資產從 L2 轉回 L1 時,資產將在 L2 上被銷毀,隨後等量的資產將在 L1 的橋合約中變為可用。此外,從 L2 贖回資產到 L1 時,有一個關鍵性的區別是,用戶發送交易後,必須等待一個挑戰期的結束,才能最終在 L1 上執行。這是由 Optimistic Rollup 安全模型決定的。
值得注意的是,官方建議使用「可重試票據 Retryable Tickets」機制進行 L1、L2 之間的通信。可重試票據的運作方式大致如下:L1 向 L2 發起的交易首先被存入 inbox 中,並附帶 calldata、callvalue、gas info 等交易參數。當這筆交易首次執行失敗後,它將被放入 L2 的「重試緩衝區(retry buffer)」中,這意味著在一段時間內(通常為一個挑戰期,即大約一周),任何人都可以通過重新執行這筆交易來贖回票據。L2 至 L1 的重試交易沒有時間限制,爭議期結束後的任何時間點都可進行。
這種機制設計主要是為了應對這樣的場景:當某個用戶希望將某筆 token 從 L1 存入 L2,首先會將這些 token 存入 L1 的橋合約中,同時在 L2 上鑄造等量的 token。假設 L1 上的交易已經完成,但是 L2 上的交易卻因為手續費不足失敗了,這會導致一個嚴重問題:用戶在 L1 上的 token 已經轉出,但是在 L2 上卻沒收到 token,實際上,這些 token 被鎖在了 L1 的合約裡。通過可重試票據機制,用戶(或者其他任何人),可以在一周內,使用足夠的手續費重新執行這筆交易,並最終在 L2 上獲得 token。
以下是 Arbitrum 原生橋的基本步驟:
L1 ->L2
用戶從 L1 發起 Deposit 交易
資產存入 L1 合約,交易被批量存入 Inbox 中
交易在 L2 被執行,鑄造資產轉入指定地址
如果交易失敗,則交易被存入 L2 的重試緩衝區,用戶可以在一個挑戰期內發起重試
L2 -> L1
用戶在 L2 發起 Withdraw 交易
L2 鏈將在一定時間內收集到的交易打包,生成默克爾樹,並將根節點作為 OutboxEntry 發布到 L1 的 Outbox 中
用戶或者任何人可以對根節點和交易信息進行默克爾驗證
挑戰期結束後,用戶即可在 L1 完成交易,如果交易失敗,則用戶可以發起重試
詳情可參考 官方文檔。
zkSync
在橋實現上,zkSync 和 Arbitrum 相比,主要的區別在於 Withdraw 時,對交易的驗證採用了基於零知識證明的有效證明,而非欺詐證明,其基本步驟為:
L2--->L1
用戶在 L2 發起 Withdraw 交易:將交易數據編碼為字節串,並使用正確的 zkSync 私鑰對該字節串進行簽名,並為交易描述生成 Ethereum 簽名或提供 EIP-1712 簽名,通過相應 JSON RPC 方法發送交易
發送交易到 L1:交易進入 zkSync operator 創建的區塊,並發布到 L1 上的 zkSync 智能合約中
對區塊進行驗證:若干分鐘後,證明該區塊正確性的 ZK proof 將生成,該 proof 會通過一個驗證交易發布到 L1 上,直到這個驗證交易完成,Withdraw 交易完成
詳情可參考 官方文檔。
可以發現,在退出時間上,zk Rollup 方案明顯優於 Optimistic Rollup 方案,但由於 zk Rollup 要實現完全兼容 EVM 尚需時日,所以預計 Optimistic Rollup 仍然會成為前期主流 L2 方案。也正因此,利用第三方橋來解決 Optimistic Rollup 退出期太長的問題,來帶給用戶更好的使用體驗,成為一些團隊努力的目標。
DeGate Bridge 設計理念和實現原理
DeGate Bridge 的目標是在 Rollup 生態早期能夠幫助以太坊資產遷移門檻最大程度的降低,服務基於以太坊 Rollup 的二層基礎設施的應用大規模落地。我們認為在現階段基礎設施條件下,優秀且足夠好的流動性解決方案需要具備 :
第一,能夠通過市場方式對不同層的流動性分布進行自動調節。
第二,能夠實現資金效率最大化的 0 資金凍結的非預付方案。
第三,最低的 Gas 消耗和最優的用戶體驗也至關重要。
DeGate Bridge 基於優化穩定幣 AMM 曲線和交易市場的方式實現跨層資產轉移的快速通道,受限於提供 L2 狀態的預言機的咱不完善,首期的 DeGate Bridge 將通過中心化托管資產的方式實現,當以太坊 L2 上出現成熟的預言機服務後,DeGate Bridge 將轉向以去中心化的方式實現資產的橋接。
DeGate Bridge 詳細方案設計,可參考文章:基於低滑點 AMM 曲線的跨 Rollup 流動性方案
Bridge 方案對比
在這一小節中,我們將對已上線生產或者測試網的原生 Bridge 和 DeGate Bridge 進行實測,並主要考察以下幾項指標:
上下橋 Gas 費用;
上下橋時效性;
操作複雜度;
我們在測試中統一使用 ERC20 代幣而非 ETH (ETH 無須 Approve,且手續費更便宜),同時我們按 ETH 價格 $4000,Gas Price 為 100Gwei 對手續費進行擬合。
最終對比結果如下
Withdraw 手續費計算方式說明:
Optimism(SNX):提幣操作會聚合多筆交易,按總手續費除以交易筆數計算
Arbitrum (Testnet):二層費用不計,只計算一層交易消耗 Gas 費
zkSync:費用在二層以多種 token 支付,通過一層到帳交易計算大概成本
DeGate Bridge:費用在二層以多種 token 支付,通過一層到帳交易計算大概成本
通過對比可見:
時效性:Optimistic Rollup (包括 Optimism 和 Arbitrum)的下橋時間普遍需要 2 天-1 周,表現較差,DeGate Bridge 的表現較好,接近即時;
Gas 費用:Optimism 表現最差,Degate Bridge 的手續費消耗最少,特別是還節省了 Approve 的手續費;
操作複雜度:DeGate Bridge 可以在無需用戶 Approve 的情況下直接交易,對用戶體驗更加友好;
展望
我們相信 Layer2 和以太坊 2.0 的相繼落地,將有機會成為以太坊的二次增長曲線,使以太坊進化為承載數萬億美元規模的經濟帶寬。而 L2 Bridge 將作為區塊鏈基礎設施之一,在這一過程中發揮重要的作用。