主页 > imtoken钱包官方网站 > 区块链接口很多,跨链“我要”

区块链接口很多,跨链“我要”

imtoken钱包官方网站 2023-01-18 21:51:26

6个跨链核心接口就够了

作为跨链交互的基础,接口(API)是跨链平台的重要组成部分。目前各大区块链平台都提供了丰富的接口。这些接口是否必须在跨链平台中重新实现?为了实现一个通用的跨链平台,如何确定界面设计的基调?为了满足复杂多变的跨链需求,需要哪些接口?WeCross的接口实现是什么?本文将带你一探究竟。

区块链接口很多,跨链“我要”

随着区块链技术的发展,区块链被广泛应用于各行各业。为了支持越来越多样化的应用场景和复杂的业务需求非小号币行情接口,区块链接口也在不断发展和完善。目前主流的区块链平台往往会提供几十个接口。丰富的界面极大地方便了开发。但是,对于跨链来说,是否需要使用所有的区块链接口,还有待商榷。

以FISCO BCOS的getPbftView为例。该接口用于获取节点所在指定组中最新的PBFT视图。它是 PBFT 共识算法的独特接口。对于使用其他共识算法的异构区块链平台,这个接口显然不够通用。

因此非小号币行情接口,虽然区块链接口有很多,但如何选择合适的接口来设计跨链平台,需要结合实际情况进行分析。

明确核心诉求,跨链可以“我只需要”

跨链平台是连接异构链的桥梁。为了屏蔽区块链的差异性,降低跨链访问的复杂性,平台与不同区块链的交互需要通用统一的接口。一些常用的接口。

通过对主流区块链平台的服务接口进行分类,大致可以分为以下三类:

对于跨链平台来说,合约接口对于跨链资源的操作是必不可少的;为了监控跨链请求,还需要事件接口;为了完成跨链交易验证,必须获取每条链的区块头。因此,也需要状态类接口。

虽然每个类别都有很多接口,但只有各个区块链共有的接口的交集才是跨链接口的基础。可以看出,跨链的功能需求是比较确定的,涉及的接口数量也可以收敛。

抽象简洁,6个跨链接口就够了

既然已经确定了跨链接口的基调,那么跨链需要哪些接口呢?首先需要明确的是,跨链平台的接口设计分为两个层次,上层业务提供的服务接口,以及各种异构区块链平台的交互接口。

熟悉的 HTTP 协议将所有网络访问操作抽象为两种方法:GET(获取数据)和 POST(提交数据)。在跨链场景中,存在跨链资产流通、资源原子交换、信息获取、数据跨链更新、相关交易等诸多需求,本质上是获取或更新链上数据。

因此,在服务接口方面,我们借鉴互联网的成功经验,对跨链行为进行抽象和浓缩,发现只需要以下三个:

跨链接入除了获取和发送数据,还肩负着跨链可信验证和跨链交易保障的使命,依赖于区块头同步、跨链交易验证、跨链事件等功能监控。通过对交互过程的抽象和浓缩,跨链还需要以下三个交互接口:

借助上层服务和底层交互的6个接口,打通业务层与区块链之间的信息链接,为跨链应用屏蔽不同区块链平台的接口访问协议差异。统一的数据协议和调用格式完成了与多条区块链的交互。

设计落地,WeCross带你一探究竟

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社区与你同在,见招拆招!