检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
跨链场景演示-数据交互 方案概述 准备工作 使用跨链服务
该方法用于在跨链资产交换接收方所属区块链上执行预提交操作,即修改接收方所属区块链上对应资产的值,并对该资产上锁。 本例中,该方法将修改接收方所属区块链上args[1]对应账户的余额为跨链资产交换完成后的数值,同时对该账户上锁,并在数据锁中保存跨链资产交换发生前该账户的余额。pu
该方法用于在跨链资产交换接收方所属区块链上执行回滚操作,即还原接收方所属区块链上对应资产至跨链资产交换开始前的状态,并解锁该资产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将根据接收方所属区块链上args[1]对应数据锁中的PreValue进行资产回滚,并删除该数据锁,使接收方所
交易接收方提交(commitRecv) 该方法用于在跨链资产交换接收方所属区块链上执行提交操作,即解锁接收方所属区块链上对应资产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将删除接收方所属区块链上args[0]对应的数据锁,代表该笔跨链资产交换操作在接收方已端到端完成。unlockAcc
该方法用于在跨链资产交换发起方所属区块链上执行预提交操作,即修改发起方所属区块链上对应资产的值,并对该资产上锁。 本例中,该方法将修改发起方所属区块链上args[0]对应账户的余额为跨链资产交换完成后的数值,同时对该账户上锁,并在数据锁中保存跨链资产交换发生前该账户的余额。pu
该方法用于在跨链资产交换发起方所属区块链上执行回滚操作,即还原发起方所属区块链上对应资产至跨链资产交换开始前的状态,并解锁该资产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将根据发起方所属区块链上args[0]对应数据锁中的PreValue进行资产回滚,并删除该数据锁,使发起方所
表1 跨链资产数据锁字段说明 字段 说明 PreValue 记录跨链交易开始前被锁定资产的数值,回滚时使用。 CrossTXID 记录跨链资产数据锁所属的交易ID,回滚时使用 另外,一般在智能合约中以资产Key拼接数据锁后缀作为资产数据锁的Key,如Key为A的资产数据锁的Key为
交易发起方提交(commitSend) 该方法用于在跨链资产交换发起方所属区块链上执行提交操作,即解锁发起方所属区块链上对应资产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将删除发起方所属区块链上args[0]对应的数据锁,代表该笔跨链资产交换操作在发起方已端到端完成。unlockAcc
解锁跨链资产(unlockAccount) 在跨链资产交换即将完成时,需要解锁跨链资产交换中涉及的资产。可将上述逻辑封装至一个方法中,便于后续在其他智能合约方法(主要是commitSend、commitRecv、rollbackSend与rollbackRecv)中调用: /*
下表为涉及跨链资产交换的跨链智能合约必须实现的方法,且必须保证方法名相同,否则可能出现跨链资产交换接口调用超时或调用失败的情况: 表1 方法说明 方法名 说明 preCommitSend 在跨链资产交换发起方所属区块链上执行的预提交操作 preCommitRecv 在跨链资产交换接收方所属区块链上执行的预提交操作
回滚跨链资产(rollback) 在跨链资产交换的过程中如遇到异常情况,需要读取跨链资产对应数据锁中的PreValue,并根据该值回滚跨链资产交换中涉及资产已发生的变化。可将上述逻辑封装至一个方法中,便于后续在其他智能合约方法(主要是rollbackSend与rollbackRecv)中调用:
可信跨链服务基于分布式事务两阶段提交的思想设计了一套能确保全局事务保持一致性的跨链资产交换流程。若您的跨链业务不涉及跨链资产交换,则无需定制编写跨链智能合约,否则需设置跨链资产数据锁与跨链智能合约方法。 下面用一个完整的跨链资产交换智能合约为样例说明跨链智能合约开发流程,该样例可完成链A上的A账户与
修改跨链资产数值(putStateWithLock) 在跨链资产交换涉及的智能合约方法中,所有对跨链资产的修改都必须与资产上锁同时进行。可将上述逻辑封装至一个方法中,便于后续在其他智能合约方法(主要是preCommitSend与preCommitRecv)中调用: /* *
购买跨链通道 两条链上的交易通过一个通道作为媒介来达成交易,需要购买一条跨链通道来连接两个独立的区块链服务。 操作步骤 登录可信跨链服务管理控制台,进入“跨链通道”页面。 单击“购买跨链通道”,填写基本信息,请参考表1。 表1 购买跨链通道信息 参数 说明 计费模式 包年/包月 区域
跨链交易前准备工作:订购区块链服务,安装和实例化链代码,下载配置文件和证书完成后,即可通过可信跨链服务(以下简称TCS服务)完成跨链交易。 注册区块链 购买跨链通道 跨链交易 父主题: 跨链场景演示-数据交互
准备工作 进行跨链交易之前的准备。 订购区块链服务 安装及实例化链代码 下载配置文件和证书 父主题: 跨链场景演示-数据交互
保证在跨链传递过程中数据的真实性,事务的一致性,不让单链成为发票全生命周期流转的限制,是需要解决的问题。 方案架构 方案优势 解决数据孤岛 通过可信跨链服务,解决了同构、异构链之间的互联互通。 提升客户价值 通过可信跨链服务,能够安全可信地进行区块链之间的数据流通,全生命周期追踪
当前仅“华北-北京四”区域支持可信跨链服务。 购买区块链服务 您可通过华为云区块链服务Hyperledger Fabric增强版实例,具体请参考基于CCE集群部署。 注册区块链 将区块链注册到TCS中,具体请参考注册区块链。 购买跨链通道 TCS将为您提供端到端全流程可信的跨链数据互通体验,具体请参考购买跨链通道。
方案概述 应用现状 随着区块链技术的发展,多链并存是当下市场的显著格局,因此链与链之间的资产互通,打破数据孤岛成为链上用户的迫切需求,而保证跨链过程的可信安全尤为重要。 解决方案 可信跨链服务是基于一系列制定的可信区块链标准跨链协议,保证跨链交易全栈可追溯、可扩展性及可靠性等,助
S服务作为跨链参与方的可信中继链,通过访问跨链辅助合约进行跨链交易。用户通过TCS服务提供的RESTful接口进行跨链交易的触发。 图1 跨链服务调用原理 数据交互方式 互操作:支持跨链读、跨链写、跨链查询账本操作。 数据迁移:不同链之间批量数据的迁移。 与区块链服务BCS的关系