检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
合约管理 为您提供界面化合约管理功能,包括合约安装、更新合约,Go语言类型的合约支持合约扫描功能进行安全检查。 表1 华为云区块链引擎支持的合约类型 合约类型 开发指南 注意事项 Go 链接 Go类型合约文件需要压缩成zip格式进行安装,且确保合约文件位于压缩包的一级目录下。 Solidity
下载SDK配置和证书 BCS支持执行链代码、查询链代码等功能。开发应用之前您需要进行证书下载及SDK配置下载,SDK基于该配置文件可以方便地访问区块链网络并完成事务处理,您可以免去手工配置的繁琐流程。 前提条件 下载SDK配置前请确保业务链代码已安装并实例化。 下载SDK配置和证书
概述 用户的应用程序通过链代码与账本数据进行交互。应用程序开发可使用的语言比较广泛,如Golang、Solidity、Java、C++、Python、Node.js等。应用程序和链代码开发语言无强对应关系,只要应用程序能通过SDK来调用链代码即可。 Hyperledger Fab
链代码开发 开发前准备 开发规范 Go语言链代码开发 Java语言链代码开发 父主题: Hyperledger Fabric增强版管理
创建备份 备份是将区块链实例的数据备份到对象存储服务(OBS)和云备份服务(CBR),其中管理数据备份到对象存储服务(OBS),账本数据备份到云备份服务(CBR)。 当您在购买Hyperledger Fabric增强版实例时,开启数据备份开关,则对区块链实例的管理数据和账本数据进行备份。如果购买Hyperledger
附录 fabric-sdk-client/go依赖的第三方包列表: 序号 包名 1 github.com/Knetic/govaluate 2 github.com/VividCortex/gohistogram 3 github.com/cloudflare/cfssl 4 github
概述 SDK说明 华为云区块链引擎目前提供Java、Golang两种语言SDK,区块链服务启动时会启动一系列grpc接口,监听客户端发送的消息,与客户端交互完成各种请求。在开发客户端时,如果从底层grpc接口开始,进行各种消息封装、消息发送、返回值解析等工作,不仅会导致开发量过大,并且造成重复劳动。
示例3:创建联盟成员 场景描述 本章以邀请联盟成员为例。 涉及其他云服务接口 无。 创建联盟成员 接口相关信息 URI格式:POST /v2/{project_id}/members/invitations 请求示例 POST https://{bcs_endpoint}/ v2
调用链代码 前提条件 已安装Java JDK开发环境。JDK需要安装1.8版本64位,如果本地已安装JDK,可以通过命令java -version来查看JDK版本。 登录区块链服务管理控制台,进入“应用案例”,下载“快速入门”中的Java应用示例。Windows操作系统下载并解压
国密加密 概述 SDK的使用 附录 父主题: 附录
概述 华为云区块链服务提供同态加密库供您使用,方便您进行开发。同态加密是一类具有特殊自然属性的加密方法,与一般加密算法相比,同态加密除了基本加密外,还能实现密文间的多种计算功能,对于保护信息的安全具有重要意义。利用同态加密技术可以实现无密钥方对密文的计算,密文计算无须经过密钥方,
概述 合约主要用于操作账本上的数据。作为运行在区块链上的、特定条件下自动执行的代码逻辑,合约是用户利用区块链实现业务逻辑的重要途径,基于区块链特点,合约的运行结果是可信的,其结果是无法被伪造和篡改的。 智能合约由用户自行编写上传并保证安全,请务必注意命令注入等相关安全问题。 为了
调用说明 区块链服务提供了REST(Representational State Transfer)风格API,支持您通过HTTPS请求调用,调用方法请参见如何调用API。 父主题: 使用前必读
邀请成员 创建联盟链后,您可以通过邀请成员加入某个通道组建联盟链系统。 操作步骤 登录区块链服务管理控制台。 在页面左侧选择“成员管理”。单击页面右上角“邀请成员”。 在邀请成员页面,下拉列表中选择创建的BCS实例和通道,在租户名称中填入被邀请方的租户名,单击“确定”。 图1 邀请成员
Go合约开发 SDK配置 SDK接口 合约结构 合约示例 合约安装 父主题: 合约开发
概述 为了能在应用程序中使用区块链服务,可参考本章节完成应用程序的开发。 开发完成后,应用程序可以调用合约将业务数据发送到链上或从链上进行查询,以及查询区块链的块高、查看某个区块的详情和查看某笔交易的详情等。 父主题: 应用程序开发
链代码示例 交易链码是用户实现其业务逻辑的链码,这里给出的示例代码Transaction Chaincode完成用户间的转账操作。在转账数据的验证过程中使用同态加密库对密文交易数据进行合法性校验,确保没有非法操作。示例中实现了余额初始化,余额查询,转账交易三个功能函数,具体功能实现参考如下。
Solidity合约开发 基本方案 使用自研的容器合约环境集成Solidity的智能合约。 外部搭建Solidity Web IDE,生成测试需要的合约安装字节码和合约调用字节码。 将字节码二进制通过Hex编码字符串作为合约调用参数。 Solidity合约默认名称为:NATIVE_CUSTOM_EVM。
JAVA合约开发 SDK配置 SDK接口 合约结构 合约示例 合约安装 父主题: 合约开发
开发规范 防止出现panic后链代码容器异常 该内容仅适用于Fabric架构版本的区块链实例的Go语言链代码开发。 为避免出现panic异常时链代码容器异常重启,找不到日志,导致问题无法及时定位,可在Invoke函数入口处添加defer语句时,出现panic异常时返回错误给客户端。