作者: Hermez Network
翻譯: 閔敏
我們很高興地宣布,我們正在開發 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 合作。如需了解更多資訊,請聯系我們。