《Hyperledger Fabric菜鸟进阶攻略》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:黎跃春,韩小东,付金亮编著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2019
  • ISBN:9787111623229
  • 页数:236 页
图书介绍:第1章,让读者对Fabric有初步的认识,并可以进行简单的环境搭建。第2章,深入浅出地介绍Hyperledger Fabric架构设计,让读者从架构视角对Fabric有整体性了解。第3章,化繁为简地传授自行搭建Hyperledger Fabric网络的方法与实践步骤。第4章,全方位认识链码作用及链码的管理与测试。第5章,讲解区块链开发的重点——链码的开发与实践。第6章,深入讲解MSP成员管理与Fabric CA服务实现。第7章,以白话的风格剖析Fabric共识机制。第8章,分析Fabric中数据分发机制的实现方式。第9章,分析Fabric的数据存储机制。第10章,介绍开发Web应用的环境搭建、配置等。第11~13章,讲解如何基于Fabric-SDK-Go和MVC模式开发学历信息征信系统。

基础篇 3

第1章 Hyperledger Fabric认知与环境搭建 3

1.1 全面认识超级账本 3

1.1.1 超级账本由来 3

1.1.2 超级账本分类 4

1.1.3 认识Hyperledger Fabric 4

1.2 迈出第一步:搭建环境 5

1.2.1 操作系统 5

1.2.2 安装所需工具 5

1.3 安装Hyperledger Fabric 10

1.3.1 下载fabric-samples与二进制文件 10

1.3.2 Hyperledger Fabric源码方式编译 12

1.4 测试Hyperledger Fabric网络环境 17

1.4.1 测试Hyperledger Fabric环境 18

1.4.2 构建你的第一个Hyperledger Fabric网络 18

第2章 深入浅出介绍Hyperledger Fabric架构设计 21

2.1 透视逻辑架构与运行时架构 21

2.1.1 逻辑架构 21

2.1.2 运行时架构 22

2.2 Hyperledger Fabric交易流程分析 24

2.3 Hyperledger Fabric核心配置文件详解 28

2.3.1 core.yaml详解 29

2.3.2 orderer.yaml详解 36

第3章 搭建自己的Hyperledger Fabric网络 39

3.1 生成组织结构与身份证书 39

3.1.1 与组织结构及身份证书关联的配置文件 39

3.1.2 如何生成组织结构及身份证书 40

3.2 不可或缺的配置文件 45

3.2.1 configtx.yaml配置文件指定的核心内容 45

3.2.2 Orderer服务启动初始区块的创建 47

3.2.3 创建必需的应用通道交易配置文件 48

3.2.4 生成锚节点更新配置文件 49

3.3 一分钟启动分布式网络 49

3.3.1 网络服务的配置 50

3.3.2 关联的docker-compose-base.yaml 52

3.3.3 又被关联的peer-base.yaml 54

3.3.4 启动网络 55

3.4 以最快的方式完成应用通道的创建 57

3.4.1 创建应用通道 57

3.4.2 将节点加入应用通道 58

3.4.3 更新锚节点 59

链码篇 63

第4章 全方位认识链码:链码管理与测试 63

4.1 初识链码:链码的概念与原理 63

4.2 链码使用:安装、实例化、查询与调用 65

4.2.1 安装链码 66

4.2.2 实例化链码 66

4.2.3 查询链码 67

4.2.4 调用链码 67

4.3 链码的其他操作:实现链码的打包与升级 69

4.3.1 链码的打包与签名 69

4.3.2 链码的升级 70

4.4 开发模式下的测试:简化链码的测试过程 72

4.4.1 启动网络 72

4.4.2 构建并启动链码 73

4.4.3 调用链码 74

第5章 链码开发与实践 77

5.1 如何利用Fabric提供的接口编写链码 77

5.1.1 链码接口 78

5.1.2 必要结构 78

5.2 如何操作账本数据:熟悉链码相关API 79

5.3 链码实现的Hello World 81

5.3.1 链码开发 82

5.3.2 链码测试 84

5.4 动手编码一:链码实现资产管理 85

5.4.1 资产链码开发 85

5.4.2 链码测试 88

5.5 动手编码二:链码实现转账 89

5.5.1 转账链码开发 89

5.5.2 链码测试 97

核心篇 101

第6章 MSP成员管理与Hyperledger Fabric CA服务实现 101

6.1 走进MSP 101

6.1.1 MSP的定义与作用 101

6.1.2 MSP的组成结构 102

6.1.3 MSP应用 103

6.2 认识与安装Hyperledger Fabric CA 105

6.3 启动Hyperledger Fabric CA 107

6.3.1 初始化 107

6.3.2 快速启动 108

6.3.3 配置数据库 109

6.3.4 配置LDAP 110

6.4 应用Hyperledger Fabric CA的客户端命令 111

6.4.1 Hyperledger Fabric CA客户端命令 112

6.4.2 查看AKI和序列号 116

第7章 白话Hyperledger Fabric共识机制 118

7.1 Hyperledger Fabric中的共识实现 118

7.1.1 共识算法的属性和类型 118

7.1.2 Hyperledger Fabric中的共识实现 120

7.2 基于Kafka排序服务的实现 121

7.2.1 指定Kafka实现排序服务 122

7.2.2 配置网络环境 123

7.2.3 启动网络 129

7.2.4 测试Kafka排序服务 131

7.3 多链及多通道实现 133

7.3.1 多链及多通道 133

7.3.2 应用多通道 135

第8章 Hyperledger Fabric中数据分发机制的实现 139

8.1 认识Gossip 139

8.1.1 Gossip协议 139

8.1.2 Gossip数据传输 140

8.2 Hyperledger Fabric中数据同步的实现 141

8.2.1 Hyperledger Fabric中的Gossip 141

8.2.2 Hyperledger Fabric的数据同步实现 144

第9章 Hyperledger Fabric分布式账本数据存储 147

9.1 交易数据的存储 147

9.1.1 区块链账本数据 147

9.1.2 数据存储 150

9.2 Hyperledger Fabric状态数据库 154

9.2.1 CouchDB数据库简介 154

9.2.2 CouchDB在Hyperledger Fabric中的具体实现 154

9.2.3 测试CouchDB 159

项目实战篇 165

第10章 Web项目实战之环境搭建 165

10.1 环境准备清单 165

10.2 搭建网络环境 166

10.2.1 网络环境准备 166

10.2.2 配置docker-compose.yml文件 167

10.2.3 测试网络环境 171

第11章 Web项目实战之使用Fabric-SDK-Go 173

11.1 创建Fabric-SDK对象并建立通道 173

11.1.1 配置Fabric-SDK 173

11.1.2 定义所需结构体 177

11.1.3 创建Fabric-SDK 178

11.1.4 测试创建通道 179

11.2 满足依赖 180

11.2.1 安装dep工具 180

11.2.2 下载所需依赖 181

11.2.3 测试Fabric-SDK 181

11.2.4 关闭网络并清理环境 182

11.2.5 利用Makefiile简化步骤 182

11.3 链码实现 184

11.4 使用Fabric-SDK实现链码的自动部署 186

11.4.1 添加结构体成员 186

11.4.2 使用Fabric-SDK安装及实例化链码 187

11.4.3 在main中调用 188

11.4.4 测试 188

第12章 Web项目实战之Web应用实现 190

12.1 理解MVC,合理地设计应用 190

12.2 调用链码:设计业务层 192

12.2.1 事件处理 192

12.2.2 调用链码添加状态 193

12.2.3 调用链码查询状态 194

12.3 MVC架构应用实现 196

第13章 实战:构建学历信息征信系统 201

13.1 需求分析与架构设计 201

13.1.1 需求分析 201

13.1.2 架构设计 202

13.1.3 数据模型设计 202

13.1.4 网络环境 203

13.1.5 测试网络环境 205

13.2 SDK与链码的实现 205

13.2.1 创建config.yaml文件 205

13.2.2 声明结构体 205

13.2.3 编写链码 206

13.2.4 Fabric-SDK-Go实现 211

13.2.5 安装依赖 214

13.2.6 链码自动部署 216

13.3 业务层实现 218

13.3.1 事件处理 218

13.3.2 业务层调用链码实现添加状态 219

13.3.3 根据证书编号与姓名查询状态 221

13.3.4 根据身份证号码查询状态 223

13.3.5 修改/添加信息状态 224

13.4 控制层实现 226

13.4.1 设置系统用户 226

13.4.2 处理响应 228

13.4.3 处理请求 228

13.4.4 指定路由 228

13.5 视图层实现 228

13.5.1 目录结构 228

13.5.2 相关源码实现 229

13.5.3 照片上传 230

13.6 项目交互演示 231

13.6.1 启动Web服务 231

13.6.2 访问页面 232

附录 词汇术语表 235