检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
链代码示例 交易链码是用户实现其业务逻辑的链码,这里给出的示例代码Transaction Chaincode完成用户间的转账操作。在转账数据的验证过程中使用同态加密库对密文交易数据进行合法性校验,确保没有非法操作。示例中实现了余额初始化,余额查询,转账交易三个功能函数,具体功能实现参考如下。
概述 合约主要用于操作账本上的数据。作为运行在区块链上的、特定条件下自动执行的代码逻辑,合约是用户利用区块链实现业务逻辑的重要途径,基于区块链特点,合约的运行结果是可信的,其结果是无法被伪造和篡改的。 智能合约由用户自行编写上传并保证安全,请务必注意命令注入等相关安全问题。 为了
低代码合约开发 传统的智能合约开发需要开发人员使用底层区块链支持的合约语言进行相关业务开发和测试,开发人员不仅要求具备一定的编程能力,还需具备区块链等相关知识以保障合约的安全性。华为区块链提供低代码开发能力,开发人员仅需要根据实际业务画出业务流程建模符号(Business Process
部署应用 下载银行联盟链依赖的镜像:登录区块链服务管理控制台,进入“应用案例”,下载“银行联盟链示例应用”中的银行联盟链依赖的镜像。 登录到弹性云服务器,需提前安装好docker和unzip。 执行“cd /root/bankuniondemo”,将上一步下载的镜像上传到该目录。 执行“vi
选择“资源管理”中的“集群管理”,找到服务对应的集群,查看集群状态是否正常,若集群异常,待集群恢复后进行操作,或者重新选择使用状态正常的集群创建区块链服务; 按照故障处理指导书中ETCD故障处理指导中的步骤,检查ETCD状态,若ETCD异常,则按照指导书中的步骤进行恢复,待恢复正常后重试。
选择“资源管理”中的“集群管理”,找到服务对应的集群,查看集群状态是否正常,若集群异常,待集群恢复后进行操作,或者重新选择使用状态正常的集群创建区块链服务; 按照故障处理指导书中ETCD故障处理指导中的步骤,检查ETCD状态,若ETCD异常,则按照指导书中的步骤进行恢复,待恢复正常后重试。
通道、更新通道、安装链代码、实例化链代码、更新链代码和删除链代码需要使用管理员证书,交易和查询推荐使用用户证书。应用程序开发人员需要到实例管理界面下载对应服务的证书。 管理员证书:组织的管理权限证书和私钥,可使用该身份进行通道和合约的管理。 用户证书:组织的用户权限证书和私钥,可使用该身份进行普通的交易和查询。
实现联盟链中业务的隔离,每个通道可视为一条子链,并且对应一套账本,同一个区块链网络,不同通道之间的账本数据不可见。 华为云区块链引擎特有概念 节点 维护账本的网络节点,一个或多个节点组成组织。 业务链 业务链可以将区块链网络中的账本数据进行隔离和保密,主要用于实现联盟链中业务的隔
Demo相关使用问题 区块链应用端使用Fabric开源版本的java SDK还是使用华为的SDK? 答:需要使用华为Java Demo中提供的SDK。 区块链应用端对接Fabric 2.0版本也使用Java Demo中自带的SDK 1.4.1版本吗? 答:是的。 区块链应用端调用链代码报错: “Caused
chainID string 链ID。 返回值 类型 说明 *common.RawMessage 查询链状态需要发送的消息 error 查询成功返回类型为nil,反之返回error。 消息发送。 接口方法 QueryAction.class func (action *QueryAction)
} init方法:在链代码实例化或升级时被调用,完成初始化数据的工作。 Invoke方法:更新或查询账本数据状态时被调用, 需要在此方法中实现响应调用或查询的业务逻辑。 链代码结构 Java语言的链代码结构如下: package main // 引入必要的包,系统自动操作
待上链文件在本地的路径。当前支持不大于100MB的任意格式文件。 fileName string 文件在链上的名称。不允许包含 "/"。 返回值 类型 说明 *UploadFileResponse 文件上链返回信息。 error 上链成功返回类型为nil,反之返回error。 父主题: Go SDK介绍
联盟成员之间的数据如何同步? 联盟之间共用一个账本。除了隐私数据之外,所有的交易区块和记录都是同步的,联盟成员共用Orderer节点,所有参与方的Peer节点区块都是从Orderer节点获取,因此联盟之间是基于区块维度进行数据同步。通过密码学算法和共识算法保证区块内容的一致性和不可篡改。
”,下载“银行联盟链示例应用”中的银行联盟链的链代码。 链代码描述 根据需要填写相关描述。 代码安全检查 链代码语言选择Golang,该功能才会显示。选择是否开启代码安全检查。 单击“安装”,完成链代码安装。 实例化链代码 链代码安装完成后,在链代码列表的“操作”列,单击“实例化”。
开发前准备 链代码(Chaincode)又称智能合约,是用Go、Java或Node.js语言编写的程序,主要用于操作账本上的数据。链代码是运行在区块链上的、特定条件下自动执行的代码逻辑,是用户利用区块链实现业务逻辑的重要途径。基于区块链特点,智能合约的运行结果是可信的,其结果是无法被伪造和篡改的。
链代码相关的API Fabric源码包中的shim包提供了如下几种类型的接口,您可以参考使用: 参数解析API:调用链代码时需要给被调用的目标函数/方法传递参数,该API提供解析这些参数的方法。 账本状态数据操作API:该API提供了对账本数据状态进行操作的方法,包括对状态数据的查询及事务处理等。
链代码相关的API Fabric源码包中的shim包提供了如下几种类型的接口,您可以参考使用: 参数解析API:调用链代码时需要给被调用的目标函数/方法传递参数,该API提供解析这些参数的方法。 账本状态数据操作API:该API提供了对账本数据状态进行操作的方法,包括对状态数据的查询及事务处理等。
如何判断是否有必要使用区块链? 依次回答下列问题对确定区块链技术是否适合项目有一定的帮助。 是否存在多方分享数据? 一个完整可靠的共享记录系统是否会使每个业务关系的参与者受益。 是否存在多方更新数据? 如果多个参与者能够记录和传播并发交易,会不会有更高的数据准确性和及时性。 是否有验证和校验的需求?
在新创建的实例卡片中,单击“区块链管理”,登录链代码管理页面。 在登录页面输入用户名、密码,单击“登录”。 用户名为admin,密码为您在创建区块链实例时设置的区块链管理初始密码,如果没有设置区块链管理初始密码,则以资源初始密码为准。 在链代码管理页面,单击页面左上角的。 安装参数如下:
fileName string 查询的链上文件名。 startTime string 查询记录的起始时间(秒时间戳)。 endTime string 查询记录的结束时间(秒时间戳) 返回值 类型 说明 []*StorageEvent 文件操作记录列表,每条操作记录包含操作者、操作类型、时间数据。