检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
跨链链代码开发(Hyperledger Fabric) 开发前准备 开发跨链智能合约
安装及实例化链代码 安装链代码 实例化链代码 父主题: 准备工作
PreValue 记录跨链交易开始前被锁定资产的数值,回滚时使用。 CrossTXID 记录跨链资产数据锁所属的交易ID,回滚时使用 另外,一般在智能合约中以资产Key拼接数据锁后缀作为资产数据锁的Key,如Key为A的资产数据锁的Key为A_Lock。因此,可在智能合约中定义该
组织&Peer节点(区块链类型为私有链) 选择通道中的任意1个节点组织下的所有peer节点。这里的组织和“Peer节点证书”的组织需要保持一致。 选择成员(区块链类型为联盟链) 选择通道中的任意1个节点组织。这里的组织和“Peer节点证书”的组织保持一致。 共识节点证书 与区块链系统交互时,需要使用共识节点证书。请
下载源码包 下载Fabric源码包作为三方库。可选择使用1.x或2.x风格开发跨链智能合约: 版本 链接 1.x https://github.com/hyperledger/fabric/tree/release-1.4 2.x https://github.com/hyper
为跨链的两个组织节点。 操作步骤 登录区块链服务管理控制台。 进入服务管理页面,单击Hyperledger Fabric增强版的“购买”按钮。 根据界面提示,配置区块链基本信息,参数如表1所示。 表1 购买区块链服务参数表 参数 说明 计费模式 选择“按需计费” 区域 使用默认区域
Service)是基于一系列制定的可信区块链标准跨链协议,实现基于不同区块链内核所构建的同构及异构链之间的互联互通,打破区块链数据孤岛,促进区块链产业生态可信融合。 产品介绍 图说TCS 立即使用 成长地图 由浅入深,带您玩转TCS 01 了解 可信跨链服务实现不同区块链内核的可信互联互通。 产品概述
区块链基础设施所在的区域,建议选择与业务应用系统相同的地域。 跨链通道名称 支持英文字符、数字及中划线,不能以中划线开头,长度为4-24个字符。 业务类型 互操作 选择区块链 从已经注册的区块链中任选两个作为跨链通道的参与方。 购买时长 支持自定义购买服务的使用时间,最短1个月。
开发环境准备 请根据自身业务选择Go(推荐)或其他语言的开发环境。 Go开发环境准备: 安装Go开发环境。安装包下载地址为:https://golang.org/dl/ 。(请选择1.9.2之后的版本) 各个系统对应的包名(以1.14版本为例) 操作系统 包名 Windows go1
者提供的区块链技术服务平台,它可以帮助您快速部署、管理、维护区块链网络,降低您使用区块链的门槛,让您专注于自身业务的开发与创新,实现业务快速上链。 可信跨链服务TCS与区块链服务BCS属于并列关系。用户可以在区块链服务BCS购买区块链,然后在TCS服务实现两个不同区块链的的互联互通,例如跨链交易。
操作提供授权能力,在保护数据安全的同时,还保证数据的使用过程可以被追溯。 数据安全隐私保护 基于可信执行环境(Trusted Execution Environment,简称TEE)的证明生成流程,保证跨链交互数据安全可靠,跨链中继侧不记录对应链的数据信息,支持跨链组件点对点数据
在“跨链通道”页面,单击对应通道上的“下载证书”,将SSL通信证书下载到本地,用户加载通信证书,通过https协议访问通道的接入点进行触发。具体的URL、参数信息请参考方式1获取。 如果使用Postman调试工具,Postman版本要求:7.27.0及以上的。 “发起交易”和“查询交易”两个接口的返回信息
在面向Hyperledger Fabric使用可信数据链接服务时,用户需要结合Hyperledger Fabric链代码开发规范、可信跨链服务的要求与自身业务需求开发自己的跨链链代码。 支持区域: 华北-北京四 开发跨链智能合约 跨链交易演示 可信跨链服务是基于一系列制定的可信区块链标准跨链协议,
跨链智能合约方法定义 下表为涉及跨链资产交换的跨链智能合约必须实现的方法,且必须保证方法名相同,否则可能出现跨链资产交换接口调用超时或调用失败的情况: 表1 方法说明 方法名 说明 preCommitSend 在跨链资产交换发起方所属区块链上执行的预提交操作 preCommitRecv
至跨链资产交换开始前的状态,并解锁该资产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将根据发起方所属区块链上args[0]对应数据锁中的PreValue进行资产回滚,并删除该数据锁,使发起方所属区块链上args[0]对应的资产回滚至跨链资产交换开始前的状态。 该方法为必选
至跨链资产交换开始前的状态,并解锁该资产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将根据接收方所属区块链上args[1]对应数据锁中的PreValue进行资产回滚,并删除该数据锁,使接收方所属区块链上args[1]对应的资产回滚至跨链资产交换开始前的状态。 该方法为必选
修改跨链资产数值(putStateWithLock) 在跨链资产交换涉及的智能合约方法中,所有对跨链资产的修改都必须与资产上锁同时进行。可将上述逻辑封装至一个方法中,便于后续在其他智能合约方法(主要是preCommitSend与preCommitRecv)中调用: /* *
改接收方所属区块链上对应资产的值,并对该资产上锁。 本例中,该方法将修改接收方所属区块链上args[1]对应账户的余额为跨链资产交换完成后的数值,同时对该账户上锁,并在数据锁中保存跨链资产交换发生前该账户的余额。putStateWithLock方法的实现请参考修改跨链资产数值(putStateWithLock)。
改发起方所属区块链上对应资产的值,并对该资产上锁。 本例中,该方法将修改发起方所属区块链上args[0]对应账户的余额为跨链资产交换完成后的数值,同时对该账户上锁,并在数据锁中保存跨链资产交换发生前该账户的余额。putStateWithLock方法的实现请参考修改跨链资产数值(putStateWithLock)。
产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将删除接收方所属区块链上args[0]对应的数据锁,代表该笔跨链资产交换操作在接收方已端到端完成。unlockAccount方法的实现请参考解锁跨链资产(unlockAccount)。 该方法为必选方法,需在智能合约中以相同命