欢迎访问学兔兔,学习、交流 分享 !

返回首页 |

区块链技术丛书 Hyperledger Fabric源代码分析与深入解读 蔡亮 梁秀波 宣章炯 著 2018年版

收藏
  • 大小:31.16 MB
  • 语言:中文版
  • 格式: PDF文档
  • 阅读软件: Adobe Reader
资源简介
区块链技术丛书 Hyperledger Fabric源代码分析与深入解读
作 者: 蔡亮 梁秀波 宣章炯 著
出版时间:2018
丛编项: 区块链技术丛书
内容简介
  本书是一本介绍HyperledgerFabric架构、源代码及其底层实现的专业书籍。从编程语言、源码分析、网络节点、加密算法、智能合约、架构设计等多个角度深入解读Fabric项目,并通过项目实例的分析介绍,使得读者能够将理论结合实践,增强实际动手能力,更好地理解Fabric的实现原理。通过阅读本书,能够帮助读者零基础快速入门Fabric,是一本实际操作性极强的HyperledgerFabric专业书籍。
目录
序一
序二
前言
第1章 准备工作1
1.1 Go语言环境配置1
1.1.1 Go语言简介1
1.1.2 Go安装2
1.1.3 Go标准包安装4
1.1.4 第三方工具安装6
1.1.5 Go环境配置7
1.1.6 代码目录结构规划8
1.1.7 编译应用9
1.1.8 获取远程包10
1.1.9 程序的整体结构11
1.2 安装Docker11
1.2.1 macOS11
1.2.2 Ubuntu12
1.2.3 Docker的简易使用13
1.3 Hyperledger社区介绍14
第2章 架构分析18
2.1 Fabric整体架构18
2.1.1 概述18
2.1.2 系统架构19
2.1.3 交易背书的基本工作流程24
2.1.4 背书策略27
2.1.5 证实账本和节点账本检查28
2.2 Fabric交易流程30
2.3 Fabric整体项目结构介绍33
2.3.1 Fabric项目结构33
2.3.2 Fabric源码中相关缩写的含义34
第3章 源码分析37
3.1 Logging日志模块浅析37
3.1.1 go-logging简介37
3.1.2 flogging38
3.1.3 init函数、MustGetLogger函数与其他函数38
3.2 Error错误机制设计39
3.2.1 总体概览39
3.2.2 使用说明40
3.2.3 显示错误消息40
3.2.4 错误处理的一般准则41
3.3 Config配置模块的设计41
3.3.1 viper简介41
3.3.2 安全文件配置44
3.3.3 命令选项配置44
3.3.4 环境变量配置44
3.4 grpc服务45
3.4.1 grpc用法的Demo45
3.4.2 Fabric中的grpc服务接口和实例46
第4章 peer的设计与实现53
4.1 CommandLine解析53
4.1.1 peer目录结构53
4.1.2 第三方包54
4.1.3 peer命令结构解析55
4.1.4 以node为例进行子命令结构解析55
4.1.5 peer命令结构55
4.2 Admin及Endorser服务的实现56
4.2.1 Admin56
4.2.2 Endorser58
4.2.3 频道中的策略检查器64
4.3 Committer的机制66
4.3.1 committer.go 分析66
4.3.2 committer_impl.go 分析67
4.3.3 validator.go 分析70
4.3.4 vscc_validator.go分析71
第5章 order的设计与实现73
5.1 orderer内部机制窥探73
5.1.1 kingpin73
5.1.2 模块74
5.1.3 配置74
5.1.4 模块的初始化75
5.2 kafka排序服务机制讲解79
5.3 orderer在Fabric中的交互流程82
5.3.1 建立连接82
5.3.2 Broadcast83
5.3.3 orderer83
5.3.4 Deliver86
第6章 chaincode的设计与实现89
6.1 chaincode生命周期管理89
6.1.1 打包89
6.1.2 安装chaincode91
6.1.3 实例化chaincode91
6.1.4 升级chaincode92
6.1.5 停止与启动93
6.1.6 CLI93
6.2 chaincode原理浅析94
6.2.1 什么是chaincode94
6.2.2 Chaincode Support服务95
6.2.3 FSM95
6.2.4 Register96
6.2.5 Handler97
6.2.6 processStream97
6.2.7 HandleMessage97
6.2.8 serialSend或serialSendAsync99
6.2.9 系统chaincode99
6.3 chaincode数据结构分析100
6.3.1 chaincode元数据100
6.3.2 chaincode的元工具102
6.4 SystemChaincode讲解103
6.4.1 SystemChaincode104
6.4.2 预定义和注册104
6.5 CSCC分析106
6.5.1 结构体106
6.5.2 函数106
6.6 ESCC分析108
6.6.1 结构体108
6.6.2 Init函数108
6.7 LSCC分析109
6.7.1 结构体和接口110
6.7.2 函数操作110
6.7.3 安装、部署和升级111
6.7.4 chaincode stub 接口实现112
6.8 QSCC分析113
6.8.1 结构体113
6.8.2 函数操作114
6.8.3 路由规则114
6.9 VSCC分析115
6.9.1 结构体115
6.9.2 函数115
6.10 SystemChaincode的注册和实例化116
6.10.1 概述116
6.10.2 安装117
6.10.3 部署117
6.10.4 Launch118
6.10.5 Execute123
6.10.6 部署后状态124
6.11 ApplicationChaincode的部署124
6.11.1 概述125
6.11.2 生成签名申请包125
6.11.3 处理安装申请125
6.11.4 执行申请126
6.11.5 Launch127
6.11.6 Execute127
6.11.7 一路返回128
6.11.8 安装后的状态129
6.12 ApplicationChaincode的实例化129
6.12.1 概述129
6.12.2 起点130
6.12.3 部署130
6.12.4 广播139
6.12.5 部署后的状态139
6.13 chaincode操作步骤140
6.13.1 选择一个代码存放位置140
6.13.2 内务处理140
6.13.3 初始化chaincode140
6.13.4 调用chaincode142
6.13.5 实现chaincode应用143
6.13.6 整合全部代码143
6.13.7 编译chaincode145
6.13.8 在开发者模式下测试145
6.13.9 安装Hyperledger Fabric样例145
6.13.10 下载Docker镜像146
6.13.11 1号终端146
6.13.12 2号终端146
6.13.13 3号终端147
6.13.14 测试新的chaincode147
第7章 MSP成员服务提供者148
7.1 MSP的设计思路148
7.1.1 MSP配置149
7.1.2 如何生成MSP证书和它们的签名匙150
7.1.3 MSP setup on the peer & orderer side150
7.1.4 Channel MSP setup150
7.1.5 最佳实践151
7.2 MSP实现剖析153
7.2.1 目录结构153
7.2.2 MSP配置154
第8章 Gossip节点间的流言蜚语162
8.1 Gossip协议原理解析162
8.1.1 Gossip协议(Gossip protocol)162
8.1.2 Gossip消息传输(Gossip messaging)163
8.2 Gossip之服务组件163
8.2.1 pr
下载地址