检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
购买跨链通道 两条链上的交易通过一个通道作为媒介来达成交易,需要购买一条跨链通道来连接两个独立的区块链服务。 操作步骤 登录可信跨链服务管理控制台,进入“跨链通道”页面。 单击“购买跨链通道”,填写基本信息,请参考表1。 表1 购买跨链通道信息 参数 说明 计费模式 包年/包月 区域
回滚跨链资产(rollback) 在跨链资产交换的过程中如遇到异常情况,需要读取跨链资产对应数据锁中的PreValue,并根据该值回滚跨链资产交换中涉及资产已发生的变化。可将上述逻辑封装至一个方法中,便于后续在其他智能合约方法(主要是rollbackSend与rollbackRecv)中调用:
修改跨链资产数值(putStateWithLock) 在跨链资产交换涉及的智能合约方法中,所有对跨链资产的修改都必须与资产上锁同时进行。可将上述逻辑封装至一个方法中,便于后续在其他智能合约方法(主要是preCommitSend与preCommitRecv)中调用: /* *
计费说明 跨链服务的计费模式为包年包月。收费标准请参考价格详情。
者提供的区块链技术服务平台,它可以帮助您快速部署、管理、维护区块链网络,降低您使用区块链的门槛,让您专注于自身业务的开发与创新,实现业务快速上链。 可信跨链服务TCS与区块链服务BCS属于并列关系。用户可以在区块链服务BCS购买区块链,然后在TCS服务实现两个不同区块链的的互联互通,例如跨链交易。
至跨链资产交换开始前的状态,并解锁该资产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将根据发起方所属区块链上args[0]对应数据锁中的PreValue进行资产回滚,并删除该数据锁,使发起方所属区块链上args[0]对应的资产回滚至跨链资产交换开始前的状态。 该方法为必选
至跨链资产交换开始前的状态,并解锁该资产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将根据接收方所属区块链上args[1]对应数据锁中的PreValue进行资产回滚,并删除该数据锁,使接收方所属区块链上args[1]对应的资产回滚至跨链资产交换开始前的状态。 该方法为必选
用流程,希望对您的使用有所引导及帮助。 当前仅“华北-北京四”区域支持可信跨链服务。 注册区块链 将区块链注册到TCS中,目前只支持Hyperledger Fabric类型的区块链。 购买跨链通道 基于已经注册的区块链,选择两个区块链进行跨链操作。 配置跨链通道 对跨链通道进行跨链读、跨链写、跨链查询账本等配置操作。
产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将删除发起方所属区块链上args[0]对应的数据锁,代表该笔跨链资产交换操作在发起方已端到端完成。unlockAccount方法的实现请参考解锁跨链资产(unlockAccount)。 该方法为必选方法,需在智能合约中以相同命
此处“A1”是Cross-ChainA链上组织orgA的一个账户,100为该账户的余额。 单击“实例化”,完成链代码在当前通道上的实例化,稍等2~3分钟后刷新界面,单击“实例化”列的“查看更多”,查看链代码实例化进度。 选中名为Cross-ChainB的区块链服务卡片,参考1-9完成链代码实例化。
产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将删除接收方所属区块链上args[0]对应的数据锁,代表该笔跨链资产交换操作在接收方已端到端完成。unlockAccount方法的实现请参考解锁跨链资产(unlockAccount)。 该方法为必选方法,需在智能合约中以相同命
解锁跨链资产(unlockAccount) 在跨链资产交换即将完成时,需要解锁跨链资产交换中涉及的资产。可将上述逻辑封装至一个方法中,便于后续在其他智能合约方法(主要是commitSend、commitRecv、rollbackSend与rollbackRecv)中调用: /*
跨链触发交易 功能介绍 发起由源端区块链到目标端区块链的跨链交易 URI POST /v1/cross/transaction/invoke 请求参数 表1 请求Body参数 参数 是否必选 参数类型 描述 from_chaincode_id 是 String 源端链码名称 最小长度:1
跨链查账本交易 功能介绍 跨链查询目标区块链的账本信息 URI POST /v1/cross/ledger/query 请求参数 表1 请求Body参数 参数 是否必选 参数类型 描述 from_chaincode_id 是 String 源端链码名称 最小长度:1 最大长度:64
最小长度:1 最大长度:64 to_query_func_name 是 String 链码中的查询函数 最小长度:1 最大长度:64 args 是 Array of strings 链码查询函数所需的参数列表 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 code
企业项目 选择已创建的企业项目,例如:default 区块链服务名称 设置为Cross-ChainA 版本类型 选择“专业版” 区块链类型 私有链 Fabric内核 V2.2 共识策略 Raft(CFT) 资源初始密码 登录区块链管理界面时的admin账户的密码 资源初始密码确认
链代码语言 Golang 链代码文件 添加下载好的辅助链代码“tcshelper.zip”。 链代码描述 对该链代码的一个描述,可不填。 参考5-6,安装业务链代码“tcsexample.zip”。 选中名为Cross-ChainB的区块链服务卡片,参考1-8在Cross-ChainB上安装“tcshelper
全局事务保持一致性的跨链资产交换流程。若您的跨链业务不涉及跨链资产交换,则无需定制编写跨链智能合约,否则需设置跨链资产数据锁与跨链智能合约方法。 下面用一个完整的跨链资产交换智能合约为样例说明跨链智能合约开发流程,该样例可完成链A上的A账户与链B上的B账户之间的资产转账。完整智能
解压Cross-ChainA的下载包“Cross-ChainA-config.zip”,将文件夹中的“Cross-ChainA-channela-sdk-config.yaml”文件修改为“crosschainA.yaml”存在本地备用,将后缀为.peer和.orderer的文件夹压缩为certsA
单击“注册区块链”,填写区块链Cross-ChainA的注册信息,参考表1。 表1 注册Cross-ChainA信息 参数 说明 区块链名称 设置为“AAAA” 描述 记录信息,可不填 区块链类型 Hyperledger Fabric 合约名称 tcsexample 配置文件 上传准备好的crosschainA