本文是区块链浏览器系列的第二篇。

上一篇介绍了交易块中的数据结构,这一篇介绍区块链网络中的配置块数据结构。

这两种区块中数据结构内容的区别主要Payload结构体中的Data域中的内容,接下来将以类图的形式来解析Data域包含的信息:

classDiagram
class Payload{
Header *Header
Data []byte
}
class Header{
ChannelHeader []byte
SignatureHeader []byte
}
class ChannelHeader{
Type int32
Version int32
Timestamp *timestamp.Timestamp
TxId string
Epoch uint64
Extension []byte
TlsCertHash []byte
}
class SignatureHeader{
Creator []byte
Nonce []byte
}
class SerializedIdentity{
Mspid string
IdBytes []byte
}
class Certificate{
crypto/x509.Certificate
}

class ConfigEnvelope{
Config *Config
LastUpdate *Envelope
}
class Config{
Sequence uint64
ChannelGroup *ConfigGroup
}
class Envelope{
Payload []byte
Signature []byte
}
class ConfigGroup{
Version uint64
Groups map[string]*ConfigGroup
Values map[string]*ConfigValue
Policies map[string]*ConfigPolicy
ModPolicy string
}
class ConfigValue{
Version uint64
Value []byte
ModPolicy string
}
class ConfigPolicy{
Version uint64
Policy *Policy
ModPolicy string
}
class Policy{
Type int32
Value []byte
}

Payload --* Header
Header --* ChannelHeader
Header --* SignatureHeader
SignatureHeader --* SerializedIdentity
SerializedIdentity --* Certificate

Payload --* ConfigEnvelope
ConfigEnvelope --* Config
ConfigEnvelope --* Envelope

Config --* ConfigGroup
ConfigGroup --* ConfigGroup
ConfigGroup --* ConfigValue
ConfigGroup --* ConfigPolicy

ConfigPolicy --* Policy


声明:本作品采用署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)进行许可,使用时请注明出处。

Author: mengbin92

Github: mengbin92

cnblogs: 恋水无意


Fabric配置块结构解析的更多相关文章

  1. Storm 配置图文解析

    Storm 配置图文解析 參考阅读:http://www.xiaofateng.com/? p=959 ============================== | sample-topology ...

  2. linux网络配置完全解析

    概述:熟悉了windows下面的网络配置,对linux下的网络配置缺未必了解透彻.熟练掌握linux下的网络配置原理,能帮助我们更容易掌握网络传输原理:同时具备一些网络连接不通对应问题的排查能力.文本 ...

  3. Hyperledger Fabric源码解析

    Hyperledger Fabric开源于2015年12月,截至2018年2月初有185个公司/组织成员加入.最初由IBM和DAH的工程师贡献,现在约有70名的代码贡献者,4000+代码提交,代码行数 ...

  4. angular-cli.json配置参数解析,常用命令解析

    1.angular-cli.json配置参数解析 { "project": { "name": "ng-admin", //项目名称 &qu ...

  5. spring boot 开静态资源访问,配置视图解析器

    配置视图解析器spring.mvc.view.prefix=/pages/spring.mvc.view.suffiix= spring boot 开静态资源访问application.proerti ...

  6. apache虚拟主机配置及解析

    Apache虚拟主机配置及解析 1.修改httpd-vhosts.conf 打开apache(Apache24)/conf/extra/httpd-vhosts.conf文件,添加虚拟主机信息,可以这 ...

  7. Babel 配置用法解析

    Babel 配置用法解析 刚复工的时候我司业务太多了,我已不记得我们连续作战了多少天,最近算是有时间可以学习学习我的babel大宝贝了,上周末看了下babel的一些核心模块以及babel的一些配置,今 ...

  8. 申请免费域名并配置DNS解析及CDN加速

    标题: 申请免费域名并配置DNS解析及CDN加速 作者: 梦幻之心星 sky-seeker@qq.com 标签: [#申请,#免费,#域名,#DNS解析,#CDN加速,#子域名] 目录: [网站] 日 ...

  9. Argo workflow 案例练习和配置详细解析

    参数化 - parameters hello-world-parameters.yaml文件解析 apiVersion: argoproj.io/v1alpha1 kind: Workflow met ...

  10. 电机噪声之谐波分析(内附simulink中FFT分析的相关参数配置与解析)

    电机噪声之谐波分析(内附simulink中FFT分析的相关参数配置与解析) 目录 电机噪声之谐波分析(内附simulink中FFT分析的相关参数配置与解析) 写在前面 正文 电机噪声 谐波的产生 什么 ...

随机推荐

  1. 火山引擎DataLeap的Data Catalog系统公有云实践

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 Data Catalog是一种元数据管理的服务,会收集技术元数据,并在其基础上提供更丰富的业务上下文与语义,通常支 ...

  2. 字节跳动基于 Apache Hudi 的多流拼接实践方案

    字节跳动数据湖团队在实时数仓构建宽表的业务场景中,探索实践出的一种基于 Hudi Payload 的合并机制提出的全新解决方案. 字节跳动数据湖团队在实时数仓构建宽表的业务场景中,探索实践出的一种基于 ...

  3. 一文读懂火山引擎A/B测试的实验类型(3)——多链接实验

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 一. 概述 多链接实验,也称为Split url实验,用户根据分流结果访问不同版本的url. 举个例子: 当您有两 ...

  4. 火山引擎云原生数据仓库 ByteHouse 技术白皮书 V1.0 (Ⅵ)

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 近日,<火山引擎云原生数据仓库 ByteHouse 技术白皮书>正式发布.白皮书简述了 ByteHou ...

  5. Pytest -初识

    Pytest Pytest是一个基于Python的测试框架,用于编写和执行测试代码. Pytest的优点 Pytest可以并行运行多个测试,这减少了测试套件的执行时间 Pytest有自己的方法来自动监 ...

  6. CPU推理|使用英特尔 Sapphire Rapids 加速 PyTorch Transformers

    在 最近的一篇文章 中,我们介绍了代号为 Sapphire Rapids 的第四代英特尔至强 CPU 及其新的先进矩阵扩展 (AMX) 指令集.通过使用 Amazon EC2 上的 Sapphire ...

  7. Java 21新特性-虚拟线程 审核中

    本文翻译自国外论坛 medium,原文地址:https://medium.com/@benweidig/looking-at-java-21-virtual-threads-0ddda4ac1be1 ...

  8. freeswitch on debian docker

    概述 freeswitch是一款简单好用的VOIP开源软交换平台. 因为centos系统期限的原因,尝试在debian的docker上使用fs. 环境 docker engine:Version 24 ...

  9. MES系统初探(一)

    什么是MES系统 MES系统是制造执行系统(Manufacturing Execution System)的缩写,是一种用于监控.控制和优化制造过程的软件系统.它主要负责协调生产计划.生产调度.生产执 ...

  10. BFS 广搜

    HDU 2612 #include<stdio.h> #include<string.h> #include<iostream> #include<queue ...