以太坊自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-1271 簽名,通過相應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 將作為區塊鏈基礎設施之一,在這一進程中發揮重要的作用。