检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
* Invoke is the entrance of the chaincode invoking */ func (t *TCSExampleChaincode) Invoke(stub shim.ChaincodeStubInterface) pb.Response {
blockchain B * @Param args[1]: The name of the account on blockchain B that will receive the amount of units from the account on blockchainA *
blockchain B * @Param args[1]: The name of the account on blockchain B that will receive the amount of units from the account on blockchainA *
blockchain B * @Param args[1]: The name of the account on blockchain B that will receive the amount of units from the account on blockchainA *
blockchain A that will transfer the amount of units to the account on blockchain B * @Param args[1]: The name of the account on blockchain B that
开发跨链智能合约 开发跨链智能合约前,需要先了解跨链操作的原理。在跨链资产交换场景中,在减少某个链上资产后,需要相应的在对应链上增加资产,这种转移使各条链的资产发生了变化。因此,跨链操作需要保证整个跨链交易结束后不同链之间的全局事务保持一致性,即同时记账,或同时不记账。 可信跨链
blockchain B * @Param args[1]: The name of the account on blockchain B that will receive the amount of units from the account on blockchainA *
units of one account to another account */ func rollback(stub shim.ChaincodeStubInterface, txID string, account string) error { // get server
blockchain A that will transfer the amount of units to the account on blockchain B * @Param args[1]: The name of the account on blockchain B that
/* * unlockAccount will delete the account's lock from the blockchain * @Param account: The name of the account whose lock will be unlocked
one account to another account */ func putStateWithLock(stub shim.ChaincodeStubInterface, txID string, account string, balance []byte) error
跨链智能合约方法示例 介绍跨链智能合约方法示例。 交易发起方预提交(preCommitSend) 交易接收方预提交(preCommitRecv) 交易发起方提交(commitSend) 交易接收方提交(commitRecv) 交易发起方回滚(rollbackSend) 交易接收方回滚(rollbackRecv)
跨链资产数据锁定义 跨链资产交换基于分布式事务的两阶段提交实现,两阶段提交必须基于每个跨链资产单元携带的数据锁。跨链资产数据锁定义如下: type AccountLock struct { PreValue string CrossTXID string } 表1
下载源码包 下载Fabric源码包作为三方库。可选择使用1.x或2.x风格开发跨链智能合约: 版本 链接 1.x https://github.com/hyperledger/fabric/tree/release-1.4 2.x https://github.com/hyper
订购区块链服务 准备两个区块链服务Cross-ChainA和Cross-ChainB,在区块链服务Cross-ChainA创建一个组织orgA,在区块链服务Cross-ChainB创建一个组织orgB,作为跨链的两个组织节点。 操作步骤 登录区块链服务管理控制台。 进入服务管理页面,单击Hyperledger
跨链查账本交易 02 购买 可信跨链服务(Trusted Cross-Chain Service,简称TCS)提供区块链注册、购买跨链通道等功能。 计费说明 04 使用 可信跨链服务(Trusted Cross-Chain Service,简称TCS)提供区块链注册、购买跨链通道等功能。
以区块链Cross-ChainA和Cross-ChainB的两个账号为例子进行相互转账的跨链交易演示。 Cross-ChainA链上的A1,初值为100,注册区块链名称为AAAA;Cross-ChainB链上的B1,初值为300,注册的区块链名称BBBB。 Cross-ChainA链作为交易发起方
开发前准备 链代码(Chaincode)又称智能合约,在Hyperledger Fabric中是用Go、Java或Node.js语言编写的程序,主要用于操作账本上的数据。链代码是运行在区块链上的、特定条件下自动执行的代码逻辑,是用户利用区块链实现业务逻辑的重要途径。基于区块链特点
区块链Cross-ChainA和区块链Cross-ChainB注册到TCS服务。 操作步骤 登录可信跨链服务管理控制台,进入“已注册区块链”页面。 单击“注册区块链”,填写区块链Cross-ChainA的注册信息,参考表1。 表1 注册Cross-ChainA信息 参数 说明 区块链名称
安装链代码 分别在区块链Cross-ChainA和区块链Cross-ChainB安装跨链辅助链代码“tcshelper.zip”和业务链代码“tcsexample.zip”。 操作步骤 登录可信跨链服务管理控制台,在“总览”页面的跨链链代码下载用于演示的链代码,分别为跨链辅助链代码tcshelper