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

在这里插入图片描述

1. 结构介绍

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

2. 核心代码

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

3. 核心模块

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

3.1 peer 系统模块

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

3.2 order 系统模块

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

3.3 cryptogen 工具模块

组织和证书生成模块

3.4 configtxgen 工具模块

区块和交易生成模块

3.5 configtxlator 工具模块

区块和交易解析模块

最后

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


版权声明:本文为weixin_45304503原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。