跨链Cosmos同构跨链交易流程

Posted thefist11

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了跨链Cosmos同构跨链交易流程相关的知识,希望对你有一定的参考价值。

1. 哈希锁定

A链上的Alice发送100个ATOM代币给B链上的Bob

step1. Tracking
A链上的IBC模块会不断的同步B链上的区块头信息,B链上的IBC同理。通过这种方式,双方能够实现跟踪对方区块链上的验证者集合的变化,本质上来说,就是A链、B链相互维护了一个对方的轻节点。

step2.Bonding
当使用IBC初始化一笔跨链转账之后,A链上的100个ATOM事实上处于锁定的状态。
在这里插入图片描述

step3. Proof中继
一份证明A链上已经锁定100ATOM的“证据”会被路由到B链上的IBC模块。
在这里插入图片描述

step4. 验证
B链结合A链的轻节点信息,对这份“证据”验证通过之后,B链上会“铸造”100份ATOM Voucher(抵用券),这些Voucher可以进行后续的流通使用。当然这些Voucher也可以通过同样的跨链方式返回到A链,A链上的ATOM代币相应执行解锁的操作。

2. 操作步骤

step1. 用户将跨链交易包Tx发送到A。A执行packageTx,销毁或锁定相关资产。
step2. A将packageTx写入出口。出口可视为放置所有外部通知的跨链交易的邮箱。
step3. 中继器监听到链A中发生的事件,将跨链消息从链A的出口转发到链B的出口。在这种情况下,中继器在链A的出口中查询packageTx,并获得packageTx的Merkle证明。该信息被打包到IBC Package PostTx事务中并发送到链B。中继链还将区块头信息打包到IBCUpdate Chain Tx中,并将其发送到链B。
step4. 链B查询关于packageTx位置的区块头信息。注意中继器支付了IBC Package PostTx和IBCUpdate Chain Tx的交易成本。
step5. 链B接收到IBCPacketPostTx事务后,它首先通过该链中的验证器检查IBCUpdateChainTx中的区块头是否为链A的一部分,然后验证IBCPacketPostTx中跨链事务的Merkle证明是否等于该区块IBCUpdateChainTx中的头哈希。当所有支票都通过时,B链开始执行相关操作(对于B链,这意味着生成相关资产等)。
在这里插入图片描述

以上是关于跨链Cosmos同构跨链交易流程的主要内容,如果未能解决你的问题,请参考以下文章

跨链Cosmos普通交易流程

跨链Cosmos之“跨链交互协议IBC”

跨链Cosmos Cosmos系统框架

跨链“蚂蚁区块链”之跨链系统框架

跨链Cosmos(11) 消息结构

跨链Cosmos(12) Cosmos插件