跨鏈橋的未來:全鏈互操作成必然,流動性橋將沒落
作者:0xmiddle,極客Web3
編輯: Faust ,極客 Web3
導語: 在Web3生態中,跨鏈橋 是一個非常重要的部分,它是打破鏈間孤島、實現萬鏈互聯的關鍵設施。在過去,人們對跨鏈技術的探索和實踐非常活躍,相關的跨鏈橋產品已經達到上百個, 有的致力於構建一個統一的互操作層,有的則試圖打通多鏈資產流通,願景不盡相同,在技術方案上也各有取捨。
本文希望探討的是:跨鏈橋的未來是怎樣的? 什麼樣的跨鏈協議更有前景?什麼樣的跨鏈應用更有可能獲得大規模採用?開發者應該採用什麼方式來構建跨鏈應用?下文中,作者將對跨鏈橋的發展趨勢展開探討,並先拋出三個核心論點:
安全、高性能的新一代跨鏈橋會成為主流
全鏈應用會成為新的 dApp 範式
USDC 等資產發行方的官方橋會取代流動性互換橋
正文: 跨鏈技術可以理解為是擴容的延伸,當一條鏈不足以承載所有交易請求時,那就讓多鏈來承載,用跨鏈橋將它們連接起來。要理解跨鏈橋,首先要理清跨鏈橋要解決什麼問題,以此分為不同的層次。
簡單來看,跨鏈橋可以分出 協議層 和 應用層。協議層負責為跨鏈消息傳遞提供一個安全、有序的平台,而應用層則基於該平台構建 dApp 以面向用戶,滿足不同場景下的各類需求。
跨鏈橋在協議層的演化
協議層的核心是跨鏈消息傳遞的安全機制,也就是對跨鏈消息的驗證方式。根據驗證方式的不同,以及Vitalik等人的想法,業內曾將跨鏈橋劃分為三種:基於哈希時間鎖的原子交換、見證人驗證 和 輕客戶端驗證。後來,Connext 創始人 Arjun Bhuptani 將跨鏈橋歸納為本地驗證、外部驗證和原生驗證 三種範式。
其中,本地驗證僅適用於資產跨鏈,不能支持任意消息跨鏈,且用戶體驗並不友好(需要用戶操作兩次才能完成一筆交易)。一些最早採用此方案的跨鏈橋已經改弦更張,放棄了該路線。原生驗證最安全,但成本太高,一方面是用戶付出的 Gas 成本太高,甚至在某些情況下完全不具備經濟可行性。另一方面,開發者的 coding 成本太高,為了接入不同的區塊鏈,需要分別開發對應的輕客戶端驗證程序,工程量極大,採用範圍也極其有限。 最後,大多數跨鏈橋還是採用外部驗證方案,用戶的Gas成本和開發實現成本都相對較低,且支持任意消息跨鏈。但外部驗證最被詬病的就是安全性,無論是今年暴雷的 Multichain ,還是此前被黑客盜取密鑰的 RoninBridge(Axie Infinity官方橋) 和HorizenBridge(Harmony Chain官方橋),都在告訴我們,單純的外部驗證方案無法成為跨鏈橋的終局!跨鏈橋的安全隱患阻礙了跨鏈 dAPP 的發展,應用層在設計相應業務時變得十分謹慎,一來要儘可能避免與跨鏈互操作有關的環節,二來知名應用會傾向於自建跨鏈橋(AAVE、Maker、Compound 等頭部 DeFi 項目都是如此)。可以想像,在一座治安很糟糕的城市,人們會選擇儘量不出行,富人出行時則會自帶保鏢。但讓人欣慰的是,新一代更安全的跨鏈橋正在快速成長起來,它們當中有 LayerZero、Chainlink CCIP 這樣的雙安全層橋;有將 ZK 技術和輕客戶端結合的ZK橋(代表項目:Polyhedra、MAP Protocol、Way Network);有將經濟博弈機制用於保護跨鏈安全的樂觀驗證橋(代表項目:Nomad、cBridge );還有將 ZK 和 TEE 技術結合的橋(代表項目:Bool Network)。【想了解他們的具體機制,可以參考作者此前的文章《 Multichain 倒下了,拿什麼拯救跨鏈橋?》】總之,新一代跨鏈橋基礎設施在不犧牲性能的基礎上,實現了更高的安全性,為應用層在跨鏈互操作相關設計上提供了堅實保障。
跨鏈交互在應用層的範式變遷
最初,所有 dApp 幾乎都部署在以太坊上,因為沒的選。但隨著應用層生態的繁榮,以太坊不堪重負,這給了其他公鏈發展的機會,先後出現了各種 ETH Killer,以及側鏈、 Layer2。從 dApp 的角度看,以太坊就像上海這樣的超大城市,人口眾多但資源緊張、寸土寸金,如果我的業務場景對吞吐量要求較高,但對互操作性要求不高,那就可以部署在一條不太擁擠的側鏈上。比如一家印刷廠或種植園就沒必要開在上海,而可以在郊區選址。dYdX出走以太坊的故事,想必大家都很熟悉了。同時,一個 dApp 可以在多鏈上部署,搞"連鎖經營",服務不同鏈上的用戶,擴大規模和收入。例如,首個吸血鬼攻擊的成功案例------ Sushiswap 就喪心病狂的在 28條鏈上做了部署,我們能想到名字的公鏈上,基本都有 Sushiswap。但這種多鏈的應用生態給用戶帶來了很差的體驗: 為了與不同鏈上的應用交互,還要理解不同鏈的區別,在多個鏈上註冊地址,在每條鏈上都充值 gas 費,最後再把資產在不同鏈轉來轉去------天呐,太累了!更要命的是,很多 DeFi 協議都涉及到流動性的使用,你部署在多鏈上就得在多鏈上引導流動性,這會讓流動性分散在不同鏈上,深度不共享, 用戶在交易時,會產生更大的price impact。對此,有人對以太坊 L2 的發展表示擔憂,認為 L2 可能會分解掉以太坊的流動性,使其喪失競爭優勢。也有研究者提出了 SLAMM 這樣的統一流動性解決方案,但這個方案製造的問題比解決的問題還多,十分蹩腳,這裡就不展開敘述了,感興趣的朋友可以去找相關資料看看。真正核心的問題是:怎樣才能把各個鏈上的資源和生態都聚合到一起,讓用戶不必感知"鏈"的存在? 比如我有 1 個ETH,能否想在哪用就哪用,把自動兌換並支付不同鏈的Gas 這些環節隱藏掉?我想使用某個應用程序,能否在哪條鏈都可以用,而不用把資產跨過去?同時,項目方也不用再站隊選鏈,不用在多鏈上重複部署,而可以部署在最適合的鏈上,然後不同鏈上的人都可以來用?應用層需要一種新的範式,把"鏈"這一層隱藏掉。 有人模仿"賬戶抽象"的概念,創造了一個新詞彙叫"鏈抽象",就是這個意思。我們來看一個 LSD 項目是怎麼做的?For example,Bifrost 自稱是 全鏈 LSD 的開拓者,採用不同於其他 LSD 產品的架構設計。Bifrost 有一條自己的鏈 Bifrost Parachain,該鏈是 Polkadot 的平行鏈。Bifrost 的流動性質押模塊僅部署在 Bifrost Parachain 上,其 LSD 資產------ vToken 的流動性也全在 Bifrost Parachain 上,但其他鏈可以通過遠程調用的方式使用 Bifrost Parachain 上的流動性質押模塊和流動性。如此一來:
- 用戶可以在其他鏈鑄造 vToken ;
- 用戶可以在其他鏈贖回 vToken ;
- 用戶可以在其他鏈兌換 vToken ,但背後觸及的是 Bifrost 鏈的流動性;
- 用戶可以在其他鏈為 Bifrost Parachain 上的 v Token / Token 池子提供流動性,並獲得 LP Token ;
- 用戶可以在其他鏈銷毀 LP Token ,以贖回流動性。
這些操作,用戶完全感覺不到背後的跨鏈傳遞過程,一切就像在本地完成一樣, 大家可以通過 Omni LSD dApp 去體驗一下。Omni LSD dApp 目前支持在 Ethereum、Moonbeam、Moonriver、Astar 上遠程鑄造/贖回/兌換 vToken。如果沒有上述功能,用戶如果想在 Moonbeam 上鑄造 vDOT,必須手動操作三步,很麻煩!① 把DOT從Moonbeam跨鏈轉入Bifrost② 在Bifrost鏈上質押DOT獲得vDOT③ 將vDOT跨鏈轉回Moonbeam而通過遠程調用功能,用戶的資產看似無需離開 Moonbeam 鏈,即可完成上述三個步驟, 直接在 Moonbeam 鏈上將 DOT 轉換為 vDOT 。也就是說,整個過程,用戶就像在使用 Moonbeam 本地應用一樣體驗 Bifrost 鏈上的服務。聽起來很酷吧!可這怎麼實現呢?其實也不複雜,Bifrost 在其他鏈上部署了一個遠程模塊(remote modular),用於接收用戶請求,並跨鏈傳遞給 Bifrost Parachain,流動性質押模塊處理完成後,再將結果跨鏈返回遠程模塊。用戶只需在遠程鏈上發起請求,後續的過程,會由 Relayers 觸發並完成。Bifrost 將其架構稱為"全鏈架構" ,與其他 LSD 協議的多鏈部署策略的對比如下圖:之所以這麼濃墨重彩的講 Bifrost 的架構,是為了讓大家徹底理解 Bifrost 所說的"全鏈架構"是怎麼回事,Bifrost 的架構所代表的其實是一種全新的通用範式。Chainlink 在其博客文章《跨鏈智能合約》一文中,曾將這種架構描述為"總店+分店"模型。應用程序的主要邏輯放在一條鏈上,就像一個"總店",然後其他鏈上提供一個遠程訪問模塊,以實現與終端用戶之間的交互(獲取用戶輸入,輸出用戶想要的結果),就像一個個"門店"。門店獲取用戶的輸入後,將該輸入跨鏈傳遞到總店,總店進行處理後輸入結果,再將該結果跨鏈傳遞到門店,向用戶輸出。某些情況下,總店的不同模塊可能被拆分到不同鏈上,它們共同構成一個虛擬的總店。該架構下,程序的主要邏輯都在總店,應用程序擁有一個統一的狀態記錄,流動性割裂和用戶體驗割裂的問題都得以解決。此外,該架構的應用還具有更好的跨鏈可組合性,其他鏈上的應用程序也可以像其他鏈上的用戶一樣,遠程訪問總店的功能。儘管 Bifrost 將該結構稱為"全鏈架構",作者個人並不是很喜歡"全鏈",也就是 Omni-Chain 這個詞,因為這是一個含義不明的詞彙,最初 LayerZero 發明這個詞彙,用來彰顯它那無可比擬的可擴展性,但 LayerZero 也未曾完全說明白究竟什麼是"全鏈"。難道是"全部的鏈"?必然不是,沒有什麼應用跑在全部的鏈上。作者有個做遊戲的項目方說自己做的是全鏈遊戲,細問才知道,這個"全鏈"是指"代碼全部都上鏈",和一些 Web3 遊戲僅把資產數據上鏈區別開,和 LayerZero 說的"全鏈"風馬牛不相及。我認為更合適的表述還是"鏈抽象" ,Chain-Abstraction,或者 Chain-Agnostic(與鏈無關),二者都可以表達一種"用戶無需關心鏈"的狀態。
流動性互換橋的必然沒落
最後我們要談的是跨鏈領域的另一個重要命題------流動性。首先我們搞清楚它是哪些層次的問題。流動性不屬於協議層,因為它無關乎跨鏈消息安全有序傳遞的問題,它屬於應用層,而且是一類特殊的應用------ SwapBridge。跨鏈應用中最大的類目必然是資產橋,資產橋又分為WrapBridge 和SwapBridge,前者通過lock-mint/burn-unlock邏輯幫助用戶實現資產傳遞,也稱為"資產傳遞橋",SwapBridge 則通過在多個鏈上儲備流動性來幫助用戶實現原生資產的直接互換,也稱"流動性互換橋"。其中,SwapBridge 的應用範圍最廣,項目眾多,不同的 SwapBridge 項目本質上競爭的是流 動性效率, 誰能夠用最小的流動性支出為用戶提供最大的深度。換個角度說,流動性正是 SwapBridge 提供的服務核心,大家比拼的是誰更有成本優勢,這和普遍意義的商業競爭是同一個邏輯。這裡大家需要明白的是,補貼策略創造的成本優勢是不可持續的,你必須在流動性機制設計層面有優勢才行。SwapBridge 賽道上的諸多項目,包括Stargate、Hashflow、Orbiter、Symbiosis、Synapse、Thorswap 等,在提高流動性效率方面堪稱八仙過海各顯神通,也產生了不少可圈可點的創新,作者之前寫過一篇文章對此進行盤點:《 萬字報告:盤點25座流動性互換跨鏈橋及其流動性機制 》但 USDC 發行方 Circle 推出的 CCTP 讓眾多 SwapBridge 的努力變得毫無意義,換句話說,CCTP 幹掉了 SwapBridge。這種感覺就像三體文明花了數億年、200 多輪文明去求解三體問題,但最終 Circle 告訴你:三體問題無解!比如,在資產的跨鏈兌換中,USDC是最廣泛採用的媒介資產,也就是說,當你需要把 X 鏈上的 A 資產換成 Y 鏈上的 B 資產時,往往需要在 X 鏈將 A 先換成 USDC,再將 X 鏈上的 USDC 換成 Y 鏈上的 USDC,然後再在 Y 鏈把 USDC 換成資產 B。因此,SwapBridge 在各條鏈上儲備的流動性的主要形式就是 USDC。然後 CCTP 可以支持 X 鏈上的 USDC 直接通過 burn-mint 邏輯換成 Y 鏈上的原生 USDC,無需流動性儲備。換句話說,CCTP 完全沒有流動性成本,用戶端體驗到的過橋費可以做到極低。也許你會說,除了 USDC,常用的媒介資產不還有 USDT 嗎?且不說在 DEX 領域,USDT 的使用率遠低於 USDC,你就不怕 Tether 也學 Circle,給你來這麼一出麼?所以,我想告訴各位的是:SwapBridge 已死,資產發行方的官方橋會在跨鏈流動性方面具有不可挑戰的成本優勢。至於有的 SwapBridge 轉而集成 CCTP,那就是聚合器的邏輯了。
小結
跨鏈橋協議層正在變得更加安全可靠,多簽橋的時代正在結束。過去,跨鏈給人造成的不安全印象將隨著新一代跨鏈基礎設施的普及而消弭;跨鏈應用正在通過範式迭代,大幅改善用戶體驗,"鏈抽象"的意義不亞於"賬戶抽象",正在給 Web3 的 Mass Adoption 創造條件;Circle推出的CCTP則結束了 SwapBridge 流動性競爭的戰國時代,讓我們看到了跨鏈資產兌換的終局。總之,跨鏈領域正在處於劇變之中!看明白前路,才能走得更加笃定。