我們很高興地宣布,我們正在開發Hermez zk-rollup 的一項新功能,它可能提升整個rollup 生態系統內部的Layer 2 通信。
Hermez 將在2021 年初上線zk-rollup 網絡的第一個版本,並首次實現Layer 2 交易的大規模遷移機制。
為什麼大規模遷移具有變革性?
大多數人都已經意識到了在Layer 1 和Layer 2 之間進行切換的可用性問題以及因此產生的超高gas 費的問題。
隨著越來越多針對不同用例的Layer 2 方案湧現,可用性問題會變得更加嚴重,因為用戶在從一條rollup 鏈向另一條rollup 鍊或Layer 1 智能合約轉移代幣時需要支付高昂的交易費。這種情況可能會降低用戶資金的流動性,打擊用戶對Layer 2 方案的興趣。
在當前範式下,如果Bob 想要在Layer 2 方案之間(例如,從RollupA 向RollupB)轉移資金,他需要先將資金從RollupA 提取到Layer 1 上,再將資金從Layer 1 存入RollupB。這樣一來,Bob 就需要支付兩次gas 費,可能會讓Bob 覺得不划算。
大規模遷移簡介
這一問題的解決方案很簡單,但是實現起來很複雜。 Hermez 實現很接近Barry Whitehat 所提出的概念。
通過大規模遷移,用戶能夠像處理Layer 2 用戶之間的代幣轉移那樣處理外部Layer 1 智能合約。
這些Layer 1 智能合約需要先有一個Layer 2 地址。用戶需要知道這個地址,才能將資金轉移到該地址內。
Hermez 協議可以將同一個Layer 1 智能合約在Layer 2 上的目標地址所收到的Layer 2 轉賬進行分組和提取。
用戶的資金要去往的目的rollup 智能合約會使用標準的Hermez 功能從Layer 1 上提取同一批轉賬的總金額。雖然該合約需要支付提款手續費,但是這筆手續費可以分攤到同一批次的所有轉賬上,因此成本並不高。
接收方的L2 網絡協調員需要處理L1 的取款交易,並從信息中分解出資金的流向,再匯入到與初始rollup 的聚合賬戶對應的新rollup 上。
所有這些之所以能夠實現,是因為Hermez 協議在聚合提款交易中包含了在目標rollup 上重構Hermez Layer 2 中的原始轉賬所需信息,以及對應的賬戶信息。這可以在目標Layer 2 中通過電路處理(circuit processing)的方式來實現(如果支持的話)。
假設有一組用戶(包括Bob)都想將代幣轉移到另一條rollup 鏈上。現在,他們每個人都需要為各自的交易支付Layer 1 提款手續費。有了大規模遷移機制之後,Hermez 就可以在一筆Layer 1 交易中處理多筆交易。所有轉賬交易都能得到執行,轉賬者需要向Hermez Layer 2 支付交易費。另外,目標rollup 可能會向這些轉入交易收取少量費用。 Bob 對此很滿意。
第一版Hermez 網絡發佈時,Layer 2 方案不會具備入站處理的能力,但是該功能會在下一版本實現。事實上,對於那些在不同版本的Hermez 網絡之間進行遷移的用戶來說,大規模遷移機制非常有用。另外,該機制也可以用來連接其它Layer 2 方案。
這一新機制所帶來的可能性將為Layer 2 生態系統乃至整個以太坊社區創造巨大價值。
如果你想深入了解Hermez 背後的技術,請查看我們最新發布的智能合約。我們還在Github 上發布了Circom 電路,具體可閱讀這篇文章。我們目前正在尋找代碼審計者,與我們的技術主管Jordi Baylina 合作。如需了解更多信息,請聯繫我們。
原文鏈接:https://blog.hermez.io/hermez-massive-migrations-mechanism/
作者: Hermez Network
翻譯: 閔敏