作者:Eclipse;翻譯:金色財經xiaozou
區塊鏈技術在不斷發展,不同鏈之間無縫通信的需求變得至關重要。 IBC(Inter-Blockchain Communication Protocol:跨鏈通信協議)是一個突破性的協議,支持在任何兩個區塊鏈之間進行數據傳輸。本文,我們將深入研究IBC的主要組成部分,探索IBC的工作原理,著重來看它相較於其他通信解決方案有什麼獨特優勢,並研究其最近在首個跨鏈SVM(Solana Virtual Machinerollup)Rollup Cascad上的IBC實現情況。
1、IBC的主要組成部分
IBC的核心是定義一組標準,用於管理兩個鏈之間的身份驗證和數據傳輸。為了使用IBC進行成功的通信,需要以下幾個組成部分:
(1)在各鏈上部署IBC核心通信協議;
(2)對於每條鏈來說,另一條鏈的輕客戶端都可以驗證區塊完整性和共識信息;
(3)由稱為relayer(中繼器)的鏈下程序負責查詢每條鏈上的IBC消息,並在必要時將對應的IBC消息傳遞給另一條鏈。
2、IBC運作原理
要使用IBC啟動兩個鏈之間的通信,需要建立連接和通道。該流程與TLS握手協議類似,包含四個步驟:open-init (A)、open-try (B)、open-ack (A)和open-confirm (B),其中A和B代表所涉鏈。
一旦通道開啟,一條鏈上的應用程序可以開始通過兩步流程將消息以數據包的形式發送到另一條鏈:send (A)和ack (B)。
同質化代幣傳輸(例如,ERC-20或SPL代幣)作為通用數據包發送接口之上的附加協議實現,並在ICS 20中指定。傳輸雙方的代幣傳輸應用程序將驗證代幣傳輸的有效性,然後在發送端burn銷毀代幣,使其被接收端接收。
3、IBC和其他通信解決方案有什麼不同?
IBC與其他通信解決方案的區別在於其安全模型。 IBC的信任完全依賴於每條鏈上核心協議的正確實現和輕客戶端對數據的準確驗證。不需要額外的信任假設,即使對於負責在鏈之間傳遞消息的中繼器來說也是如此。
這與Hyperlane或Wormhole的信任模型不同,後者依賴於信任橋運營商的守衛者網絡(guardian network),以正確保護其免受黑客攻擊。然而,IBC的安全性是有代價的:在兩條鏈之間實現IBC通信要更加耗時,因為每對鏈都需要編寫兩個相應的輕客戶端,並對其進行正確性和安全性驗證。
換句話說,IBC之於Hyperlane,就像Uniswap之於Coinbase:IBC更加去中心化,除了自身實現之外不需要信任假設,但正確實現可能存在難度,就好比普通的智能合約。
4、IBC如何在Cascade上運作?
Cascade是由Injective和Eclipse開發的首個跨鏈SVM rollup,它將IBC的整合提升到了一個新的高度。通過使Solana開發人員能夠無縫地將他們的合約和dApp部署到Injective上,Cascade擴展了跨鏈通信的可能性。儘管Eclipse不是由Cosmos SDK構建的,但是已經添加了對IBC的支持,以解鎖這種跨鏈rollup的全部潛力。
Cascade現在在Injective測試網上運行,併計劃在不久的將來遷移到主網。想要深入探索Cascade功能的開發人員可以研究下全面的Cascade開發人員文檔:
https://docs.cascadehq.xyz/cascade-docs/cascade-developer-documentation