Fabric配置块结构解析

fabric,配置,结构,解析 · 浏览次数 : 25

小编点评

**区块链网络配置块数据结构** **类图:** ```mermaid class ConfigEnvelope { Config *Config; LastUpdate *Envelope; } class Config { Sequence uint64; ChannelGroup *ConfigGroup; } class ChannelGroup { 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 } ``` **数据域解析:** * **Header:**包含链路标识符、版本、签名信息等数据。 * **ChannelHeader:**包含通道类型、版本、时间戳、交易 ID、时间戳、扩展数据、TLS证书hash等信息。 * **SignatureHeader:**包含创建者、nonce等信息。 * **SerializedIdentity:**包含Mspid、ID字节等信息。 * **Certificate:**包含证书信息。 * **ConfigEnvelope:**包含配置信息。 * **Config:**包含配置数据。 * **Envelope:**包含交易数据。 * **ConfigGroup:**包含多个配置组的信息。 * **ConfigValue:**包含单个配置值的信息。 * **ConfigPolicy:**包含多个配置政策的信息。 * **Policy:**包含单个配置项的信息。

正文

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

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

这两种区块中数据结构内容的区别主要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配置块结构解析相似的内容:

Fabric配置块结构解析

本文是区块链浏览器系列的第二篇。 上一篇介绍了交易块中的数据结构,这一篇介绍区块链网络中的配置块数据结构。 这两种区块中数据结构内容的区别主要Payload结构体中的Data域中的内容,接下来将以类图的形式来解析Data域包含的信息: classDiagram class Payload{ Head

跟着文档学Fabric:获取通道配置

原文在这里。 1. 获取通道配置 peer channel fetch config config_block.pb -o $ORDERER_CONTAINER -c $CH_NAME --tls --cafile $TLS_ROOT_CA 上述命令需要在peer容器中执行 这一步得到对应通道的pr

Fabric区块链浏览器(1)

本文是区块链浏览器系列的第三篇,本文介绍区块链浏览器的主体部分,即区块数据的解析。 这一版本的[区块链浏览器](https://github.com/mengbin92/browser/tree/gin)是基于[gin](https://github.com/gin-gonic/gin)实现的,只提

Fabric区块链浏览器(2)

本文是区块链浏览器系列的第四篇。 在[上一篇文章](https://mengbin.top/2023-08-13-blockBrowser/)介绍如何解析区块数据时,使用`session`对客户端上传的pb文件进行区分,到期后自动删除。 在这片文章中,会着重介绍下认证系统的实现,主要分为三部分: -

Fabric区块链浏览器(3)

本文是区块链浏览器系列的第五篇,项目完整代码在[这里](https://github.com/mengbin92/browser/tree/main)。 在[上一篇文章](https://mengbin.top/2023-08-20-browser2/)中给浏览器增加了简单的用户认证,至此浏览器的基

Fabric 2.x 智能合约开发记录

表象:Return schema invalid. required items must be unique [recovered] 虽然 Fabric v2.2 已经发布了很久了,但之前因为项目历史问题,一直使用的都是 Fabric v1.4.8,所以智能合约也一直使用的都是 github.co

【Azure Service Fabric】关于Service Fabric的相关问题

问题一:Service Fabric 是否支持Private Link? 在Azure Private Endpoint文档中,罗列出了 Azure 上支持 Private Link 的服务。Service Fabric不在其中。 Azure Private Link availability :h

Hyperledger Fabric系统链码介绍

在Hyperledger Fabric中,LSCC(Lifecycle System Chaincode)、CSCC(Chaincode System Chaincode)、QSCC(Query System Chaincode)、ESCC(Endorsement System Chaincode)

【Azure Fabric Service】Service Fabric 托管群集通过 Connect-ServiceFabricCluster 连接时候报错 CertificatedNotMatched

问题描述 Service Fabric 托管群集, 使用Key Vault中证书,把证书导入到本地安装后,使用该证书的 Thumbprint 作为指令 Connect-ServiceFabricCluster 的 ServerCertThumbprint 和FindValue 的值。结果连接失败,错

[转帖]至强SP简析、FPGA及Fabric版本揭秘

https://zhuanlan.zhihu.com/p/387076957 作者注:在英特尔推出至强可扩展处理器(Skylake)及平台当天到一周之内,我先后发表了图说和架构解析的文章,又在2017年8月9日以此文对新至强产品线构成进行比较详细的介绍。 某冰冰曾经说过:我能承受多大的诋毁,就能承受