检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
node-0.organization-1yoamyube: # 节点名称,共识组织包含3个节点,非共识组织包含2个节点 hostOverride: * host: * port: * SDK客户端的配置与初始化 可参考SDK介绍,配置示例可参考不同语言对应的应用程序示例
node-0.organization-1yoamyube: # 节点名称,共识组织包含3个节点,非共识组织包含2个节点 hostOverride: * host: * port: * SDK客户端的配置与初始化 可参考SDK介绍,配置示例可参考不同语言对应的应用程序示例
表1 SDK列表 编程语言 Github地址 参考文档 Java huaweicloud-sdk-java-v3 Java SDK使用指导 Python huaweicloud-sdk-python-v3 Python SDK使用指导 Go huaweicloud-sdk-go-v3
合约结构 Java语言合约由合约文件及依赖包构成,包含包声明、依赖包导入、智能合约的方法定义。 合约文件中,用户可自定义合约函数,需要实现Contract的init和invoke方法。
合约安装 Java语言合约安装步骤如下: 部署合约时,执行mvn package,可在target目录下获取可安装的合约Jar包,文件名为contract.jar。 合约安装,可参考用户指南 >区块链管理 > 合约管理。
合约安装 Go语言合约安装步骤如下: 将已完成开发的合约文件,压缩成zip格式(可参考Go合约示例文件[链接],示例文件可直接安装)。 合约安装,可参考用户指南->安装合约。 合约压缩文件格式:需确保格式为*.zip,且合约文件位于压缩包文件中的一级目录。
9fb42c91458763990a45b62af92546a21f168dae.default.svc.cluster.local","peer_name":"peer-0"}] description 否 String 链代码描述 chaincode_language 是 String 链代码编程语言
AssemblyScript语言类型合约不支持查询指定键的历史数据。 父主题: 示例Demo
合约结构 Go语言合约由合约文件及依赖包构成,包含包声明、依赖包导入、智能合约的结构体定义和方法定义。 合约文件中,用户可自定义结构体以及合约函数。
获取合约扫描报告 功能介绍 获取合约安全扫描报告,只支持云端管理实例使用,接口返回内容为扫描报告zip文件的字节流,当前只支持Go语言类型合约 URI GET /v2/{project_id}/huaweicloudchain/instances/{instance_id}/chain
合约结构 AssemblyScript语言合约主要包括index.ts和contract.ts两个文件,其中index.ts为开发智能合约文件(contract.ts)依赖的合约SDK,合约涉及的业务相关开发仅在contract.ts文件,智能合约文件contract.ts需要根据实际业务进行开发
代码安全检查 链代码语言选择Golang,该功能才会显示。选择是否开启链代码安全检查。 单击“安装”完成链代码安装。 链代码安装完成后,在链代码列表的“操作”列,单击“实例化”。
开发规范 防止出现panic后链代码容器异常 该内容仅适用于Fabric架构版本的区块链实例的Go语言链代码开发。
策略是以JSON格式描述权限集的语言。默认情况下,新建的IAM用户没有任何权限,您需要将其加入用户组,并给用户组授予策略,才能使用户组中的用户获得策略定义的权限,这一过程称为授权。授权后,用户就可以基于策略对云服务进行操作。 根据授权的精细程度,分为角色和策略。
本示例使用存证链代码,链代码文件下载方法:登录区块链服务管理控制台,进入“应用案例”,下载“快速入门”中的Go语言示例链代码。 链代码描述 根据需要填写相关描述。 代码安全检查 链代码语言选择Golang,该功能才会显示。选择是否开启代码安全检查。
根据链代码开发语言的不同,实例化后的容器占用内存量并不相同。对于单个peer节点,单个Go语言链代码容器占用运行内存约10MB,单个Java语言链代码容器占用约110MB。例如需要实例化100个Java语言链代码,建议CCE节点规格为16核32GB。
合约管理 为您提供界面化合约管理功能,包括合约安装、更新合约,Go语言类型的合约支持合约扫描功能进行安全检查。 表1 华为云区块链引擎支持的合约类型 合约类型 开发指南 注意事项 Go 链接 Go类型合约文件需要压缩成zip格式进行安装,且确保合约文件位于压缩包的一级目录下。
概述 SDK说明 华为云区块链引擎目前提供Java、Golang两种语言SDK,区块链服务启动时会启动一系列grpc接口,监听客户端发送的消息,与客户端交互完成各种请求。
开发前准备 链代码(Chaincode)又称智能合约,是用Go、Java或Node.js语言编写的程序,主要用于操作账本上的数据。链代码是运行在区块链上的、特定条件下自动执行的代码逻辑,是用户利用区块链实现业务逻辑的重要途径。
当前只支持Go和java语言类型合约,只能上传一个zip文件。go语言类型合约,zip文件不能超过30M,子文件总数不能超过1000000个,子文件总大小不能超过500M。