检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
tcshelper,注:名字必须保持一致 证书存放路径 /home/service/Certs 通道名称 channela 组织&Peer节点 保持默认即可,即:orgA下的所有peer节点 勾选“共识节点证书”和“Peer节点证书”,“Peer节点证书”中指定节点保持默认值(orgA),勾选管理员证书,单击“下载”。
eer节点证书”的组织需要保持一致。 选择成员(区块链类型为联盟链) 选择通道中的任意1个节点组织。这里的组织和“Peer节点证书”的组织保持一致。 共识节点证书 与区块链系统交互时,需要使用共识节点证书。请妥善保管对应证书的私钥,建议您进行加密保存。 Peer节点证书 指定节点
上传准备好的crosschainA.yaml(或:crosschainA.json),获取方法请参考下载配置文件和证书。 证书 上传准备好的certsA.zip,获取方法请参考下载配置文件和证书。 单击右下角“立即注册”,等待注册完成即可在“已注册区块链”页面生成一条记录。 再次单击“注册区块
方式2:通过接入点(RESTful接口)触发,方便用户定制开发。操作方法如下: 在“跨链通道”页面,单击对应通道上的“下载证书”,将SSL通信证书下载到本地,用户加载通信证书,通过https协议访问通道的接入点进行触发。具体的URL、参数信息请参考方式1获取。 如果使用Postman调试工具,Postman版本要求:7
使用跨链服务 跨链交易前准备工作:订购区块链服务,安装和实例化链代码,下载配置文件和证书完成后,即可通过可信跨链服务(以下简称TCS服务)完成跨链交易。 注册区块链 购买跨链通道 跨链交易 父主题: 跨链场景演示-数据交互
单击“立即购买”跳转至付款页面,付款完成之后,请等待数分钟,安装页面提示购买成功。 在跨链通道界面可以看到跨链通道信息。支持在跨链通道卡片下载证书,请妥善保管对应证书的私钥,建议您进行加密保存。
准备工作 进行跨链交易之前的准备。 订购区块链服务 安装及实例化链代码 下载配置文件和证书 父主题: 跨链场景演示-数据交互
已注册的区块链管理 支持将区块链在TCS进行注册,注册完成后,查看区块链相关的跨链通道信息。 跨链通道管理 支持查看跨链通道的RESTful接入地址、通信证书等信息,可以对跨链通道权限管理、跨链交易接口在线测试等功能。 跨链浏览器 支持查看跨链交易的操作记录,例如区块数量、交易数量、区块详细信息、交易详细信息、交易趋势等。
跨链链代码开发(Hyperledger Fabric) 开发前准备 开发跨链智能合约
下载源码包 下载Fabric源码包作为三方库。可选择使用1.x或2.x风格开发跨链智能合约: 版本 链接 1.x https://github.com/hyperledger/fabric/tree/release-1.4 2.x https://github.com/hyper
开发前准备 链代码(Chaincode)又称智能合约,在Hyperledger Fabric中是用Go、Java或Node.js语言编写的程序,主要用于操作账本上的数据。链代码是运行在区块链上的、特定条件下自动执行的代码逻辑,是用户利用区块链实现业务逻辑的重要途径。基于区块链特点
开发环境准备 请根据自身业务选择Go(推荐)或其他语言的开发环境。 Go开发环境准备: 安装Go开发环境。安装包下载地址为:https://golang.org/dl/ 。(请选择1.9.2之后的版本) 各个系统对应的包名(以1.14版本为例) 操作系统 包名 Windows go1
开发跨链智能合约 开发跨链智能合约前,需要先了解跨链操作的原理。在跨链资产交换场景中,在减少某个链上资产后,需要相应的在对应链上增加资产,这种转移使各条链的资产发生了变化。因此,跨链操作需要保证整个跨链交易结束后不同链之间的全局事务保持一致性,即同时记账,或同时不记账。 可信跨链
跨链资产数据锁定义 跨链资产交换基于分布式事务的两阶段提交实现,两阶段提交必须基于每个跨链资产单元携带的数据锁。跨链资产数据锁定义如下: type AccountLock struct { PreValue string CrossTXID string } 表1
跨链智能合约方法示例 介绍跨链智能合约方法示例。 交易发起方预提交(preCommitSend) 交易接收方预提交(preCommitRecv) 交易发起方提交(commitSend) 交易接收方提交(commitRecv) 交易发起方回滚(rollbackSend) 交易接收方回滚(rollbackRecv)
跨链智能合约方法定义 下表为涉及跨链资产交换的跨链智能合约必须实现的方法,且必须保证方法名相同,否则可能出现跨链资产交换接口调用超时或调用失败的情况: 表1 方法说明 方法名 说明 preCommitSend 在跨链资产交换发起方所属区块链上执行的预提交操作 preCommitRecv
解锁跨链资产(unlockAccount) 在跨链资产交换即将完成时,需要解锁跨链资产交换中涉及的资产。可将上述逻辑封装至一个方法中,便于后续在其他智能合约方法(主要是commitSend、commitRecv、rollbackSend与rollbackRecv)中调用: /*
修改跨链资产数值(putStateWithLock) 在跨链资产交换涉及的智能合约方法中,所有对跨链资产的修改都必须与资产上锁同时进行。可将上述逻辑封装至一个方法中,便于后续在其他智能合约方法(主要是preCommitSend与preCommitRecv)中调用: /* *
交易发起方预提交(preCommitSend) 该方法用于在跨链资产交换发起方所属区块链上执行预提交操作,即修改发起方所属区块链上对应资产的值,并对该资产上锁。 本例中,该方法将修改发起方所属区块链上args[0]对应账户的余额为跨链资产交换完成后的数值,同时对该账户上锁,并在数
交易发起方提交(commitSend) 该方法用于在跨链资产交换发起方所属区块链上执行提交操作,即解锁发起方所属区块链上对应资产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将删除发起方所属区块链上args[0]对应的数据锁,代表该笔跨链资产交换操作在发起方已端到端完成。u