检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
配置应用 在邀请方发起交易的时候,邀请方需要下载自己的orderer管理员证书、democraticBank组织的管理员证书以及被邀请方A和B已隐去私钥的证书。 请妥善保管下载证书中的私钥,建议对私钥进行加密存储。 前提条件 已创建弹性云服务器。
图1 操作流程 订购区块链实例 订购联盟链类型的区块链实例,组织成员名为democraticBank。 邀请成员 创建联盟链成功后,由组织成员democraticBank作为邀请方邀请新成员civilizationBank和harmoniousBank加入联盟链。
/opt/bank/src/bank/conf/democraticBank.yaml -v $path/harmoniousBank.yaml:/opt/bank/src/bank/conf/harmoniousBank.yaml -v $path/civilizationBank.yaml
peer节点组织 创建1个节点组织,名称必须与如下内容完全一致: democraticBank,节点数量为2。 通道配置 将通道名称修改为testchannel,并将democraticBank节点组织添加至通道中。 说明: 通道名称必须为testchannel。
openssl pkcs8 -topk8 -nocrypt -in user-key_.pem -out user-key 生成证书请求文件。 openssl req -new -key user-key -out user-csr.pem CA签发证书。
Wasm合约开发(AssemblyScript) 合约结构 合约相关的API 示例Demo 父主题: 合约开发
合约结构 AssemblyScript语言合约主要包括index.ts和contract.ts两个文件,其中index.ts为开发智能合约文件(contract.ts)依赖的合约SDK,合约涉及的业务相关开发仅在contract.ts文件,智能合约文件contract.ts需要根据实际业务进行开发
示例Demo 合约编译 Demo工程目录 父主题: Wasm合约开发(AssemblyScript)
合约编译 下载Node.js软件并安装,安装成功后,执行如下命令查看对应版本(软件对应版本无强制要求)。 node -v npm -v 设置新目录assembly,在该目录下执行 npm init 命令,其中package name输入为assembly(目录名、package name
Demo工程目录 合约开发和调测可参考合约示例Demo,单击链接获取AssemblyScript语言合约工程Demo。 build目录下optimized.wasm为合约编译后对应的wasm字节码文件(最终合约类型文件为optimized.wasm压缩成的*.zip包,合约示例Demo
合约相关的API 合约SDK(index.ts)提供如下API接口,可以在合约文件中进行调用。这些API按照功能可以划分为: 表1 辅助功能 接口 说明 FuncName(txid :string ) :string 获取智能合约请求中指定的智能合约函数名称。 Parameters
下载证书 华为云区块链引擎服务支持执行合约、查询合约等功能。开发应用之前您需要进行证书下载。 操作步骤 登录区块链服务管理控制台。 单击左侧导航栏中的“实例管理”,选择Hyperledger Besu实例。 在实例卡片的右上角,单击“下载证书”,可下载证书zip包。 下载的证书包含
查询凭证模板 功能介绍 根据索引查询凭证模板。 调试 您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。 URI POST /v1/identity/query-credential-schema
查询区块详情 消息构建。 接口方法 QueryRawMessage.class public RawMessage buildBlockRawMessage(String chainId, long blockNum) throws CryptoException 参数说明 参数
查询块高 消息构建。 接口方法 QueryRawMessage.class public RawMessage buildLatestChainStateRawMessage(String chainId) throws CryptoException 参数说明 参数 类型 说明
利用交易ID查询交易详情 消息构建。 接口方法 QueryRawMessage.class public RawMessage buildTxRawMessage(String chainId, byte[] txHash) throws CryptoException 参数说明
查询交易执行结果 消息构建。 接口方法 QueryRawMessage.class public RawMessage buildTxRawMessage(String chainId, byte[] txHash) throws CryptoException 参数说明 参数 类型
组织加密 接口方法 func (client *GatewayClient) EncryptDataWithE2EE(consensusOrgID, encOrgID string, decOrgIDs []string, data string, options ...interface
批量添加资源标签 功能介绍 批量添加资源标签 URI POST /v2/{project_id}/{resource_type}/{instance_id}/tags/create 表1 路径参数 参数 是否必选 参数类型 描述 resource_type 是 String 资源类型
组织解密 接口方法 func (client *GatewayClient) DecryptDataWithE2EE(consensusOrgID, decOrgID string, txID string) (data string, err error) 参数说明 参数 类型