检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
最新动态 本文介绍了可信跨链服务各特性版本的功能发布和对应的文档动态,新特性将在各个区域(Region)陆续发布,欢迎体验。 2021年9月 序号 功能名称 功能描述 阶段 相关文档 1 可信跨链服务 可信跨链服务上线,支持Hyperledger Fabric类型区块链之间的跨链互操作。
Go开发环境准备: 安装Go开发环境。安装包下载地址为:https://golang.org/dl/ 。(请选择1.9.2之后的版本) 各个系统对应的包名(以1.14版本为例) 操作系统 包名 Windows go1.14.windows-amd64.msi Linux go1.14.linux-amd64
交易接收方回滚(rollbackRecv) 该方法用于在跨链资产交换接收方所属区块链上执行回滚操作,即还原接收方所属区块链上对应资产至跨链资产交换开始前的状态,并解锁该资产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将根据接收方所属区块链上args[1]对应数据锁中的Pr
回滚跨链资产(rollback) 在跨链资产交换的过程中如遇到异常情况,需要读取跨链资产对应数据锁中的PreValue,并根据该值回滚跨链资产交换中涉及资产已发生的变化。可将上述逻辑封装至一个方法中,便于后续在其他智能合约方法(主要是rollbackSend与rollbackRecv)中调用:
交易发起方回滚(rollbackSend) 该方法用于在跨链资产交换发起方所属区块链上执行回滚操作,即还原发起方所属区块链上对应资产至跨链资产交换开始前的状态,并解锁该资产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将根据发起方所属区块链上args[0]对应数据锁中的Pr
在“tcshelper”链代码列表的“操作”列,单击“实例化”。 选择实例化通道、链代码版本、背书策略、背书组织列表,具体设置请参考表1。 表1 辅助链代码配置 参数 说明 实例化通道 默认,此处是channela 链代码版本 1.0 链代码参数 不填 背书策略 选择“下列任意组织背书” 背书组织列表
在链代码管理页面,单击页面左上角的“安装链代码”。 在安装界面输入“链代码名称”、“链代码版本”,配置参数如表1所示。 表1 安装链代码参数表 参数 说明 链代码名称 tcshelper 链代码版本 1.0 选择全部Peer节点 勾选 链代码语言 Golang 链代码文件 添加下载好的辅助链代码“tcshelper
下载源码包 下载Fabric源码包作为三方库。可选择使用1.x或2.x风格开发跨链智能合约: 版本 链接 1.x https://github.com/hyperledger/fabric/tree/release-1.4 2.x https://github.com/hyper
解锁跨链资产(unlockAccount) 在跨链资产交换即将完成时,需要解锁跨链资产交换中涉及的资产。可将上述逻辑封装至一个方法中,便于后续在其他智能合约方法(主要是commitSend、commitRecv、rollbackSend与rollbackRecv)中调用: /*
证书,通过https协议访问通道的接入点进行触发。具体的URL、参数信息请参考方式1获取。 如果使用Postman调试工具,Postman版本要求:7.27.0及以上的。 “发起交易”和“查询交易”两个接口的返回信息会展示在“响应结果”中,用户可根据具体的错误信息进行排查,错误码信息参考如下表1和表2:
选择“按需计费” 区域 使用默认区域 企业项目 选择已创建的企业项目,例如:default 区块链服务名称 设置为Cross-ChainA 版本类型 选择“专业版” 区块链类型 私有链 Fabric内核 V2.2 共识策略 Raft(CFT) 资源初始密码 登录区块链管理界面时的admin账户的密码
跨链智能合约方法定义 下表为涉及跨链资产交换的跨链智能合约必须实现的方法,且必须保证方法名相同,否则可能出现跨链资产交换接口调用超时或调用失败的情况: 表1 方法说明 方法名 说明 preCommitSend 在跨链资产交换发起方所属区块链上执行的预提交操作 preCommitRecv
跨链智能合约方法示例 介绍跨链智能合约方法示例。 交易发起方预提交(preCommitSend) 交易接收方预提交(preCommitRecv) 交易发起方提交(commitSend) 交易接收方提交(commitRecv) 交易发起方回滚(rollbackSend) 交易接收方回滚(rollbackRecv)