检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
华为云区块链服务使用的底层框架是什么? 华为云区块链服务使用HyperLedger开源框架。 HyperLedger,是由Linux基金会主导推广的区块链开源项目。目标是建立面向多种应用场景的分布式账簿平台的底层构架。Hyperledger在Hyperledger Fabric的
获取项目ID 调用API获取项目ID 项目ID还可通过调用查询指定条件下的项目信息API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects”,其中{Endpoint}为IAM的终端节点。接口的认证鉴权请参考认证鉴权。 响应示例如下,
下载证书 华为云区块链引擎服务支持执行合约、查询合约等功能。开发应用之前您需要进行证书下载。 操作步骤 登录区块链服务管理控制台。 单击左侧导航栏中的“实例管理”,选择Hyperledger Besu实例。 在实例卡片的右上角,单击“下载证书”,可下载证书zip包。 下载的证书包含server
附录 状态码 获取项目ID 获取账号ID 父主题: 华为云区块链引擎管理
csv文件,可获取认证凭据信息。 通过Authorization:Bearer $JwtToken调用Besu的接口,JwtToken为已获取的认证凭据信息。 父主题: 华为云区块链引擎管理
Solidity合约开发 基本方案 使用自研的容器合约环境集成Solidity的智能合约。 外部搭建Solidity Web IDE,生成测试需要的合约安装字节码和合约调用字节码。 将字节码二进制通过Hex编码字符串作为合约调用参数。 Solidity合约默认名称为:NATIVE_CUSTOM_EVM。
JAVA合约开发 SDK配置 SDK接口 合约结构 合约示例 合约安装 父主题: 合约开发
开发环境的JDK版本最低1.8。如果本地已安装JDK,可以通过命令java -version来查看JDK版本。 配置应用 在“实例管理”界面,在华为云区块链引擎页签中,单击对应实例右上角的“下载配置文件”,配置SDK参数信息如下表1。 表1 参数表 参数名称 说明 证书存放路径 用户编译应用程序时,证书的最终存放路径。
合约开发 概述 Go合约开发 Wasm合约开发(AssemblyScript) Solidity合约开发 JAVA合约开发 父主题: 华为云区块链引擎管理
请妥善保管下载用户证书中的私钥,建议您对私钥进行加密存储。 登录区块链服务管理控制台。 单击左侧导航栏中的“实例管理”,选择华为云区块链引擎。 请根据实际情况按如下方式选择下载配置文件: 基于华为云资源部署的华为云区块链引擎实例:在实例卡片的右上角单击“下载配置文件”。 图1 下载配置文件 设置配置文件参数信息如下表1。
部署相关类 华为云区块链引擎服务支持部署在第三方云厂商和BaaS平台,并且区块链节点间互通。 父主题: 华为云区块链引擎服务
概述 为了能在应用程序中使用区块链服务,可参考本章节完成应用程序的开发。 开发完成后,应用程序可以调用合约将业务数据发送到链上或从链上进行查询,以及查询区块链的块高、查看某个区块的详情和查看某笔交易的详情等。 父主题: 应用程序开发
SDK配置 表1 Go类型的合约SDK 合约类型 SDK下载 备注 Go 链接 具体使用可参考合约示例和合约安装。 父主题: Go合约开发
使用前必读 概述 调用说明 终端节点 基本概念 父主题: 华为云区块链引擎管理
修订记录 发布日期 修订记录 2022-08-30 第一次正式发布。 父主题: 华为云区块链引擎管理
如何调用API 构造请求 认证鉴权 返回结果 父主题: 华为云区块链引擎管理
权限策略说明 策略及授权项说明 自定义策略授权项 父主题: 华为云区块链引擎管理
下载对应的合约SDK文件。 配置SDK文件到本地合约项目。 基于SDK提供的库函数进行合约开发。 华为云区块链提供Go、Solidity类型的合约示例供开发者使用,示例下载和开发参考如下: 表1 华为云区块链引擎不同合约类型开发指南 合约类型 合约SDK下载 开发指南 Go 链接 参考文档
SDK升级与变更 华为云区块链引擎提供Java、Go两种语言的SDK,供开发者使用。 Java SDK:支持通过配置在线动态更新与升级。 Go SDK:目前不支持在线更新与升级,需要手动下载并引入应用程序中。 SDK版本:仅支持向前兼容,建议将SDK升级到最新版本。 Java SDK
SDK接口 表1 合约接口 接口 说明 Account account分为contract account和user account,该account接口为获取user account address的接口。 Bytecode 通过contract address 可以获取到实际运行时执行的字节码(runtime