【超级账本】Fabric 层次结构以及核心模块的介绍(二)

目录

  • 1. 结构介绍
  • 2. 核心代码
  • 3. 核心模块
    • 3.1 peer 系统模块
    • 3.2 order 系统模块
    • 3.3 cryptogen 工具模块
    • 3.4 configtxgen 工具模块
    • 3.5 configtxlator 工具模块
  • 最后

【超级账本】Fabric 层次结构以及核心模块的介绍(二)_第1张图片

1. 结构介绍

包名称 作用
bccsp 加密标准以及算法的实现,包括加密、签名、验签服务
bddtests bdd测试框架相关的测试
common 通用功能以及一些通用的代码实现,包括日志、错误、工具包等,主要包括项目全局的功能性代码。
core 核心代码模块,其中包括权限控制、chaincode模块、committer、endorser、ledger、policy等核心功能的代码实现
discovery 为客户端程序提供服务发现的功能
docs 文档
events 为客户端提供事件订阅的功能
examples 案例
gossip 信息传播的模块,为Fabric在节点间达成最终一致性
Idemix 零知识证明,无需提供私有数据即可证明,包括用户(User)、发行者(Issuer)、验证者(Verifier)
integration 代码集成
gotools 用于编译Fabric
msp 提供成员服务
orderer 排序节点模块
peer peer节点
proposals 存放相关提案
protos 存放Protocol buffer消息
release_notes 各个版本的更新日志
sampleconfig 相关样例配置文件
scripts 存放相关脚本文件
unit-test 单元测试(testenv)
swagger 接口文档
tools 工具
vagrant 创建虚拟机,自动化配置和安装开发环境

2. 核心代码

包名称 作用
bccsp 实现对加解密算法和机制的支持
common 一些通用的模块
core 核心代码都在本包下
events 为客户端提供事件订阅的功能
examples 示例
gossip 信息传播的模块
msp 提供成员服务
order order服务相关的入口和框架代码
peer peer的入口和框架代码
protos 包括各种协议和消息的protobuf定义文件和生成的go文件

3. 核心模块

  • 系统模块:会以守护进程的方式在后台运行,不会中断
  • 工具模块:负责证书文件、区块链创世块、通道创世块等文件的生成,不参与系统的运行

3.1 peer 系统模块

peer节点,负责存储区块链数据,维护链码

3.2 order 系统模块

排序,交易打包,提交给peer节点

3.3 cryptogen 工具模块

组织和证书生成模块

3.4 configtxgen 工具模块

区块和交易生成模块

3.5 configtxlator 工具模块

区块和交易解析模块

最后

小生凡一,期待你的关注。

你可能感兴趣的:(【区块链】实战100例,区块链,linux,fabric,超级账本)