检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
创建备份 备份是将区块链实例的数据备份到对象存储服务(OBS)和云备份服务(CBR),其中管理数据备份到对象存储服务(OBS),账本数据备份到云备份服务(CBR)。 当您在购买Hyperledger Fabric增强版实例时,开启数据备份开关,则对区块链实例的管理数据和账本数据进行备份
基于华为云区块链引擎实现电子证据可信上链 方案概述 随着信息化时代的深入发展,文件档案、合同等在我们日常生活中的重要性日益凸显。这些文件不仅仅作为信息记录和参考使用,更是作为法律依据和最后的证据,在各种法律纠纷、商业合作和行政管理中扮演着至关重要的角色。因此防止文件被篡改,保证文件的完整性和真实性
IDChaincode 用于保存用户的公钥和账户,新生成用户的同态密钥对时,需要将公钥注册到IDchaincode上,便于后续根据账户能查询到收款方的同态公钥。链代码IDChaincode.go的下载请参见资源下载。 IDChaincode.go由华为云BCS服务提供,不建议用户修改
购买华为云区块链引擎 前提条件 使用区块链服务前,必须拥有或者创建华为云账户,并且完成实名认证成为华为云的一个租户。具体请参见账号注册和账号实名认证。 操作步骤 进入购买华为云区块链引擎实例页面。 在订购页面填写区域、区块链实例名称和版本类型,其余采用默认参数。 以下截图示例仅供参考
购买Hyperledger Fabric增强版 前提条件 使用区块链服务前,您必须拥有一个华为云账户,并且完成实名认证成为华为云的一个租户。具体请参见账号注册和账号实名认证。 操作步骤 进入购买Hyperledger Fabric增强版实例页面。 在订购页面填写企业项目、区块链实例名称
合约示例 合约开发需要使用go mod,因此请确保GO111MODULE为on、镜像源配置。请确保可正常访问华为云镜像网站,环境设置命令如下 go env -w GO111MODULE=on go env -w GOPROXY=https://repo.huaweicloud.com
合约安装 Solidity语言合约安装步骤如下: 完成solidity合约编译后,复制object对应的value(示例合约字节码可直接安装)。 608060405234801561001057600080fd5b5060df8061001f6000396000f3006080604052600436106049576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806360fe47b114604e5780636d4ce63c146078575b600080fd5b348015605957600080fd5b5060766004803603810190808035906020019092919050505060a0565b005b348015608357600080fd5b50608a60aa565b6040518082815260200191505060405180910390f35b8060008190555050565b600080549050905600a165627a7a723058206ee3e59b37412c5e64cfc7227fe4151c945d2f5a6994eb945f126e8ce70082980029
合约安装 Go语言合约安装步骤如下: 将已完成开发的合约文件,压缩成zip格式(可参考Go合约示例文件[链接],示例文件可直接安装)。 合约安装,可参考用户指南->安装合约。 合约压缩文件格式:需确保格式为*.zip,且合约文件位于压缩包文件中的一级目录。 合约压缩文件中,禁止包含
合约结构 Java语言合约由合约文件及依赖包构成,包含包声明、依赖包导入、智能合约的方法定义。 合约文件中,用户可自定义合约函数,需要实现Contract的init和invoke方法。 合约的结构如下: package com.huawei.poissonchain; import
API概览 通过使用区块链服务所提供的管理接口,您可以通过调用API使用区块链服务的功能,包括BCS实例的创建、删除,构建联盟链等,接口说明如表1所示。 表1 API概览 类型 API 说明 BCS管理 创建服务实例 创建BCS服务实例。 查询创建状态 查询指定服务实例创建状态。
API概览 通过使用华为云区块链引擎服务所提供的管理接口,您可以通过调用API使用华为云区块链引擎服务的功能,包括HBS实例的创建、查询,更新等,接口说明如表1所示。 表1 API概览 类型 API 说明 服务管理 查询服务信息 查询服务规格详情。 询价 产品询价。 查询总览信息
链代码示例 交易链码是用户实现其业务逻辑的链码,这里给出的示例代码Transaction Chaincode完成用户间的转账操作。在转账数据的验证过程中使用同态加密库对密文交易数据进行合法性校验,确保没有非法操作。示例中实现了余额初始化,余额查询,转账交易三个功能函数,具体功能实现参考如下
开发规范 防止出现panic后链代码容器异常 该内容仅适用于Fabric架构版本的区块链实例的Go语言链代码开发。 为避免出现panic异常时链代码容器异常重启,找不到日志,导致问题无法及时定位,可在Invoke函数入口处添加defer语句时,出现panic异常时返回错误给客户端。
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架构版本的区块链实例提供同态加密库供您使用,相关资料及资源请参见同态加密
自定义策略授权项 Hyperledger Fabric增强版支持自定义策略授权项如下所示: 表格中“√”表示支持,“×”表示暂不支持。 表1 Hyperledger Fabric增强版常用操作与系统权限关系 接口 对应的API接口 授权项 IAM项目 (Project) 企业项目
通用排查 排查思路 排查项一:确认是否账号欠费。 排查项二:确认实例状态是否正常。 排查项三:确认链代码是否正常实例化。 排查项四:确认是否修改过demo。 解决方案 排查项一:确认是否账号欠费。 登录区块链服务BCS控制台,单击界面上方的“费用中心”进入费用中心界面。 如“现金余额
SDK接口 合约SDK提供如下API接口,可以在合约文件中进行调用。这些API按照功能可以划分为: 表1 stub接口 接口 说明 FuncName() string 获取智能合约请求中指定的智能合约函数名称。 Parameters() [][]byte 获取请求参数。 ChainID