从零到壹学习Hyperledger Fabric第十一讲:configtxlator转换配置

黎跃春

孔壹学院、ChainDesk创始人兼CEO

如果您有任何关于区块链的问题,可以加入区块链技术交流QQ群729666975(进群无需添加验证信息,直接点击下一步,等待管理员通过即可),我们会为您一一解答。

从零到壹学习Hyperledger Fabric为一个系列,一共15讲,包括搭建Hyperledger Fabric环境、Hyperledger Fabric Samples安装、建立第一个网络、手动配置网络实现及测试Chaincode、编写第一个应用等。今天我们将为大家介绍从零到壹学习Hyperledger Fabric第十一讲:configtxlator转换配置。话不多说,马上开启我们的Hyperledger Fabric学习之旅。

课程学习,添加莉莉微信(kongyixueyuan)获取。

孔壹学院

设置环境

进入到目录中, 执行关闭网络,清理之前的任何环境

重新生成默认的BYFN构件

在CLI容器中启用网络

添加组织Org3

使用脚本将Org3引入网络

从输出中可以看看到添加的Org3加密资料,配置更新正在创建和签名,然后链接代码被安装以允许Org3执行分类账查询

如果执行成功, 会有如下输出

进入CLI容器

导出 与 变量:

检查环境变量是否正确设置:

如果重新启动了CLI容器,则必须重新导出两个环境变量

查询

查询结果:

调用,实现从a到b转账

查询

查询结果:

手动实现配置

如果使用了脚本,则需要将网络关闭.删除所有容器并撤销添加Org3所做的操作

在 目录中执行如下命令:

生成Org3加密材料

从 目录转至 目录中

生成加密材料

为Org3 CA以及与此新Org绑定的两个对等生成密钥和证书

新生成的文件被保存在当前目录下新生成的文件夹 中

使用 工具以JSON输出Org3特定的配置材料到指定的文件中

如果出现权限不够的错误, 则执行如下代码赋予权限

创建一个JSON文件 - 并将其输出到 下的 子目录

该文件包含Org3的策略定义,以及以Base 64格式提供的三个重要证书:admin用户证书(稍后将用作Org3的管理员),CA根证书和TLS根证书证书

后面会将这个JSON文件附加到通道配置中

将Orderer Org的MSP材料移植到Org3 目录中

更新频道配置

进入CLI容器

安装jq工具

jq可以将所需要的数据格式转换成任意的数据格式

jq工具允许脚本与工具返回的JSON文件进行交互

导出 与 变量:

检查环境变量是否正确设置:

如果重新启动了CLI容器,则必须重新导出两个环境变量

获取配置

获取 通道的最新配置块, 可以防止重复或替换配置更改, 有助于确保并发性, 防止删除两个组织

上述命令将二进制protobuf通道配置块保存到

转换配置为JSON

利用 工具将此通道配置块解码为JSON格式, 删除所有与想要改变的内容无关的标题,元数据,创建者签名等等

通 工具来完成

查看文件中的内容

使用jq将Org3配置定义追加到通道的应用程序组字段,并命名输出

将 中的内容输出为

将 中的内容输出为

使用计算这两个配置protobufs之间的增量。该命令将输出一个新的protobuf二进制文件,命名为:

将 中的内容输出为 :

签署并提交配置更新

导出Org2环境变量:

命令执行后会有如下输出:

检查日志

打开一个新的终端(终端2)执行如下命令:

配置选举领导者

配置文件所在路径 :

查看该文件内容:

使用静态领导者模式,将对等者配置为组织负责人:

利用动态领导者选举,配置对等者使用领导者选举:

将Org3加入到通道

打开一个新的终端(终端3), 从 中启动Org3 docker compose

进入Org3特定的CLI容器中:

导出环境变量:

检查变量 :

检索该块:

发出命令并通过创世区块:

导出TLS与ADDRESS变量并重新发布

升级并调用Chaincode

在Org3的CLI中执行(终端3):

使用Org2管理员身份提交了频道更新通话(在终端1中执行):

Flip to the identity:

再次安装:

发送电话:

如果报如下错误:

通过标志指定新版本。可以看到Org3添加到背书政策中

与实例化调用一样,链式代码升级需要使用该 方法

升级调用将新的块 - 块6 - 添加到频道的分类账中,并允许Org3同行在认可阶段执行交易。跳回Org3 CLI容器(终端3)并发出一个查询值:

在终端1与终端3中通过,正确显示查询结果:

调用,实现从a到b转账(终端3):

查询:

在终端1与终端3中通过,正确显示查询结果:

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180803G1XXQE00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券