检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
通过状态标识,可直观的查看当前业务是否完成。 接口服务。 目前支持业务应用通过项目生成的JAVA SDK调用智能合约,后续为了方便用户快速接入区块链系统,将提供快速构建Restful API的方式接入,用户可以在SDK和 Restful API之间选择适合的方式调用智能合约接入区块链系统。
tion,勾选“管理员证书”。 单击“下载”,下载SDK配置文件、demo-orderer组织的管理员证书和organization组织的管理员证书。 复制并解压。 先下载工程源代码gatewayjavademo.zip文件并解压。 获取方法:登录区块链服务管理控制台,进入“应用
tion,勾选“管理员证书”。 单击“下载”,下载SDK配置文件、demo-orderer组织的管理员证书和organization组织的管理员证书。 复制并解压。 先下载工程源代码javasdkdemo_src.zip文件并解压。 获取方法:登录区块链服务管理控制台,进入“应用
被邀请方加入联盟链 当您收到加入联盟链的成员邀请时,您会收到通知信息,此时您可以同意邀请,加入联盟链。 操作步骤 被邀请方A登录区块链服务管理控制台。 在页面左侧选择“通知管理”。单击通知列表“操作”列的“查看”。 创建区块链实例。 作为被邀请方,选择实例前需要单击“创建BCS实例”来创建实例,否则无法加入联盟通道。
创建联盟链后,您可以通过邀请成员加入某个通道组建联盟链系统。 操作步骤 登录区块链服务管理控制台。 在页面左侧选择“成员管理”。单击页面右上角“邀请成员”。 在邀请成员页面,下拉列表中选择创建的BCS实例和通道,在租户名称中填入被邀请方的租户名,单击“确定”。 图1 邀请成员 (可选)单击“邀请一个新租户”可添加多个成员进行邀请。
ric增强版区块链实例,请您尽快手动清理多余的云服务委托权限。 具体的操作步骤如下: 登录统一身份认证服务 IAM,选择“委托”并搜索委托名称“bcs_admin_trust”。 单击“修改”进入“bcs_admin_trust”委托的修改页面。 进入“授权记录”,确认以下权限已被正确配置:
联盟成员之间的数据如何同步? 联盟之间共用一个账本。除了隐私数据之外,所有的交易区块和记录都是同步的,联盟成员共用Orderer节点,所有参与方的Peer节点区块都是从Orderer节点获取,因此联盟之间是基于区块维度进行数据同步。通过密码学算法和共识算法保证区块内容的一致性和不可篡改。
项目ID还用通过调用查询指定条件下的项目信息API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects/”,其中{Endpoint}为IAM的终端节点。接口的认证鉴权请参见认证鉴权。 响应示例如下,其中projects下的“id”即为项目ID。 {
Fabric增强版实例。通过组建一个银行联盟链,银行联盟链的发起方可以动态邀请其他银行加入此联盟链,组建一个多成员参与的银行联盟链系统。联盟成员之间实现数据可信共享,不仅可以节省用户办理业务的时间和精力,同时还可以提高银行的办事效率。而且各联盟成员的节点运行在独立的VPC中,独立管理,安全可控。 本实践以组建银
链代码示例 交易链码是用户实现其业务逻辑的链码,这里给出的示例代码Transaction Chaincode完成用户间的转账操作。在转账数据的验证过程中使用同态加密库对密文交易数据进行合法性校验,确保没有非法操作。示例中实现了余额初始化,余额查询,转账交易三个功能函数,具体功能实现参考如下。
进入BCS控制台,单击“实例管理”,单击交易异常的实例名称,查看版本信息。 根据“版本信息”显示的Hyperledger Fabric版本,排查客户端所使用的fabric-sdk是否与其一致。如果版本不一致,会导致交易失败、交易超时等情况发生。 解决方案 根据实际的Hyperledger
每个数据所有者都只需初始化一次自己的主公钥和私钥。 数据申请者需要使用某数据所有者数据时,需要向其申请用户密钥,当属性没有变化的情况下只需申请一次。 当拥有用户密钥且属性满足密文访问策略时,数据申请者可以异步的,随时解密数据所有者发布的所有相应数据。 接口使用方法请参考属性加密的密钥管理。 图3 细粒度访问控制模式使用流程
系统中多数独立参与者对某个交易/操作的有效性达成一致。包括对双方交易的验证达成一致、对任何交易的其他合法性(比如业务逻辑合法性)的验证达成一致、对于合法数据是否写入现有账本达成一致。 哈希算法 一段数字内容的Hash值,可以用于验证数据的完整性。数字内容的微小修改都会引起Hash值的巨大变化。合格的Hash
耗时间,但可明显提高数据查询速度。因此可以根据业务需要,合理的在某些字段上建立索引。 添加权限验证 对智能合约执行者的权限进行验证,防止无权限的用户执行链代码。 如果业务上不要求确定的某个组织进行背书,为确保链代码上的数据不被任意组织恶意修改(自己安装非法链代码,操作数据等),建议至少两个或两个以上组织共同参与背书。
2风格(使用fabric-contract-api-go包)。 区块链服务BCS支持使用两种风格编写的链代码。 链代码接口 Fabric架构版本的区块链实例: 链代码启动必须通过1.4风格(调用shim包)中的Start函数,入参为shim包中定义的Chaincode接口类型。实际开发中, 您需要自行定义一个结构体,实现Chaincode接口。
区块链应用低代码开发功能 概述 低代码合约开发 业务流程管理 使用说明 父主题: 附录
init方法:在链代码实例化或升级时被调用,完成初始化数据的工作。 Invoke方法:更新或查询账本数据状态时被调用, 需要在此方法中实现响应调用或查询的业务逻辑。 链代码结构 Java语言的链代码结构如下: package main // 引入必要的包,系统自动操作,只要在maven或gradle中配置即可
链ID,配置为链配置文件中yaml中chain_id字段对应的值。 运行程序,示例中的send函数调用合约的insert函数,向区块链存入一对键值对<a,huaweichain>。 进入区块链浏览器页面,在交易查询列表中,单击操作列的“查看详情”,即可查看返回的结果信息。 父主题: 华为云区块链引擎快速入门
SDK依赖的io.grpc和原工程中依赖的版本不同导致,请根据实际情况解决此冲突。 在ARM架构类型下使用JAVA SDK DEMO报错: 答:Hyperledger开源社区提供的Java SDK不支持在ARM环境下使用。华为提供的国密加密SDK,增加了对ARM场景的支持,如果需
需要与继承ChaincodeBase类接口的类路径保持一致 attributes 'Main-Class': 'org.hyperledger.fabric.example.SimpleChaincode' } } // 以下为SimpleChaincode类内中的内容 package