作為跨鏈交互的基礎,接口(API)是跨鏈平臺中重要一環。目前各大區塊鏈平臺提供了豐富的接口,這些接口是否都要在跨鏈平臺中重新實現?為了實現普適通用的跨鏈平臺,如何確定接口設計基調?為了滿足復雜多變的跨鏈需求,哪些接口是必須的?WeCross的接口實現是怎樣的?本文將帶你一探究竟。
隨著區塊鏈技術的發展,區塊鏈被廣泛地運用到各行各業中,為了支撐越來越多樣的應用場景與復雜的業務需求,區塊鏈接口也在不斷增長、完善。目前,主流區塊鏈平臺動輒提供幾十個接口。豐富的接口極大方便了開發,不過,對跨鏈而言,是不是所有區塊鏈接口都需要用上,有待商榷。
以FISCO BCOS的getPbftView為例,該接口用于獲取節點所在指定群組內的最新PBFT視圖,是面向PBFT共識算法特有的接口,而對于采用其它共識算法的異構區塊鏈平臺,這個接口顯然不夠通用。
跨鏈橋Hop社區發起定期獎勵Hop DAO貢獻者的提案:3月22日消息,DAO 治理公司 StableLab 在跨鏈橋 Hop 社區發起旨在定期獎勵主動為 DAO 做出貢獻的 Hop DAO 社區成員的 RFC(Request For Comments)提案。根據該提案,社區的任何成員都有資格獲得獎勵。每個月,論壇上都會開設一個提名討論帖。為 Hop DAO 做出貢獻的社區成員可以自我提名或由他人提名獲得追溯獎勵。
提案還提出一個為期 6 個月的試點計劃,在初始測試期間會將價值 3 萬美元的 Hop Token 發送給社區多重簽名,每位貢獻者的最高申請額度為 2000 美元。[2023/3/22 13:19:09]
因此,雖然區塊鏈接口眾多,如何挑選合適的接口來設計跨鏈平臺,還需結合實際情況具體分析。
L1區塊鏈Canto與跨鏈流動性網絡 Synapse集成:金色財經報道,跨鏈橋接器之一的Synapse已經為名為Canto的新興區塊鏈啟用了橋接。Canto標志著第 18 個由 Synapse 的跨鏈流動性網絡互連的區塊鏈。采用 Canto 的主要問題之一是連接其他大型區塊鏈的可訪問性。在 Synapse 橋集成之前,將資產移動到 Canto 的唯一方法是通過 Cosmos Gravity Bridge。Canto 建立在 Cosmos 之上,允許開發人員建立自己的鏈。它采用了一種新的擴展方法,通過擁有一個本地內置的去中心化交易和借貸市場,用戶都可以免費使用。[2022/11/23 7:58:29]
跨鏈平臺是聯通異構鏈的橋梁。為了屏蔽區塊鏈的差異性,降低跨鏈訪問復雜度,平臺與不同區塊鏈之間的交互需要通用統一的接口,因此,跨鏈所需的區塊鏈接口一定是不同區塊鏈都有的共性接口。
跨鏈DEX聚合器THORSwap已支持ATOM:7月14日消息,基于THORChain的跨鏈DEX聚合器THORSwap已支持ATOM,用戶可以通過THORSwap將原生比特幣、以太坊等代幣交易為ATOM。[2022/7/14 2:12:56]
通過對主流區塊鏈平臺的服務接口進行分類整理,大致可分為如下三類:
合約類:這類接口用于實現智能合約部署、智能合約調用等功能,它們是支撐區塊鏈業務的主力接口,被頻繁訪問。其中合約調用又可以細分為查詢類(不發交易)的讀接口和更新類(發交易)的寫接口,常說的“上鏈”就是通過這個寫接口完成。
事件類:主要用于構建區塊鏈事件響應機制,實現區塊鏈與業務層的觸發式聯動功能。區塊鏈通過回調或者Log的方式實現事件推送,然后業務層基于監聽接口完成事件捕獲以進行后續邏輯。
跨鏈橋O3 Bridge已支持Fantom和Optimism:1月3日消息,Web3 互操作性協議開發團隊 O3 Labs 宣布,O3 Bridge 現已支持 Fantom 和 Optimism,開放其他公鏈到 Fantom 和 Optimism 的資產轉移。[2022/1/3 8:21:08]
狀態類:主要用于區塊鏈系統管理,例如獲取區塊頭、查詢區塊高度、查看交易等。這類接口多面向運維系統,通過配合區塊鏈節點日志,能夠實現整個區塊鏈系統的實時監控,并對異常情況進行告警。
對跨鏈平臺而言,要操作跨鏈資源,合約類接口必不可少;為了監聽跨鏈請求,事件類接口也得有;為了完成跨鏈交易驗證,就得拿到各個鏈的區塊頭,因此,狀態類接口也需要。
Bluehelix Bridge(BBS)跨鏈橋Web頁面正式上線:官方消息,Bluehelix Bridge(BBS)跨鏈橋Web頁面正式上線,用戶在成功鏈接錢包后,即可進行便捷安全的跨鏈操作。
據了解,Bluehelix?Bridge跨鏈橋目前已支持包Tron Network、DOGE、Heco、BSC等多條公鏈,以及 BTC、USDC、DAI、DOGE 等15種原生跨鏈資產,并且即將接入Cosmos、Solana等公鏈。
Bluehelix Bridge是基于MPC而非智能合約部署封裝或發行任何新資產的去中心化跨鏈橋。其通過三層節點模型為高性能資產跨鏈的金融場景打造的密碼學安全的去中心化私鑰管理,支持任意資產的跨鏈流通,充分保障鏈上資產的安全。[2021/8/23 22:31:47]
雖然每個分類都有不少接口,但只有各個區塊鏈通用的接口交集才是跨鏈的接口基礎。由此可見,跨鏈的功能需求是相對確定的,涉及的接口數量也可以收斂。
既然已經確定跨鏈接口的基調,那么跨鏈到底需要哪幾個接口?首先需要明確一點,跨鏈平臺的接口設計包含兩個層面,面向上層業務提供的服務接口,以及面向各類異構區塊鏈平臺的交互接口。
大家熟悉的HTTP協議將所有網絡訪問操作抽象成了GET(獲取數據)和POST(提交數據)兩種方法。在跨鏈場景中有跨鏈資產流通、資源原子兌換、信息獲取、數據跨鏈更新以及關聯交易等眾多需求,它們本質是獲取鏈上數據或更新鏈上數據。
因此,在服務接口方面,我們借鑒互聯網的成功經驗,對跨鏈行為進行抽象凝練,發現只需要包含以下三個即可:
初始化:跨鏈資源初始化接口,例如部署智能合約;
讀接口:獲取鏈上信息,面向只讀場景;
寫接口:更新鏈上數據,面向跨鏈發交易場景。
跨鏈訪問除了獲取和發送數據外,還肩負了跨鏈可信驗證以及跨鏈事務保證的使命,這依賴于區塊頭同步、跨鏈交易驗證以及跨鏈事件監聽等功能。通過對交互過程進行抽象凝練,跨鏈還需要以下三個交互接口:
獲取塊高:查詢當前塊高以完成區塊頭同步;
獲取區塊:查詢區塊頭等信息完成跨鏈交易驗證;
注冊事件:用于監聽跨鏈事件。
有了上層服務和底層交互6個接口,便能打通業務層到區塊鏈之間的信息鏈路,同時也為跨鏈應用屏蔽了不同區塊鏈平臺在接口訪問協議上的差異性,通過統一的數據協議和調用格式完成與多條區塊鏈的交互。
WeCross的接口實現基于上述思路完成。WeCross包括跨鏈路由(router)和跨鏈適配器(stub)兩個核心組件,其中跨鏈適配器以插件的方式集成到跨鏈路由中。
跨鏈路由向外提供的三個主要服務接口分別是call、sendTransaction和customCommand。其中call和sendTransaction用于合約的調用,customCommand用于其它自定義命令如合約部署,也為平臺保留擴展的可能性,以適應不斷發展的跨鏈需求。
跨鏈適配器定義了6個核心區塊鏈操作接口,包括call、sendTransaction、customCommand、getBlockNumber、getBlock和registerEvent。
其中前三個與服務接口對應,getBlockNumber和getBlock分別用于區塊頭同步和跨鏈交易驗證,registerEvent用于監聽跨鏈事件。
在開發不同區塊鏈的跨鏈適配器時,只需要實現上述6個接口便可基于插件化的方式完成異構區塊鏈的接入。
跨鏈路由管理不同區塊鏈的跨鏈適配器,當收到來自業務層的調用請求,通過請求包中的調用目標字段確定該請求的最終去向,然后挑選對應的跨鏈適配器完成請求的轉發,最終完成一次跨鏈調用。
基于上述接口,WeCross目前已實現對基于HTLC的跨鏈資產原子兌換、基于2PC的跨鏈事務等功能的支持,并面向數字存證場景完成多種跨鏈功能驗證。
跨鏈技術尚處探索階段,從業務實用性考慮,接口協議設計應去繁從簡,“小而美”勝過“大而全”。
隨著區塊鏈平臺發展以及跨鏈需求的不斷演化,跨鏈接口也會與時俱進,不斷改進和完善,迭代式前行。目前,跨鏈6個接口就能應對!未來,WeCross社區和你一起,見招拆招!
Tags:區塊鏈NTOTOMANT區塊鏈的四大核心技術ENTONEDon’t Know Your CustomerPantera Fund
本期重點: *AAX 任務中心全新上線,簽到得AAB可全額抵扣幣幣交易和合約交易手續費。*AAX 理財寶上線,首創分鐘計息,隨存隨取零費用.
1900/1/1 0:00:00Filecoin普通投資者在投資礦機的過程中,通常會比較各個礦機的性價比。而Filecoin挖礦需要參考的參數較多,這時候,人們就會使用一個指標去衡量礦機的性價比.
1900/1/1 0:00:00加密貨幣基金管理公司灰度投資的一份新報告認為,目前的比特幣市場結構“與2016年初開始歷史性牛市之前的結構相似.
1900/1/1 0:00:00金色財經聯合DappBirds獨家發布「DeFi Data」最新數據周榜據DappBirds DeFi專題數據顯示,上周DeFi板塊多維度數據均大幅上漲.
1900/1/1 0:00:00OSL獲第1類(證券交易)及第7類(提供自動化交易服務)牌照申請原則上批準通知書。該牌照將允許證劵型代幣及自動化虛擬資產交易.
1900/1/1 0:00:00BTC目前已完成了第三次產量減半,上圖為BTC2010-2020長期月線走勢,通過研究可以發現,每次減半前BTC價格均位于上一輪牛市頂點回落的斐波那契0.5壓制線下方運行.
1900/1/1 0:00:00