什麼是跨鏈#
由於區塊鏈設計皆有取捨,根據分工原理,多鏈生態必將長存,現在 Web3 生態中,DApp 存在於數百個區塊鏈中。但是,區塊鏈本身不具備與外部系統或 API 通信的能力。這種限制不僅阻止了區塊鏈與現有網路基礎設施的通信,還阻止了與其他區塊鏈的通信,這一點對 web3 來說幾乎是致命的。
所以跨鏈通信對於 web3 來說至關重要,抽象來看,每一條公鏈邏輯上都是一台無需許可的、世界共用的、孤立的可信計算機(例如以太坊就是以太坊虛擬機 EVM,它是可信的、不可篡改的、邏輯統一的一台虛擬機),而跨鏈橋就是這些孤立的計算機之間的通信協議。因此,如果說公鏈是 Web3 的世界計算機,那麼跨鏈通信協議就是 Web3 的 TCP/IP 協議(區別就是,跨鏈協議比 TCP/IP 這種通信協議多了一個信任層),它的作用就是將這些孤立地可信計算機組合在一起,形成可信計算機的互聯網。也就是說,跨鏈協議是 Web3 的 TCP/IP,潛力巨大。
跨鏈協議的運作方式#
跨鏈通信協議的功能是保證一台可信計算機(如以太坊)上的狀態信息能夠不被篡改地傳遞到另一台可信計算機(如 Solana)上。具體來說,對於 A 鏈→B 鏈的可信通信協議,在傳輸 A 鏈狀態信息的過程中需要保證三點:
源鏈端:協議在 A 鏈獲取的狀態確實是 A 鏈的有最終性的狀態。
傳輸端:協議在信息傳輸的過程中狀態信息沒有被篡改。
目的鏈端:僅有協議傳輸的狀態信息能被 B 鏈接收。
而跨鏈協議的本質上是通過信任層來實現的,信任層的設計決定了跨鏈項目對其信息傳輸的安全性、成本、延遲等屬性的權衡取捨,也是跨鏈領域出現創新的地方。
信任層最直接的構建方式就是讓兩條鏈的智能合約都信任一個中間主體(這個主體可能由多個節點去中心化地組成),這個主體確認從 A 鏈獲得的狀態信息,並將之傳到 B 鏈。具體來說,如上圖所示,假設 A 鏈出現了事件 T 需要傳輸到 B 鏈,那麼跨鏈協議將如下運行:
信任層觀察 A 鏈最新區塊,發現事件 T 的信息需要被傳輸,於是把事件 T 下載到信任層中;
信任層將事件 T 的信息傳輸至 B 鏈;
B 鏈接收到信任層傳輸的事件 T 的信息,並知道事件 T 發生在了 A 鏈上。
在這套方案下,跨鏈用戶必須相信信任層不會作惡。在協議沒有代碼漏洞的情況下,只要信任層是誠實的,跨鏈信息就能被安全傳輸。若信任層作惡,信任層可以攔截信息,甚至發布假信息,從而令用戶財產收到損失。這種信任層的設計方式及其變種可以覆蓋 90% 的現有跨鏈方案。
跨鏈通信協議的意義#
越好的跨鏈通信協議,做到跨鏈可互操作性的代價就越小,越能讓在不同鏈上的合約像是就部署在同一條鏈上一樣。跨鏈通信可能的代價包括:成本、延遲、安全性等。現有跨鏈橋的缺點仍較多,巨大的跨鏈代價使得一些很明顯的多鏈應用無法出現,例如把大量 BTC 引入智能合約鏈的 defi 生態(現在 WBTC 只幫助了 1% 的 BTC 跨鏈到以太坊,因為其過於不安全),或者把全鏈流動性都聚合到一起。
進一步來說,跨鏈通信協議的發展很可能改變公鏈的競爭格局。現在公鏈的兩個重要壁壘為:1)公鏈生態項目之間因可組合性而形成的網路效應,2)流動性。這些也是以太坊現在最大的壁壘。而跨鏈通信協議的發展很可能會削弱這部分壁壘,因為:1)其他鏈上的項目通過跨鏈協議一樣可以享受以太坊上優質項目的可組合性,2)其他鏈可以無摩擦地獲得 / 奪取以太坊上的流動性。這會使得今後公鏈需要更靠產品本身的特性取勝,可能會倒逼以後的公鏈越來越專業化,做好自己分工崗位的工作,再和其他鏈配合承載一個 Dapp 的多種需求。
總的來說,跨鏈通信協議就是 Web3 的 TCP/IP 協議,可以幫助各有優勢的可信計算機(區塊鏈)組合在一起,形成可信計算機(區塊鏈)的互聯網,使得區塊鏈們能分工合作,發揮巨大價值,就如同互聯網讓全世界的計算機都匯總到一起互相合作一樣。現在的跨鏈協議還未成熟,巨大的跨鏈代價導致許多明顯的、能提升效率的多鏈應用還無法出現。隨著技術的成熟,會有越來越多的多鏈應用出現,而作為多鏈應用的重要組成環節,跨鏈協議將會捕獲越來越多的價值,市場空間巨大。