检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
Go开发环境准备: 安装Go开发环境。安装包下载地址为:https://golang.org/dl/ 。(请选择1.9.2之后的版本) 各个系统对应的包名(以1.14版本为例) 操作系统 包名 Windows go1.14.windows-amd64.msi Linux go1.14.linux-amd64
最新动态 本文介绍了可信跨链服务各特性版本的功能发布和对应的文档动态,新特性将在各个区域(Region)陆续发布,欢迎体验。 2021年9月 序号 功能名称 功能描述 阶段 相关文档 1 可信跨链服务 可信跨链服务上线,支持Hyperledger Fabric类型区块链之间的跨链互操作。
稍等2~3分钟后刷新界面,单击“实例化”列的“查看更多”,查看链代码实例化进度。 在“tcsexample”链代码的“操作”列,单击“实例化”。 选择实例化通道、链代码版本、背书策略、背书组织,具体设置请参考表2。 表2 业务代码配置 参数 说明 实例化通道 默认,此处是channela 链代码版本 1.0 链代码参数
交易接收方回滚(rollbackRecv) 该方法用于在跨链资产交换接收方所属区块链上执行回滚操作,即还原接收方所属区块链上对应资产至跨链资产交换开始前的状态,并解锁该资产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将根据接收方所属区块链上args[1]对应数据锁中的Pr
回滚跨链资产(rollback) 在跨链资产交换的过程中如遇到异常情况,需要读取跨链资产对应数据锁中的PreValue,并根据该值回滚跨链资产交换中涉及资产已发生的变化。可将上述逻辑封装至一个方法中,便于后续在其他智能合约方法(主要是rollbackSend与rollbackRecv)中调用:
交易发起方回滚(rollbackSend) 该方法用于在跨链资产交换发起方所属区块链上执行回滚操作,即还原发起方所属区块链上对应资产至跨链资产交换开始前的状态,并解锁该资产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将根据发起方所属区块链上args[0]对应数据锁中的Pr
在新打开页面的“跨链通道测试”下,选择某一个接口,填写参数值,单击“执行调试”后即可查看交易结果。 当前仅提供了跨链交易和跨链查询两个接口。 交易过程会记录在TCS的可信中继链上,在“跨链浏览器”可以查看对应交易信息。 方式2:通过接入点(RESTful接口)触发,方便用户定制开发。操作方法如下:
在链代码管理页面,单击页面左上角的“安装链代码”。 在安装界面输入“链代码名称”、“链代码版本”,配置参数如表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
选择“按需计费” 区域 使用默认区域 企业项目 选择已创建的企业项目,例如:default 区块链服务名称 设置为Cross-ChainA 版本类型 选择“专业版” 区块链类型 私有链 Fabric内核 V2.2 共识策略 Raft(CFT) 资源初始密码 登录区块链管理界面时的admin账户的密码
解锁跨链资产(unlockAccount) 在跨链资产交换即将完成时,需要解锁跨链资产交换中涉及的资产。可将上述逻辑封装至一个方法中,便于后续在其他智能合约方法(主要是commitSend、commitRecv、rollbackSend与rollbackRecv)中调用: /*
跨链查询交易 功能介绍 发起由源端区块链到目标端区块链的跨链查询交易 URI POST /v1/cross/transaction/query 请求参数 表1 请求Body参数 参数 是否必选 参数类型 描述 to_chain 是 String 目标区块链ID 最小长度:1 最大长度:64
跨链写:访问链任意合约可以执行被访问链指定合约的写操作。 跨链查询账本:访问链可以查询被访问链账本中的区块、交易信息。 操作步骤 登录可信跨链服务管理控制台,进入“跨链通道”页面。 单击跨链通道transfercross-demo名称,进入详情页面。 在跨链权限配置下方,通过查看权限对应图标是否高亮判断是否有权限。若是灰色,代表没有权限。
在新打开页面中的跨链权限配置下方,配置跨链读、跨链写、跨链查询账本权限。 跨链读:访问链任意合约可以执行被访问链指定合约的读操作。 跨链写:访问链任意合约可以执行被访问链指定合约的写操作。此场景需要用户在区块链上安装和实例化用户的跨链业务合约,合约开发请参考开发指南。 跨链查询账本:访问链可以查询被访问链账本中的区块、交易信息。
已注册的区块链管理 支持将区块链在TCS进行注册,注册完成后,查看区块链相关的跨链通道信息。 跨链通道管理 支持查看跨链通道的RESTful接入地址、通信证书等信息,可以对跨链通道权限管理、跨链交易接口在线测试等功能。 跨链浏览器 支持查看跨链交易的操作记录,例如区块数量、交易数量、区块详细信息、交易详细信息、交易趋势等。
在“总览”页面,可以按照快速入门提示完成操作。还支持查看我的资源和交易概览。 我的资源:展示已注册区块链、跨链通道和跨链交易最近3个月或6个月的数量。 交易概览:展示最近3个月或6个月每个跨链通道的交易数目。 在“跨链浏览器”页面,查看区块数量、交易数量等信息,详细请参考表1。 表1
最小长度:1 最大长度:64 to_query_func_name 是 String 目标端查询函数,如:QueryBlock 最小长度:1 最大长度:64 args 是 Array of strings 查询账本所需要的参数列表。为数字字符串形式,如:[“1”]。 响应参数 状态码: 200
单击跨链通道transfercross-demo名称,进入详情页面。 查询B1的值。 在跨链权限配置下方,配置“AAAA”到“BBBB”的跨链读权限。 单击“跨链通道测试”,调用“AAAA”的query方法,将参数“args”改为B1,其它默认即可。查询B1的值,B1值为返回的“payload”字段,B1的初值为300。
跨链智能合约方法定义 下表为涉及跨链资产交换的跨链智能合约必须实现的方法,且必须保证方法名相同,否则可能出现跨链资产交换接口调用超时或调用失败的情况: 表1 方法说明 方法名 说明 preCommitSend 在跨链资产交换发起方所属区块链上执行的预提交操作 preCommitRecv
跨链交易 跨链触发交易 跨链查询交易 跨链查账本交易