检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
附录 fabric-sdk-client/go依赖的第三方包列表: 序号 包名 1 github.com/Knetic/govaluate 2 github.com/VividCortex/gohistogram 3 github.com/cloudflare/cfssl 4 github.com
概述 SDK说明 华为云区块链引擎目前提供Java、Golang两种语言SDK,区块链服务启动时会启动一系列grpc接口,监听客户端发送的消息,与客户端交互完成各种请求。在开发客户端时,如果从底层grpc接口开始,进行各种消息封装、消息发送、返回值解析等工作,不仅会导致开发量过大,
示例3:创建联盟成员 场景描述 本章以邀请联盟成员为例。 涉及其他云服务接口 无。 创建联盟成员 接口相关信息 URI格式:POST /v2/{project_id}/members/invitations 请求示例 POST https://{bcs_endpoint}/ v2/
创建备份 备份是将区块链实例的数据备份到对象存储服务(OBS)和云备份服务(CBR),其中管理数据备份到对象存储服务(OBS),账本数据备份到云备份服务(CBR)。 当您在购买Hyperledger Fabric增强版实例时,开启数据备份开关,则对区块链实例的管理数据和账本数据进行备份
基于华为云区块链引擎实现电子证据可信上链 方案概述 随着信息化时代的深入发展,文件档案、合同等在我们日常生活中的重要性日益凸显。这些文件不仅仅作为信息记录和参考使用,更是作为法律依据和最后的证据,在各种法律纠纷、商业合作和行政管理中扮演着至关重要的角色。因此防止文件被篡改,保证文件的完整性和真实性
安装和实例化链代码 实例创建成功后,需要进行链代码安装,如何开发链代码请参考链代码开发。链代码安装后需要将链代码实例化到通道/链上,以便Peer节点通过链代码容器和分布式账本进行交互。 前提条件 本示例使用存证链代码,链代码文件下载方法:登录区块链服务管理控制台,进入“应用案例”,
Gateway Java Demo 本节提供一个基于Fabric Gateway Java的Demo,Fabric Gateway Java对Java SDK进行了封装,简化了代码量,帮助用户开发自己的Java客户端应用程序。 本Demo仅适用于Hyperledger Fabric
IDChaincode 用于保存用户的公钥和账户,新生成用户的同态密钥对时,需要将公钥注册到IDchaincode上,便于后续根据账户能查询到收款方的同态公钥。链代码IDChaincode.go的下载请参见资源下载。 IDChaincode.go由华为云BCS服务提供,不建议用户修改
添加组织或节点后,区块链实例状态异常时,CCE页面有状态负载peer-xxx状态异常 问题现象 添加组织或添加节点后,长时间(超过10min)未见有新节点状态转为正常,最终导致BCS实例变更超时,实例状态异常。操作记录报错如下:添加组织报错“BCS(XXX) wait for updating
链代码示例 交易链码是用户实现其业务逻辑的链码,这里给出的示例代码Transaction Chaincode完成用户间的转账操作。在转账数据的验证过程中使用同态加密库对密文交易数据进行合法性校验,确保没有非法操作。示例中实现了余额初始化,余额查询,转账交易三个功能函数,具体功能实现参考如下
开发规范 防止出现panic后链代码容器异常 该内容仅适用于Fabric架构版本的区块链实例的Go语言链代码开发。 为避免出现panic异常时链代码容器异常重启,找不到日志,导致问题无法及时定位,可在Invoke函数入口处添加defer语句时,出现panic异常时返回错误给客户端。
AHE Lib库接口 提供给用户静态库文件,用于用户开发客户端应用时集成使用同态加密功能。 库的引用路径为:import "ahe/PSW/api/ahelib" GenerateKey 接口原型 func GenerateKey(pwd string) (privKeyStr string
Chaincode库接口 该静态库集成在BCS实例中。用户在开发链代码时,可以使用BCS提供的API接口文件对开发中的链码进行本地编译。 先将API接口文件下载(下载链接参见资源下载)并解压到本地的GOPATH目录中,按照4.2.6章节的链代码示例代码来引用同态库。当链码开发完成后
开发前准备 用户的应用程序通过链代码与账本数据进行交互。应用程序开发可使用的语言比较广泛,如Golang、Solidity、Java、C++、Python、Node.js等。应用程序和链代码开发语言无强对应关系,只要应用程序能通过SDK来调用链代码即可。 您需要购买区块链实例。 Fabric
数据上链的方式 数据以区块的形式上链,出块策略在购买BCS实例时可以进行选择,在有新交易产生的前提下,如果时间达到1s或者交易数量达到500或者区块容量达到2M,哪个最先达到就立即出块。如何设置区块生成配置信息请参考基于CCE集群。 父主题: 数据上链
自定义策略授权项 Hyperledger Fabric增强版支持自定义策略授权项如下所示: 表格中“√”表示支持,“×”表示暂不支持。 表1 Hyperledger Fabric增强版常用操作与系统权限关系 接口 对应的API接口 授权项 IAM项目 (Project) 企业项目
SDK的使用 安装SDK 如何获取GO、JAVA压缩包、Jar文件请参考概述。 GO:将下载的压缩包解压到用户的$GOPATH目录下。 Java:将下载的压缩包中的Jar文件添加到项目的依赖中,可按以下方式添加: 将下载的SDK Jar包注册至Maven本地仓库,可参考以下命令:
合约示例 Java语言合约开发和调测可参考合约示例,使用步骤如下: 合约开发Demo。 编写Java合约。 Java合约示例。 父主题: JAVA合约开发
合约安装 Java语言合约安装步骤如下: 部署合约时,执行mvn package,可在target目录下获取可安装的合约Jar包,文件名为contract.jar。 合约安装,可参考用户指南 >区块链管理 > 合约管理。 合约压缩文件格式:需确保格式为*.zip,且合约文件位于压缩包文件中的一级目录
应用程序开发 您需要自行开发应用程序业务逻辑代码。针对Fabric架构版本的区块链实例,应用开发过程中可使用BCS提供的国密加密SDK,也可使用Fabric官方社区提供的和您自身的实例版本匹配的SDK。 另外,Fabric架构版本的区块链实例提供同态加密库供您使用,相关资料及资源请参见同态加密