首頁科技 > 正文

Rollup割裂以太坊生態,V神、Matic、Celer等想怎麼解決?

2021-04-14由 火星財經 發表于 科技

Rollup割裂以太坊生態,V神、Matic、Celer等想怎麼解決?

免責宣告:本文旨在傳遞更多市場資訊,不構成任何投資建議。文章僅代表作者觀點,不代表火星財經官方立場。

小編:記得關注哦

三月將會是 Rollup 擴容方案的高光時刻。從進度看各個 Rollup 方案已經蓄勢待發,有些方案已經明確將會在 3 月上線,而 Rollup 擴容方案的上線,將會為行業帶重大影響。

但由於 Rollup 之間難以互通,這就造成了以太坊生態的割裂,不同協議之間難以實現協同性,對 DeFi 非常重要的可組合性也將支離破碎。那有沒有辦法解決這個問題呢?

今天聊一聊幾種想要解決跨 Rollup 互動問題的方案,看看如何將不同 Rollup Layer2 擴容方案連線起來,保持協議間的可組合性和協同性。

一、 Rollup 蓄勢待發

之前我們已經介紹了 Optimism、ZkSync、Arbitrum 以及 StarkEx 這四種主要的Rollup 擴容方案,這裡再進行簡要敘述,以作為背景。

四種 Rollup 方案的詳細內容,可以點選檢視:《四種主流 Rollup 方案及熱門 DeFi Layer 2 進展盤點》。

不同的 Rollup 方案和 DeFi 協議的選擇

Rollup割裂以太坊生態,V神、Matic、Celer等想怎麼解決?

目前四種主要 Rollup 擴容方案各自都吸引到了一批生態使用者,其中:

Optimism 吸引了來自 Uniswap、Compound 的目光,更是在主網預啟動之後,得到了合成資產交易平臺 Synthetix 的深度參與。

Curve、StablePay、GitCoin 採用或計劃採用 Matter Labs 的 zkSync 方案作為擴容選擇。

Offchain Labs 所建立的 Arbitrum,有多個 DeFi 專案已開始測試或有計劃使用,包括 Bancor、Bounce、DODO、麥子錢包、Burgerswap、Hop、MCDEX 和 Swapr 等。

StarkEx 一邊,也不乏戰友。去中心化合約交易平臺 dYdX 會使用 StarkEx 所支援的 Layer2 網路,還有 Paraswap,DeversiFi 等應用,也會使用 StarkEx 的方案。

各 Rollup 擴容方案進展如何?

Optimism 二月份宣佈完成 A 輪融資, 領投方為 Andreessen Horowitz (a16z),將於三月份上線主網。

Arbitrum 由學術性研究計劃而肇始,在計劃進入商業化階段時,曾申請專利。團隊近日表示,在徵得普林斯頓大學同意後,考慮到專案進入社群成熟階段,將放棄專利。

 Arbitrum 也公告主網處於即將上線階段。

zkSync 專案的創始團隊 Matter Labs 也公開了 A 輪融資的資訊,“聯合廣場風投(USV)領投該輪,此前的投資者 Placeholder、1kx 和 Dragonfly 繼續參與本輪,除此之外還有 zkSync 的生態合作方參與了投資,其中包括 Aave、Balancer、1inch、Curve、Binance、Coinbase Ventures、火幣、路印、Argent、MYKEY、imToken、Flexa、MoonPay、ripio、ZKValidator、CoinGecko”。

 Matter Labs 表示,zkSync 將於今年支援圖靈完備的智慧合約(Solidity)。

二、 Rollup 導致生態割裂

大多數 DeFi 協議都是基於智慧合約而建立的,這些智慧合約部署在 Layer1 的以太坊上,並透過各自的方式,連線到自己的 Layer2 網路。

對使用者來說,將資金存入智慧合約,開始使用這些 Layer2 網路,智慧合約會記錄所有的交易變化,使用者在 Layer2 網路上使用,能提升效率,降低成本。

但是如果 Synthetix 和 Uniswap 分別存在於不同的 Layer2 網路上,那麼彼此之間可能就處於各自的孤島,如何互動會成為問題。

如何讓不同的擴容方案連線起來,保持 DeFi 協議最為人所知的可組合性和協作性?

在幣乎社群的一次線上 AMA 中,Vitalik 提到了目前 Rollup 等 Layer2 方案需要解決的兩個問題:

以太坊的社群很多應用喜歡呼叫智慧合約,比如 DeFi 的專案。但目前的 ZK Rollup 不支援智慧合約,只支援發幣、交易幣等簡單的應用。這是第一個問題。當我們有支援完整 EVM 的 Rollup 的時候, 我覺得會有更多的使用者搬到 Rollup。

現在 Rollup 相關的基礎設施生態還不多。比如我們還沒有解決不同的 Rollup 之間交易的問題。如果我有一些幣在 ZKsync 怎麼把幣搬到路印?首先需要把幣從 ZKsync 的二層提取到以太坊底層,然後再轉移到 Loopring 的二層賬戶。如果這樣做了,交易費會不會特別高?

現在以太坊上會有很多使用者體驗方面的挑戰(問題)。但我覺得6個月之後很多這些問題都會解決。

那麼如何解決?

三、 Vitalik 提案:如何實現跨 Rollup 轉賬

幾天前以太坊聯合創始人 Vitalik Buterin 提了個想法,將不同的第二層擴充套件解決方案連線起來,這樣它們就可以相互“交談”,以保持 DeFi 協議的可組合性和協同性。

Rollup割裂以太坊生態,V神、Matic、Celer等想怎麼解決?

假設存在兩個 Rollup:A 和 B。使用者 Alice 想要將 Rollup A 上的一些代幣,換成 Rollup B 上的另外一些代幣。假設存在兩種情況:

Rollup A 和 Rollup B 都能夠支援合約

只有一個 Rollup 支援智慧合約,另一個 Rollup 只支援簡單的轉賬。

第一種情況,社群也有一份提案,名為 “Hop: Send Tokens Across Rollups(Hop: 跨 Rollup 傳送代幣)”,地址見:https://ethresear。ch/t/hop-send-tokens-across-rollups/8581。

Vitalik 的提案,針對第二種情形,即:如果 RollupA 只支援簡單的轉賬交易,而 Rollup B 支援智慧合約。

V 神提議,有一種簡單的方法,可以將這些各自孤立的合約網路連線起來。

Rollup割裂以太坊生態,V神、Matic、Celer等想怎麼解決?

跨 Rollup 轉賬的基本場景

“假設有一個交易中介,名為 Ivan(當然有很多中介可以選擇,這裡只是舉例)。Ivan 在 Rollup A 上有一個帳戶 IVAN_A (他完全控制該帳戶)。Ivan 也有一些資金存入到 Rollup B 上的智慧合約 IVAN_B 中。”

設想有如下的操作:

Alice 向 Rollup A 上的 IVAN_A 賬戶發起一筆交易,轉賬到 Rollup B 上的賬戶:ALICE_B。(Alice 在 Rollup A 上轉給 IVAN)

Ivan 能怎麼辦呢?他會透過 IVAN_B 賬戶,傳送一筆交易,將扣除了手續費之後的代幣數量,傳送到 ALICE_B 這個賬號中。

在第一步之後,第二步可以立即進行。如果 Ivan 證明第二筆交易跟第一筆交易之間的差異非常小,那麼甚至可以在合約裡設定規則,允許收取更高的費用。

“最壞的情況”是 Ivan 沒有像預期的那樣向 ALICE_B 傳送代幣。在這種情況下,Alice 可以等待Rollup A上的交易確認,然後透過其他途徑獲得Rollup B 上的代幣用來支付跨 Rollup 傳輸的手續費,然後她自己就可以 claim,獲得資金。

按照 V 神的解釋,使用者 Alice 可以直接在 Rollup B 上完成。

只需要讓 Rollup B 可以獲得在前一 批 Rollup 記錄之前的 L1 上的相應 hash 記錄,然後 RollupB 就能夠記錄下來 Merkle 分支,能夠在 Rollup 裡驗證。

通俗來說,透過技術方式能夠確保使用者 Alice 在 Rollup A 上交易確認之後,可以有方式安全的在 Rollup B 上領取到對應的資金(支付了手續費之後),避免因為其中某一個或者幾個交易中介出現問題,導致資金受損。

無論這個交易中介 Ivan 是誰,為什麼別人會選擇轉給他代幣,這些可以暫時不管;這裡的含義是,存在連線層,讓存入到各類孤立的 Layer2 智慧合約上的資金保持同步,實現跨 Rollup 轉賬的功能。

具體的實現細節,可能要了解在 Rollup B 上的合約 IVAN_B 的規則了。遵從下面的設定(為便於理解有所刪減):

如果任何人發起一個交易,傳送若干數量的比特幣到 IVAN_A 這個賬戶(存在 Rollup A上),在 memo 中,包含了目標地址的資訊。那麼,在若干時間之後,他們可以向合約 IVAN_B 傳送一筆交易,該交易包含了轉賬的證明,該證明能夠將對應數量的比特幣提到在 Rollup B 上的目標地址之中。

提款要經過一些延遲(例如,1天的時間),是為了確保對應的轉賬批次和索引可以記錄到 Rollup A 的 Layer2 網路之中。

當 Ivan 在 IVAN_A 收到資金時,他可以自己將代幣傳送到目標地址。他可以透過 IVAN_B 合約傳送交易。

在這種情況下,

 Ivan 充當了結算商的角色,可以收取一定的轉賬手續費,讓 Rollup A 這個只支援簡單轉賬交易的Layer2 網路,和可以支援智慧合約交易的 Rollup B,能夠連線起來。而透過轉賬證明、Merkle 索引等方式,也確保使用者資產能夠在轉移過程中不會遇到損失。

結算商充當了跨 Rollup 轉賬的協作角色

Ivan 自己也需要進行內部結算,畢竟有可能在某個 Rollup 上會耗盡資金。比如,使用者一直在透過 Rollup A 向 Rollup B 轉賬,需要透過 Ivan 在 Rollup B 上的儲備資金轉給使用者所指定的地址。這時候 Ivan 這類交易中介,就需要進行內部結算了,也因此這提案的限制,會要求 Ivan 這類中介商持有大量的資金在賬戶之中,以便服務使用者需求。

我們用法幣舉例,或許能更好理解。如果你從 工商銀行 向建設銀行的卡轉賬,儘管 ATM 機上顯示立即變更了,但是實際的結算過程是每天進行一次,只有在工行結算後,才將實際的資金轉給建行,更具體來說,是透過在央行的結算賬號之間進行的。

同樣的,從支援智慧合約的 Rollup B 向只支援普通轉賬的 Rollup A 發起轉賬交易,也是類似的操作。

Alice 傳送代幣至合約賬號 IVAN_B, 並附上了目標地址;

若干時間之後,Alice 可以將資金取回;

不過如果中間 IVAN 這個中間商能夠提供證明至智慧合約 IVAN_B, 附上鍊上的轉賬記錄等資訊,證明自己已經將資金在 Rollup A 上轉給了 Alice,那麼,Alice 就不能再取回資金了。這時候,跨 Rollup 轉賬完成。

至此,我們大致理解了 Vitalik 提案之中所提到的跨 Rollup 轉賬原理,並且只需要其中一個 Rollup 支援智慧合約即可實現,主要引入了 IVAN 這一中間商來支援跨 Rollup 轉賬。

至於如何設定限定,避免中間結算層的資金不足和浪費、以及轉賬的 Memo 應該如何設定等技術細節,可以檢視 Vitalik 的提案所述: https://ethresear。ch/t/cross-rollup-dex-with-smart-contracts-only-on-the-destination-side/8778。

四、Hop 的跨 Rollup 轉賬方案

上文中,我們還提到過另外一個場景:兩個 Rollup,比如 ZKSync 和 Optimism,都支援智慧合約,那麼如何實現跨 Rollup 互動?

Hop 團隊成員 chris whinfrey 1 月 24 日在 ETH Research 論壇發了一篇帖子,介紹 Hop 如何跨 Rollup 進行去中心化的代幣轉賬。

內容如下:

Hop protocol 提供了去信任、可擴充套件的跨 Rollup 通訊橋。致力於:

快速輕鬆實現跨 Rollup 代幣轉移

可以快速從 Rollup 中退出

最終實現跨 Rollup 合約呼叫的功能

在 Hop 團隊看來,對於解決跨 Rollup 可組合性問題,他們提供了廣泛的解決方案,透過雙管齊下的方式實現:

建立一個跨網路橋接代幣,可以快速而經濟地從一個 Rollup 移動到另一個 Rollup ,或者在 Layer1 上建立,支援領取對應的底層資產。

使用自動做市商(AMM) 在每個 Rollup 上的每個橋接代幣和其對應的代幣之間進行交易,以便動態定價,並讓整個網路的流動性再平衡。

換句話說,藉助於一個錨定代幣(比如 Bridge),在多個 Rollup 上都有部署,也可以在 Layer1 的以太坊網路上部署並支援 Layer1 跟 Layer2 的 Rollup 上的 Bridge 代幣的1:1錨定兌換。

Rollup割裂以太坊生態,V神、Matic、Celer等想怎麼解決?

如果使用者想要從 Rollup A 轉賬 100 個 BTC 到 Rollup B 上自己或者他人的賬號中,那麼,就有如下的過程:

首先,在 Rollup A 上,透過 AMM 將這 100 個 ETH 兌換為 Bridge_A 代幣,即橋接代幣;

交易確認之後,Rollup B 上透過 AMM 將 Bridge_B 代幣兌換為 100 個 ETH 代幣,然後轉給使用者所指定的在 Rollup B 上的對應地址;

由於 Bridge_A 和 Bridge_B 都是同樣的代幣,只是起到了跨 Rollup 橋接的作用,他們的比值是 1:1 錨定的。如果有價值波動,套利者會進行無風險套利,搬磚搬平差價。

Hop 目前已有測試網上線 https://hop。exchange/send。

五、還有沒有其他方案?

除了上述方案之外,Celer 跟 Matic Network 的方向我們也一併聊聊。

Celer 的 Layer2 方案:原地擴容

Rollup割裂以太坊生態,V神、Matic、Celer等想怎麼解決?

國產 DeFi 專案 Celer 提出了個新的思路,稱為“原地擴容”,原地的意思就是,讓 DeFi 專案繼續在 Layer1 即可,不需要專門去 Layer2 另外部署專門的版本,即可透過 Celer 的方案——Layer2。finance, 實現擴容。

Rollup割裂以太坊生態,V神、Matic、Celer等想怎麼解決?

根據 Celer 團隊的介紹,在該場景下,使用者的資產存放在 Layer2 鏈上(Celer 從基於 Optimistic Rollup 的方案開始,後續擴充套件升級,支援 ZK Rollup),然後使用者傳送指令,告訴 Layer2。finance 協議自己的操作要求,指明將自己的多少資金、存放到哪些 DeFi 協議中,比如 Curve、AAVE、Compond 等位於以太坊 Layer1 網路上的 DeFi 協議。

透過這種方式,Layer2 充當了命令代理,使用者儲存資產 + 傳送指令即可,而具體的業務邏輯,則仍然是交給了 Layer1 上的 DeFi 協議執行。而不同使用者的命令,可以透過合併交易的方式,更經濟的與 Layer1 合約互動。

該方案預計在3月份上線。

Matic Network 品牌重塑:Polygon

Rollup割裂以太坊生態,V神、Matic、Celer等想怎麼解決?

Polygon 原名為 Matic Network,則走了另外一條路,定調為 Layer2 聚合器,透過兩種方式實現擴容:

依賴以太坊網路,藉助對應網路上的驗證者,並支援 Matic Plasma、zkRollups、Optimistic Rollups、Validium 等方案。

建立自己的子鏈體系和獨立的驗證節點,自行負責自己的安全性。這一方向,目前已經上線的是 Matic PoS 鏈。

Matic Network 升級之後的方案走得更遠,除了依託現有生態之外要獨立建立自己的生態體系,所付出的努力也要更多。據統計,目前有 80 多個 DApp 部署在 Polygon 上,涵蓋 DeFi、NFT、遊戲等領域。

按照當前的進展,Matic Pos 鏈和 Matic Plasma 方案已上線,而目前還未支援 zk Rollup 和 Optimistic Rollup,這些方案會在未來上線。限於篇幅,對 Polygon 不再展開。Polygon 連結見:https://polygon。technology/

Rollup割裂以太坊生態,V神、Matic、Celer等想怎麼解決?

六、 小結

三月份會很熱鬧,Arbitrum、Optimism 的主網上線,標記著我們目前處在 Rollup 等 Layer2 方案的爆發前夜。

 Layer2 方案爭奪使用者的舉措,會成為三月份以及上半年的一大母題。

而不同 Layer2 (具體來說 Rollup)之間如何相容,避免破壞 DeFi 的協作性?目前見到的這幾個方案,其實也都在摸著石頭過河。Vitalik 的提案,Hop 的實現,以及 Celer 的創意,或許能夠解決各自設想中的問題,但是跨 Rollup 實現 DeFi 的呼叫組合,仍然是個擺在前方的大難題。

另一方面,最近 Sushi 等協議在多條鏈上部署的動作,或許預示了另外一種可能性,跟 Hop 方案之中所提到的類似,藉助於 AMM + 協議自身代幣的方式,或許許多 DeFi 協議會先嚐試在內部打通不同 Layer2 網路及 Layer1 之間的隔閡,形成閉環。

也許未來隨著更多 DeFi 加入 Layer2 的行列,更廣泛意義的 DeFi 聚合器巨無霸將會出現,現在還只是剛剛開始,讀者朋友們不妨多想想多看看。

參考資料:

https://mp。weixin。qq。com/s/2HYIsxnUaovKYs19xQ_KbQ

https://www。trustnodes。com/2021/03/02/vitalik-buterin-proposes-cross-rollup-scaling-solution

https://www。chainnews。com/articles/872971457746。htm

https://hop。exchange/whitepaper。pdf

頂部