检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
提高数据查询速度。因此可以根据业务需要,合理的在某些字段上建立索引。 添加权限验证 对智能合约执行者的权限进行验证,防止无权限的用户执行链代码。 如果业务上不要求确定的某个组织进行背书,为确保链代码上的数据不被任意组织恶意修改(自己安装非法链代码,操作数据等),建议至少两个或两个以上组织共同参与背书。
String 链ID consensus String 区块链共识类型:IBFT2.0 sign_algorithm String 区块链签名算法:ECDSA contract_num Integer 合约数量 block_num Integer 区块数量 transaction_num
针对以上三种情况,请查看对应系统策略、系统角色以及细粒度权限依赖的权限,详细操作请参考权限管理进行对应的权限配置。 系统策略、系统角色的依赖项请参考表1。 表1 华为云区块链引擎权限 系统权限 权限描述 权限类别 依赖关系 BCS Administrator 区块链服务的所有执行权限。 系统角色 BSS Administrator、VPCEP
Key):与访问密钥ID结合使用的密钥,对请求进行加密签名,可标识发送方,并防止请求被修改。 使用AK/SK认证时,您可以基于签名算法使用AK/SK对请求进行签名,也可以使用专门的签名SDK对请求进行签名。详细的签名方法和SDK使用方法请参见API签名指南。 签名SDK只提供签名功能,与服务提供的SDK不同,使用时请注意。
合约示例目录结构 目录 介绍 go-contract-sdk 包含Go合约SDK文件(interfaces.go)、SDK接口的mock,用于实现合约逻辑的接口。 example.go 用户自定义合约文件。示例文件以合约结构为基础,提供简单场景、复杂场景(弹珠游戏)两类合约操作函数。
Key):与访问密钥ID结合使用的密钥,对请求进行加密签名,可标识发送方,并防止请求被修改。 使用AK/SK认证时,您可以基于签名算法使用AK/SK对请求进行签名,也可以使用专门的签名SDK对请求进行签名。详细的签名方法和SDK使用方法请参考API签名指南。 签名SDK只提供签名功能,与服务提供的SDK不同,使用时请注意。
计费项 计费说明 区块链服务的计费项由配置费用、底层资源费用组成。具体内容请查看表1。 表1 计费组成表 费用类别 计费项 计费说明 付费方式 配置费用 版本类型 版本类型有专业版、企业版和铂金版。不同版本类型,规格大小不同,详细说明如下: 专业版(满足小规模商用) 最大成员组织数:2
企业项目id,不填默认为“0”,即default企业项目。说明:关于企业项目ID的获取及企业项目特性的详细信息,请参见《企业管理用户指南》 backup_id 否 String 备份id,恢复实例的时候必填 表4 CreateOrg 参数 是否必选 参数类型 描述 name 是 String
Solidity类型合约需要配置,其他类型合约无需配置。 安装组织 选择需要安装的组织。 说明: Solidity合约的安装组织默认为共识组织,不支持自定义组织。 背书策略 背书是指背书组织执行链码交易并返回一个提案响应给客户端应用的过程。背书策略则指明了需要区块链上多少不同组织的成员根据指定智
consensus ConsensusType object 区块链共识类型:raft sign_algorithm String 区块链签名算法:ECDSA(ecdsa_with_sha256)、国密(sm2_with_sm3) tps_limit Integer 链交易tps上限
生成的智能合约选择背书策略、安装合约的组织等配置,完成合约的安装和实例化,智能合约最终运行在背书节点中的一个Docker容器内。 智能合约触发 实例化后的智能合约,可以通过外部条件来触发合约执行过程,支持事件触发和交易触发的方式,两种模式均会触发背书节点进行一致性共识,避免恶意节点作恶。
通过合约对业务数据交互。对数据有修改的操作如插入和删除,需要调用其中的send方法。对数据的查询操作如查询某个键的历史,需要调用其中的query方法。 block.go 用于从区块上获取数据。 tx.go 用于从交易上获取数据。 config.go 客户端的初始化配置。 readme.md 提供详细的接口调用示例。
e.js语言编写的程序,主要用于操作账本上的数据。链代码是运行在区块链上的、特定条件下自动执行的代码逻辑,是用户利用区块链实现业务逻辑的重要途径。基于区块链特点,智能合约的运行结果是可信的,其结果是无法被伪造和篡改的。 在使用区块链服务BCS时,用户需要开发自己的链代码和应用程序
插件介绍 插件管理用于管理BCS实例的扩展功能,以支持选择性扩展满足特定需求的功能。您可以通过插件管理,安装、升级、卸载插件,也可以查看插件实例的详细信息。插件说明如表1所示。 约束与限制 基于边缘集群的BCS实例,暂不支持插件的安装。 表1 插件说明 名称 说明 限制 baas-restapi
invitor_bcs_id String 邀请方的服务实例id invitor_bcs_name String 邀请方的服务实例名 invitor_consensus String 邀请方的共识 invitor_project_id String 邀请方的projectID invitor_cluster_type
Query参数 参数 是否必选 参数类型 描述 offset 否 Integer 分页查询起始位置 limit 否 Integer 每页返回的条目数量 请求参数 表3 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token 响应参数
Fabric增强版 Hyperledger Fabric增强版的区块链服务BCS提供专业版、企业版和铂金版供您选择使用,每个版本均有不同的规格支持,详细请参见表3。集群规格信息请参考表4。 各版本的价格请参见:产品价格详情。 一个容器集群目前只能部署一个区块链实例。 表3 各版本区别 功能 专业版
consensus ConsensusType object 区块链共识类型:raft sign_algorithm String 区块链签名算法:ECDSA(ecdsa_with_sha256)、国密(sm2_with_sm3) contract_num Integer 合约数量 block_num
安装及实例化链代码 一个通道里的所有Peer节点都必须安装链代码,然后在其中一个Peer节点上进行链代码实例化。如需使用相同的链代码,通道成员必须在链代码安装期间为链代码提供相同的名称和版本。 邀请方、被邀请方A和B都必须安装链代码。 使用的链代码名称和版本号必须一致。 实例化链
java中的初始化参数,可参考开发指南->SDK客户端配置。 表2 客户端初始化配置介绍 参数 值 ConfigFilePath 链配置文件中yaml文件所在路径 ContractName 配置为合约安装时填写的合约名称,参考用户指南->安装合约。 Solidity合约的默认名称为