注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络网络与数据通信网络服务Hyperledger Fabric核心技术

Hyperledger Fabric核心技术

Hyperledger Fabric核心技术

定 价:¥89.00

作 者: 陈树宝
出版社: 电子工业出版社
丛编项:
标 签: 暂缺

购买这本书可以去


ISBN: 9787121366871 出版时间: 2019-06-01 包装: 平装
开本: 16开 页数: 348 字数:  

内容简介

  《Hyperledger Fabric核心技术》通过精选十分重要和极其巧妙的代码片段,剖析了超级账本Hyperledger Fabric的技术细节、底层原理和整体架构。本书涵盖开发环境的部署、源码如何编译、**个示例网络的运行,以及orderer、peer、Chaincode、MSP、Ledger、Consensus和Gossip几个重要的组成部分。 读者阅读本书,可以更加清晰地理解超级账本的核心技术和设计思想,了解分布式账本一致性的具体实现;同时,可以识别在区块链应用过程中遇到的问题,实现区块链功能和性能的*大化。

作者简介

  陈树宝 中链科技区块链负责人,专注于区块链、大数据、物联网以及人工智能的研究。参与多个区块链项目的核心系统设计,有多年的研发经验,喜欢学习和分享知识,致力于区块链技术的推广。早期深入研究过Linux和Windows操作系统,著有《Windows内核设计思想》一书。郑少华 中国农业银行(广州)区块链负责人,主要从事区块链在银行金融业务中的开发和应用,探索区块链技术在数字资产的落地场景。对各种密码学、加密算法、点对点协议、分布式存储和高性能网络有深入研究。佟艳娟 西南大学硕士,从事人工智能和区块链的研究,包括分布式系统的性能优化、一致性、容错性和高效的点对点网络。对基于椭圆曲线的非对称加密算法的数学原理有较深的理解,并将其应用到特定的区块链场景下,积极参与Hyperledger Fabric的代码贡献。

图书目录

第1章  搭建Hyperledger Fabric开发环境

第1章  搭建Hyperledger Fabric开发环境 1

1.1  下载Go语言安装包 1

1.2  Windows MSI安装 2

1.3  Linux、mac OS和FreeBSD 安装 4

1.4  Linux下安装Docker和docker-compose 5

1.5  Windows下安装Git 7

1.6  Windows下安装tdm-gcc 9

1.7  Windows下安装 Visual Studio Code 10

第2章  编译Hyperledger Fabric源码 14

2.1  Fabric源码下载 14

2.2  Fabric Makefile 15

2.3  构建peer 17

2.4  构建peer-docker 19

2.5  构建orderer 22

2.6  构建orderer-docker 22

2.7  构建tools-docker 23

2.8  查看构建的镜像 24

第3章  第一个网络 26

3.1  克隆fabric-samples 26

3.2  运行第一个网络 27

3.2.1  生成证书 28

3.2.2  启动网络 29

3.2.3  关闭网络 32

3.3  基本步骤 33

3.3.1  生成证书 33

3.3.2  生成配置交易 35

3.3.3  启动网络 38

3.3.4  CLI容器命令 39

3.4  数据持久性 44

3.5  出错处理 45

第4章  Chaincode 46

4.1  Chaincode接口 47

4.2  Chaincode实现 58

4.3  Chaincode安装 62

4.4  Chaincode实例化 62

4.5  Chaincode交易 62

4.6  Chaincode查询 62

第5章  区块链加密算法 63

5.1  RSA加密算法 63

5.1.1  相关的数论知识 63

5.1.2  RSA原理 64

5.1.3  加密过程 65

5.1.4  解密过程 65

5.1.5  RSA正确性证明 65

5.1.6  具体实例 66

5.1.7  数字签名 67

5.2  椭圆曲线加密算法 67

5.2.1  椭圆曲线 68

5.2.2  群 68

5.2.3  椭圆曲线上的群公理 69

5.2.4  椭圆曲线上的加法 69

5.2.5  有限域上的椭圆曲线 70

5.2.6  具体实例 71

5.2.7  ECC加密原理 72

5.2.8  ECC签名原理 72

第6章  MSP 74

6.1  整体架构 75

6.2  MSP概述 77

6.3  BCCSP 80

6.4  Setup(证书关联) 87

6.4.1  setupCAs(建立根证书和中间证书列表) 88

6.4.2  setupAdmins(建立管理员证书列表) 94

6.4.3  setupCRLs(建立撤销证书) 95

6.4.4  finalizeSetupCAs(建立证书树内部节点映射列表) 95

6.4.5  newSigningIdentity(建立签名身份列表) 96

6.4.6  Sign(签名) 99

6.4.7  Verify(验证) 99

6.4.8  Serialize(序列化) 100

6.4.9  DeserializeIdentity(反序列化) 101

6.4.10  Validate(校验身份) 102

6.4.11  SatisfiesPrincipal(检查规则) 106

6.4.12  setupTLSCAs(建立TLS根证书和中间证书列表) 110

6.4.13  setupOUs(建立组织单元列表) 111

6.5  签名策略 112

6.5.1  签名策略定义 112

6.5.2  签名策略封装 114

6.5.3  策略编译 115

第7章  账本管理 121

7.1  账本关系 121

7.2  账本管理概述 126

7.2.1  Initialize初始化账本提供者 126

7.2.2  CreateLedger创建账本 137

7.2.3  OpenLedger打开账本 140

7.2.4  GetLedgerIDs获取账本ID 141

7.2.5  Close关闭账本 141

7.3  账本ID存储idStore 142

7.4  账本存储提供者ledgerStoreProvider 144

7.4.1  区块数据存储提供者blkStoreProvider 146

7.4.2  私有数据储存提供者pvtStoreProvider 155

7.5  记账提供者bookkeepingProvider 161

7.6  版本数据库提供者vdbProvider 162

7.7  历史数据库提供者historydbProvider 165

7.8  建立账本newKVLedger 168

7.8.1  初始化交易管理器 170

7.8.2  实例化私有数据清除管理器 173

7.8.3  新建有效期记账管理器 176

7.8.4  创建验证管理器 179

第8章  orderer 182

8.1  入口函数 183

8.2  总体描述 185

8.3  账本工厂 186

8.4  共识接口 190

8.4.1  solo模式 196

8.4.2  kafka模式 198

第9章  Gossip 210

9.1  Gossip协议 211

9.2  映射器idMapper 215

9.3  发现层disc 218

9.4  通信层Comm 228

9.5  分批发射器emitter 232

9.6  安全顾问secAdvisor 233

9.7  消息加密服务mcs 234

9.8  调停器Mediator 236

9.9  拉取引擎PullEngine 242

9.10  状态模块state 245

9.10.1  go s.listen() 246

9.10.2  go s.deliverPayloads() 246

9.10.3  go s.antiEntropy() 251

9.10.4  go s.processStateRequests() 251

第10章  gRPC 254

10.1  发现Discovery 255

10.1.1  注册服务端实例 255

10.1.2  新建客户端实例 256

10.2  流言蜚语Gossip 258

10.2.1  注册服务端实例 258

10.2.2  新建客户端实例 260

10.3  原子广播AtomicBroadcast 261

10.3.1  注册服务端实例 262

10.3.2  新建客户端实例 269

10.4  管理Admin 269

10.4.1  注册服务端实例 270

10.4.2  新建客户端实例 271

10.5  链码支持ChaincodeSupport 272

10.5.1  注册服务端实例 272

10.5.2  新建客户端实例 279

10.6  投递Deliver 284

10.6.1  注册服务端实例 284

10.6.2  新建客户端实例 285

10.7  背书Endorser 285

10.7.1  注册服务端实例 286

10.7.2  新建客户端实例 288

第11章  peer 294

11.1  peer command 294

11.2  main 295

11.3  node start 299

11.4  新建访问控制列表提供者 301

11.5  新建操作系统 307

11.6  账本管理器初始化 308

11.7  链码开发模式 309

11.8  新建投递事件服务 310

11.9  启动链码服务 310

11.10  启动管理服务 312

11.11  新建背书服务 312

11.12  初始化Gossip服务 313

11.13  peer初始化 314

11.14  注册发现服务 315

11.15  启动peer服务 319

11.16  启动性能分析服务 319

11.17  node end 320


本目录推荐