检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
开发规范 防止出现panic后链代码容器异常 该内容仅适用于Fabric架构版本的区块链实例的Go语言链代码开发。 为避免出现panic异常时链代码容器异常重启,找不到日志,导致问题无法及时定位,可在Invoke函数入口处添加defer语句时,出现panic异常时返回错误给客户端。
个区块链的状态,对区块链基本的维护提供数据支撑。 账本存储 提供文件数据库(GoLevelDB)和NoSQL(CouchDB)两种区块链状态信息存储可选方案。 文件数据库:交易历史数据保存在区块链中,状态数据保存在LevelDB中。 NoSQL:CouchDB存储交易数据和状态数据。
value) throws ContractException 功能:写状态数据库操作,此接口只是将key、value形成写集,打包到交易中,只有当交易排序、出块、并校验通过之后,才会将key/value写入到状态数据库中 入参:要写入的键值对,要求key != "",并且value !=
([]byte, error) 功能:获取状态数据库中某个key对应的value。 入参:某个键值对的key信息,不可为空。 返回值:返回[]byte类型的value值;当key不存在时,value为nil。 error:当网络出错,状态数据库出错,返回error信息。 PutKV(key
分布式账本 分布式账本是一种在网络成员之间共享、复制和同步的数据库。分布式账本记录网络参与者之间的交易,比如资产或数据的交换。这种共享账本消除了调解不同账本的时间和开支。手册中提到的账本均指的是分布式账本。 去中心去信任:多份数据分布保存在各个节点,没有中心化或第三机构负责控制数据。 集体
保证数据安全的加密算法,支持ECDSA和国密算法。 ECDSA 账本数据存储方式 支持文件数据库(GoLevelDB)和NoSQL(CouchDB)存储方式。 文件数据库(GoLevelDB):使用Fabric原生存储方式,交易历史数据保存在区块链中,状态数据保存在LevelDB中。 NoSQL(CouchDB):使
// 入参:stub是智能合约SDK为本次合约执行交易准备的上下文对象,可以通过stub提供的API函数,获取交易请求相关信息、读写状态数据库、写日志等 // 返回值:需要返回给合约调用者(区块链客户端)的信息,没有信息需要返回时,返回值可以为null // 抛出
用于存储共享分布式账本,共识数据和中间结果等。 500GB 账本数据存储方式 支持文件数据库(GoLevelDB)和NoSQL(CouchDB)存储方式。 文件数据库(GoLevelDB):使用Fabric原生存储方式,交易历史数据保存在区块链中,状态数据保存在LevelDB中。 NoSQL(CouchDB):使
information") } 输出更新后的余额(密文) 业务的账本内容需要用户定制,将上面加密的金额合入到用户的账本中保存,demo中定义了一个存储结构,保存完后通过json序列化为一个交易记录对象进行保存。 type TransRecord struct { FromAddr string
助您了解整个区块链服务的状态,对区块链服务基本的维护提供数据支撑。 2018-08-09 支持关系数据库(MySQL):您可以在部署区块链服务实例时选择数据库类型时选择关系型数据库。选用MySQL的存储方式,链代码就可以使用SQL语句对状态数据进行复杂查询,可极大提高区块链服务的查询效率,降低使用难度。
日志文件”,下载发出告警的实例集群上的Peer和Orderer日志文件到本地,联系并提供给技术支持工程师进行处理。 节点访问数据库失败 BCS 节点在访问状态数据库文件时产生异常,可能原因有: 状态数据库文件损坏或丢失。 状态数据库挂载的存储服务被删除。 处理方法如下: 登录区块链服务管理控制台,在左侧导航栏单击“实例管理”,单击实例名称进入实例详情页。
极速文件存储卷(SFS Turbo)备份与数据恢复功能使用指导 开启自动备份 如果您在购买区块链实例时,存储卷类型选择的是“极速文件存储卷 > 创建极速文件存储卷”,建议您开启极速文件存储卷(SFS Turbo)的自动备份功能,自动备份功能开启后,系统会在您设置的时间自动备份文件
选择“CCE集群”。 容器集群 选择创建好的容器集群。 存储卷类型 选择“文件存储卷”。 网络存储 选择创建好的文件存储。 账本数据存储方式 默认文件数据库(GoLevelDB),与邀请方一致。 peer节点组织 创建1个节点组织,名称自定义,例如:civilizationBank。 共识策略
创建备份 当您已购买华为云区块链引擎实例,并且对该实例进行添加标签、安装合约等其他操作时,可创建备份对实例进行快照保存。 创建备份支持两种方式: 手动创建备份:通过手动设置创建实例备份。 设置自动备份策略:通过设置自动备份策略,周期性的自动对实例创建备份。 手动创建备份 登录区块链服务管理控制台。
始密码为准。 区块链管理确认密码 - 存储卷类型 文件存储卷。 节点组织存储容量 (GB) 使用默认规格。 账本数据存储方式 选择“文件数据库(GoLevelDB)”。 peer节点组织 创建1个节点组织,名称必须与如下内容完全一致: democraticBank,节点数量为2。
加链代码文件等,配置参数如表1所示。 表1 配置参数 参数 示例 链代码名称 fabbank 链代码版本 1.0 账本数据存储方式 文件数据库(GoLevelDB) 选择全部Peer节点 勾选 组织&Peer节点 默认已同时选中所有节点。 链代码语言 Golang 链代码文件 登
用户身份等信息需要加密,避免暴力破解;提供基于身份信息的快速查询。 关键挑战: 安全隐私:银行不希望把客户隐私信息泄露给其它银行。 高性能检索:提供类传统数据库的检索性能(毫秒级响应) ,保持一致用户体验。 良好接口:提供简单方便的接口,便于应用开发。 操作流程 介绍组建联盟链的操作流程。 图1 操作流程
初始化余额时可以调用初始余额准备函数生成具有隐私保护的初始余额信息。 发起交易 交易时可以调用交易准备函数生成具有隐私保护的交易数据。 链代码端对应的逻辑过程是: 保存用户公钥与地址的映射关系。 验证初始余额的有效性并生成初始交易。 验证交易数据的有效性并生成交易结果。 链码端可以通过调用初始余额校验函数来验证初始余额的有效性。
描述 链代码名称 链代码名称,以小写字母开头,支持小写字母和数字,长度6-25位。 链代码版本 链代码版本号。 账本数据存储方式 默认是文件数据库(goleveldb)。 选择全部Peer节点 打勾后,选择全部Peer节点。 组织&Peer节点 手动选择组织&Peer节点。 链代码语言
密码为准。 区块链管理确认密码 - 存储卷类型 极速文件存储卷 节点组织存储容量 (GB) 使用默认规格。 账本数据存储方式 选择“文件数据库(GoLevelDB)” peer节点组织 系统已默认创建1个节点组织,名称为organization,将节点数量修改为1。 通道配置 o