BitXHub跨链交易的流程

一、BitXHub的组成

趣链科技跨链技术平台 BitXHub 由三部分组成:中继链、跨链网关、应用链。

BitXHub跨链交易的流程_第1张图片

中继链(Relay-chain):承担跨链交易的验证

跨链网关(Pier):承担跨链交易的路由和转发

应用链(App-chain):承担跨链的具体业务

二、跨链交易的流程

BitXHub跨链交易的流程_第2张图片

 假设:应用链A的跨链业务合约上的用户Alice,要向应用链B的跨链业务合约上的用户Bob转账10个积分。

该跨链交易的流程如下:

1. 应用链A的跨链业务合约,通过跨合约调用跨链管理合约(Broker),来抛出跨链请求。

2. 跨链请求被应用链的插件(Plugin)捕捉到,然后由插件将跨链请求提交给网关。

3. 网管把跨链请求(跨链交易)封装成一个一个跨链传输协议(IBTP),并将其提交给中继链。

4. 中继链验证完应用链A的跨链请求(跨链交易)的有效性之后,将其提交给目的网关。

5. 目的网关最终将跨链请求提交给应用链B的跨链管理合约(Broker)。

6. 跨链管理合约(Broker)再将跨链请求跨合约调用给跨链业务合约。

7. 跨链业务合约上的用户Bob就收到来自应用链A上的Alice转给他的10个积分。

三、概念补充 

1. 中继链(Relay-chain)

中继链是具有验证跨链消息和转发跨链消息的能力的去中心化可信中介。

2. 跨链网关(Pier)

在同构或异构区块链间进行交易收集、转换、传输的服务程序。

3. 应用链(App-chain)

负责承载不同应用场景下的具体应用的业务合约逻辑。

4. 跨链传输协议(IBTP)

不同区块链由于其底层平台的加密算法、区块结构等不同,不同区块链之间的消息不能直接通信。

为了能够支持异构区块链之间的跨链交易路由和可信验证,BitXHub 设计了通用的跨链传输协议 IBTP(InterBlockchain Transfer Protocol),允许异构资产、数据及服务进行跨链调用。

基于 IBTP 协议跨链网关可将不同应用链抛出的事件数据格式转换为统一结构。

该协议内容指定了相关跨链事件的来源链、目的链、跨链交易方法以及验证策略、签名等诸多信息。

IBTP支持应用链与中继链、应用链与应用链间的交互操作。

应用链的跨链请求通过跨链网关转换成 IBTP 结构提交至中继链,中继链通过 IBTP 内容进行跨链交易的合法性验证及可靠路由。

IBTP 消息采用 P2P 的方式进行传输,消息的主体内容均采用对方的公钥进行加密确保消息内容传播的不被第三方窃取。同时调用内容经跨链网关间协商的对称密钥加密后再发送至中继链,保障传输调用的安全性与可靠性。

5. 插件机制(plugin):

BitXHub 提供跨链网关插件机制,其一大特点是将跨链网关中与应用链的交互模块和核心模块进行解耦,从而方便更多的应用链加入跨链系统。如下图所示,在跨链网关运行时,通过动态加载插件的方式完成应用链的接入。

BitXHub跨链交易的流程_第3张图片

6.  跨链合约:

按照跨链合约的设计,我们需要在有跨链需求的应用链上部署两种合约

一个合约负责对接跨链网关Pier,为跨链管理合约(Broker);一个合约负责具体的业务场景,为业务合约,业务合约分为跨链业务合约和其他业务合约。跨链业务合约需要进行跨链时,要统一将跨链请求提交到Broker合约上,Broker统一和Pier进行交互。一个Broker合约可以负责对接多个跨链业务合约。

7. 应用链管理员:

承担应用链的部署以及合约的部署。

8. 中继链管理员:

承担中继链的管理以及提案的审核。

你可能感兴趣的:(区块链)