深度探索区块链:Hyperledger技术与应用

深度探索区块链:Hyperledger技术与应用 pdf epub mobi txt 电子书 下载 2025

张增骏,董宁,朱轩彤,陈剑雄 著
图书标签:
  • 区块链
  • Hyperledger
  • Fabric
  • 智能合约
  • 分布式账本
  • 企业级区块链
  • 区块链技术
  • 开发
  • 应用
  • 数字货币
想要找书就要到 图书大百科
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
出版社: 机械工业出版社
ISBN:9787111589327
版次:1
商品编码:12279369
包装:平装
开本:16
出版时间:2018-02-01
用纸:胶版纸

具体描述

产品特色

编辑推荐

  

超级账本执行董事Brian Behlendorf领衔推荐,资深一线区块链专家联合撰写,是深度了解区块链和Hyperledger技术的扛鼎之作

深度剖析区块链框架Hyperledger Fabric 1.0的架构、核心技术、部署与应用开发


  

内容简介

  

本书由超级账本执行董事Brian Behlendorf领衔推荐,区块链一线落地实践团队、Hyperleger会员智链骨干团对撰写。深入讲解Hyperledger Fabric 1.0的架构、执行逻辑、核心功能实现、从零部署,并以票据案例为例,讲解具体开发实践,穿插开发所需的*佳实践和遇到的问题解决。

本书分三篇,共12章内容。

准备篇(第1~2章),高度浓缩、信息量大的第1章,揭示区块链的价值、核心理念、演进、主流平台、商用场景。第2章进入实践环节,涵盖安装、部署与调试,让读者初步直观感受区块链,培养学习和实践的兴趣。

核心篇(第3~9章),先从Fabric1.0架构开始讲解,方便读者了解整体结构与运作逻辑,带着问题与轮廓去阅读,事半功倍。第4~9章讲解内部实现机制,该篇并不点到为止,而是深入到底层实现原理层面,让读者透彻了解Fabric的设计与实现细节,该篇是理解区块链设计与实现的关键所在,也是日后做好应用开发的基础,有了问题可以自己动手解决。

涵盖以下几个方面:

区块链架构、组件关系与运行机制总览;

Gossip协议与P2P数据分发机制;

分布式账本数据相关的存储技术;

共识机制及其可插拔的架构设计;

如何实现数据隔离的多链与多通道;

基于数字证书的成员管理服务实现与使用;

智能合约实现、交互,以及有限状态机。

应用篇(10~12章),从安装部署、开发模型和应用开发的角度,以一个票据背书的案例讲解如何基于Hyperledger Fabric 1.0开发区块链应用,以完整地掌握区块链应用开发,动手实践具体的项目。


  

作者简介

张增骏 智链ChainNova技术总监和架构师。十余年软件开发和项目管理经验,设计并实现了多个区块链项目,带领团队获得“2017可信区块链峰会”唯*非金融类*佳案例奖。中国信通院可信区块链专家委员会成员,参与讨论并推动可信区块链测试标准的制定,多次受邀到高校与企业分享与推动区块链落地工作。曾任绿盟科技PDT经理,带领团队研发的远程安全评估系统(RSAS)连续多年国内排名*一,广泛应用于多个重点领域。目前关注区块链、网络安全、大数据、云计算和人工智能等领域。


董宁 智链 ChainNova科技公司CEO,北京大学(天津滨海)新一代信息技术研究院金融科技研究中心主任。曾任IBM大中华区IT经济学负责人,参与过数家商业银行和金融机构核心系统的设计建设,具有多年金融行业的商业洞察。毕业于北京大学信息科学技术学院智能科学系。


朱轩彤 清华大学硕士,中国社会科学院数量经济与技术经济研究所博士生,专注于技术经济研究。在政府及国际组织有丰富的工作经验。


陈剑雄 智链ChainNova首席科学家,原金山云技术VP,中科院计算与通信工程学院硕士。多年大规模集群系统研发经验,参与多个区块链核心系统设计和应用。


精彩书评

  

本书集合了多方共同的心血,由Linux基金会会员、智链ChainNova的一线技术团队主笔撰写,他们不但是超级账本中国社区的主要贡献者,还长期奋战在市场前线,对商业应用环境有相当的了解,相信从书中内容的翔实程度可见一斑。

——Brian Behlendorf,超级账本执行董事


  

这是我迄今为止所见关于超级账本技术和应用非常有参考意义的技术书籍,值得向广大区块链的研究者与开发同行们推荐。

——陈钟,北京大学信息科学技术学院教授、北京大学金融信息化研究中心主任


  

本书的目的不是蜻蜓点水地介绍一些Hyperledger入门知识,而是通过阅读本书能让读者达到一定的水平,甚至可以加入区块链产业应用中来,为区块链的发展和实践落地添砖加瓦。

——何宝宏,中国信息通信研究院云计算与大数据研究所所长


  

本书作者均来自超级账本会员企业骨干团队,拥有多年一线实践经验,这让本书不仅内容翔实,更具备很强的可操作性。作为中国技术工作组的核心成员,智链的成员为超级账本项目的国际化和技术推广都做出了重要贡献。无论是想了解先进的企业级区块链技术,还是进行应用实践参考,本书都值得一读。

——杨保华,超级账本全球技术委员会委员,中国技术工作组主席


  

董宁牵头编写这本《深度探索区块链:Hyperledger技术与应用》系统阐述了超级账本的技术原理、架构、核心组件及应用开发实例,是学习超级账本底层技术和应用实例的优秀工具书,值得推荐。

——马小峰,苏州同济金融科技研究院院长、中国电子学会区块链专委会副主任委员


  

可以预见,不久的将来区块将成为数字社会的基础设施。作为富含IBM基因的超级账本资深参与者,作者对超级账本有着深刻的理解。本书从区块链的概述到超级账本的技术解读与操作,处处见功夫,是非常有价值的读本。

——孙贻滋,中国电子学会区块链专委会副主任委员兼秘书长


  

目录

序一

序二

序三

前言

第一篇 准备篇

第1章 区块链概述 2

1.1 区块链的前世今生 2

1.1.1 区块链的历史起源——比特币 2

1.1.2 欢迎来到区块链的世界 3

1.1.3 区块链演进趋势 4

1.2 区块链概念 5

1.2.1 区块链本质 6

1.2.2 区块链工作原理 6

1.2.3 区块链技术特点 7

1.2.4 区块链层次模型 8

1.2.5 区块链共识算法 8

1.2.6 区块链并不一定去中心化 9

1.3 区块链技术平台 10

1.3.1 比特币 10

1.3.2 以太坊 11

1.3.3 瑞波 13

1.3.4 区块链商用平台:超级账本 13

1.3.5 区块链技术平台比较 15

1.4 区块链的商用之道 15

1.4.1 区块链的2.0时代:商用区块链 15

1.4.2 超级账本:商用区块链的“第五元素” 17

1.4.3 区块链的商业应用场景 17

1.5 本章小结 18

第2章 超级账本初体验 19

2.1 基础环境安装 19

2.1.1 Docker的安装和使用 19

2.1.2 Docker Compose的安装和使用 21

2.1.3 下载超级账本源代码 24

2.2 超级账本部署调用 24

2.2.1 下载Docker镜像文件 24

2.2.2 部署超级账本网络 25

2.2.3 链码调用和查询 26

2.2.4 常见错误 27

2.3 节点的配置参数传递规则 29

2.4 本章小结 31

第二篇 核心篇

第3章 超级账本的系统架构 34

3.1 系统逻辑架构 35

3.2 网络节点架构 37

3.3 典型交易流程 39

3.3.1 创建交易提案并发送给背书节点 39

3.3.2 背书节点模拟交易并生成背书签名 41

3.3.3 收集交易的背书 42

3.3.4 构造交易请求并发送给排序服务节点 43

3.3.5 排序服务节点以对交易进行排序并生成区块 45

3.3.6 排序服务节点以广播给组织的主节点 45

3.3.7 记账节点验证区块内容并写入区块 45

3.3.8 在组织内部同步最新的区块 49

3.4 消息协议结构 49

3.4.1 信封消息结构 49

3.4.2 配置管理结构 51

3.4.3 背书流程结构 52

3.5 策略管理和访问控制 56

3.5.1 策略定义及其类型 56

3.5.2 交易背书策略 57

3.5.3 链码实例化策略 60

3.5.4 通道管理策略 61

3.6 本章小结 63

第4章 基于Gossip的P2P数据分发 64

4.1 概述 64

4.2 超级账本中的Gossip协议 65

4.3 成员认证及身份管理 67

4.4 节点启动及成员管理 67

4.5 主节点选举过程 68

4.6 基于反熵的状态同步 69

4.7 数据传播过程 70

4.8 多通道的支持 70

4.9 消息的验证策略 71

4.10 消息的多路分用及分区 73

4.11 和Gossip相关的配置参数 76

4.12 本章小结 77

第5章 分布式账本存储 78

5.1 概述 78

5.2 读写集 79

5.2.1 交易模拟和读写集 79

5.2.2 交易验证和世界状态更新 80

5.2.3 模拟和验证示例 80

5.3 账本编号 81

5.4 账本数据 81

5.4.1 账本数据存储 82

5.4.2 账本数据读取 83

5.4.3 交易模拟执行 84

5.5 区块索引 84

5.5.1 文件位置指针 85

5.5.2 索引的同步过程 86

5.6 状态数据 87

5.6.1 LevelDB 88

5.6.2 CouchDB 89

5.6.3 基于状态数据的区块验证 91

5.7 历史数据 92

5.8 数据恢复 92

5.9 本章小结 93

第6章 集成共识机制的排序服务 94

6.1 概述 94

6.1.1 共识算法的类型 95

6.1.2 Hyperledger Fabric 1.0的共识机制 96

6.2 实现数据隔离的多通道 97

6.2.1 排序服务的初始化 99

6.2.2 通道的创建 101

6.2.3 通道的更新 105

6.2.4 通道的加入 107

6.2.5 通道的查询 107

6.3 可插拔的排序服务 108

6.3.1 排序服务接口 108

6.3.2 基于单进程的排序服务 110

6.3.3 基于Kafka的排序服务 110

6.3.4 链消息过滤器 122

6.4 本章小结 124

第7章 实现数据隔离的多链及多通道 125

7.1 数据存储对多链的支持 126

7.1.1 账本数据 126

7.1.2 索引数据 126

7.1.3 状态数据 127

7.1.4 历史数据 127

7.2 链码对多链的支持 128

7.2.1 链码的生命周期管理 128

7.2.2 链码和背书节点的通信 129

7.2.3 链码的部署和调用 130

7.3 多通道对多链的支持 131

7.4 命令行和SDK对多链的支持 132

7.5 关于系统链 132

7.6 本章小结 132

第8章 基于数字证书的成员管理服务 133

8.1 实现成员管理的MSP 133

8.1.1 MSP成员的验证 133

8.1.2 MSP的目录结构 134

8.1.3 MSP的配置最佳实践 140

8.2 颁发数字证书的Fabric CA 142

8.2.1 概述 142

8.2.2 Fabric CA服务端的安装部署 143

8.2.3 Fabric CA服务端的操作使用 148

8.3 本章小结 158

第9章 支持多种语言的智能合约 159

9.1 概述 160

9.2 链码的生命周期管理 160

9.2.1 链码的生命周期 160

9.2.2 应用程序和链码的交互流程 164

9.2.3 背书节点接收应用程序的请求处理 165

9.2.4 采用上下文实现交易的模拟执行 166

9.2.5 链码消息的数据分发 166

9.2.6 链码运行环境的管理 168

9.3 内置的系统链码 172

9.3.1 生命周期管理系统链码 173

9.3.2 配置管理系统链码 180

9.3.3 查询管理系统链码 182

9.3.4 交易背书系统链码 182

9.3.5 交易验证系统链码 184

9.4 链码的相互调用 184

9.5 背书节点和链码的有限状态机 185

9.5.1 背书节点和链码之间的事件 188

9.5.2 背书节点的有限状态机 189

9.5.3 链码的有限状态机 190

9.6 本章小结 192

第三篇 应用篇

第10章 超级账本的应用开发模型 194

10.1 应用开发模型 194

10.2 应用程序开发的SDK 194

10.2.1 概述 195

10.2.2 SDK规范 195

10.2.3 应用场景介绍 204

10.3 链码的开发和调试 210

10.3.1 链码需要实现的接口 210

10.3.2 链码的SDK提供给链码的接口 212

10.3.3 链码开发的注意事项 214

10.3.4 链码的调试 215

10.4 本章小结 216

第11章 从零开始部署超级账本网络 217

11.1 准备超级账本运行环境 217

11.1.1 超级账本运行环境 217

11.1.2 编译超级账本镜像文件 224

11.2 快速构建超级账本网络 227

11.2.1 下载BYFN的代码 227

11.2.2 BYFN脚本介绍 227

11.2.3 生成网络初始化配置 228

11.2.4 启动超级账本网络 230

11.2.5 关闭超级账本网络 235

11.3 逐步建立超级账本网络 236

11.3.1 生成MSP证书 236

11.3.2 生成排序服务创世区块 236

11.3.3 生成通道配置创世区块 236

11.3.4 定义组织锚节点 237

11.3.5 启动超级账本网络 237

11.3.6 创建并加入通道 238

11.3.7 安装和实例化链码 240

11.3.8 执行链码查询 243

11.3.9 执行链码调用 244

11.4 本章小结 245

第12章 超级账本的应用开发实例 246

12.1 票据背书场景介绍 246

12.1.1 票据关系人 247

12.1.2 票据行为分类 247

12.1.3 基于区块链技术的数字票据 249

12.2 票据背书需求分析 250

12.3 票据背书架构设计 251

12.3.1 票据背书的分层架构 252

12.3.2 票据背书的数据模型 253

12.4 票据背书实现 254

12.4.1 应用程序实现 254

12.4.2 链码功能实现 275

12.5 票据背书快速部署 287

12.6 票据背书展示 288

12.6.1 系统登录 288

12.6.2 发布票据 288

12.6.3 我的票据 289

12.6.4 发起票据背书 289

12.6.5 待签收票据列表 290

12.6.6 签收票据背书 290

12.6.7 拒收票据背书 291

12.7 本章小结 292

附录A 术语表 293

附录B 超级账本的实用工具 297

参考文献 308


前言/序言

Foreword序  一

作为Linux基金会托管下增长最快的项目,超级账本(Hyperledger)在过去的一年成长十分迅速。这主要归功于Linux基金会开放、公平的治理模式,就是让各种规模的组织、开发者社区和技术专家可以达成最高水准的合作,以公开、公平和结构化的方式进行迭代。我们珍视每一个贡献,也鼓励更多的组织和开发者加入其中。

2017年7月,超级账本(Hyperledger)迎来了Fabric 1.0版本的正式发布,这是首个可用于生产环境部署的商业级应用,它历经了上百个概念验证。截至发布时间,共有27个组织、159位开发者参与并作出贡献。而在之后的每一天,这个数字一直都在上升。

我也很欣喜地看到,自Fabric 1.0版本发布以来,越来越多的企业、组织或个人对此产生了浓厚的兴趣,他们通过各种渠道,想要一探Fabric的究竟。因此,本书的面世可谓恰逢其时。

书中深入浅出地讲解了Fabric的内部运行原理,并且详细解答了Fabric 0.6和Fabric 1.0版本的区别。更难得的是,关于如何搭建Fabric系统,以及如何基于Fabric做区块链应用的开发,书中都有清楚、详尽的步骤演示,易于理解,很适合作为Fabric初学者教材,帮助他们快速上手。

本书集合了多方共同的心血,由Linux基金会会员、智链ChainNova的一线技术团队主笔撰写,他们不仅是超级账本中国社区的主要贡献者,还长期奋战在市场前线,对商业应用环境有相当的了解,相信从书中内容的翔实程度可见一斑。


——Brian Behlendorf,超级账本执行董事  



序  二Foreword

区块链技术是当今最具影响力的创新技术之一,得到产业界、学术界和投资领域的广泛关注。

Linux基金会超级账本(Hyperledger)开源项目创立于2015年12月,目前已经发展到160余个成员单位。超级账本项目的愿景是借助项目成员和开源社区的通力协作,共同制定并建立一个开放、跨产业、跨国界的区块链技术开源标准。它通过创建通用的分布式账本技术,协助组织扩展、建立行业专属应用程序以及平台和硬件系统来支持成员各自的交易业务。

董宁先生这本书深入浅出地描绘了HyperLedger技术与应用,为深度探索区块链技术和应用案例提供了很好的参考,是一本不可多得的技术参考书。

本书首先回顾了区块链发展的历史,展望了区块链的商用前景,对超级账本的基础环境、系统架构、交易流程、消息协议、策略管理和访问控制等进行了详细介绍。然后,进一步讨论了Gossip协议、分布式账本存储、共识机制、多链和多通道、基于数字证书的成员管理、智能合约等关键技术。最后,介绍了超级账本的应用开发模型、开发案例和应用部署方面的主题。这是我迄今为止所见关于超级账本技术和应用非常有参考意义的一本技术书籍,值得向广大区块链的研究者与开发同行推荐。

董宁先生长期以来致力于区块链技术的研究与推广,也是Hyperledger中国社区最有活力的推动者之一。相信本书的出版会对社区的发展和区块链技术的应用起到积极的推动作用。


陈钟  

北京大学信息科学技术学院教授  

北京大学金融信息化研究中心主任  

2017年12月于燕园  



Foreword序  三

从2008年中本聪在论文中提到区块链开始到区块链结合各类产业应用场景落地,区块链以不可思议的速度发展起来,经常会有人在问区块链究竟是什么。可以说,区块链本质上是一种创建信任的技术机制,通过区块链可以跨机构执行可信的交易。

当下和未来,区块链的用武之地将远远超过加密货币,因此为了适应大多数商业应用的需求,设计与开发适合商用的区块链平台迫在眉睫,“超级账本”(Hyperledger)应运而生。作为一个由IBM等世界著名大企业领衔的商业化联盟链项目,Hyperledger是目前代码数量最大、社区参与度最高的区块链开源项目。更重要的是,该项目也标志着区块链从单纯的开源技术发展到了被主流机构和市场认可的阶段。这对于区块链相关产业的发展意义深远。

区块链数学上的可信,不等于工程实现上的可信。为此,中国信通院联合央行数字货币研究所以及30多家企业,共同讨论制定了可信区块链标准。2017年9月对包括智链ChainNova在内的9家企业的区块链进行了第一轮评测,并且于2017年10月正式在国际标准组织立项。“因为透明,所以可信”,可信区块链标准已经起到了引领和推动我国与全球区块链底层基础设施健康有序发展的目的。在这个过程中,通过与本书作者之一、前IBM大中华区IT经济学负责人和IBM区块链社区发起人、智链CEO董宁的接触,能感觉到他对企业级区块链和Hyperledger的未来充满信心。对于金融科技和互联网业内人士来说,不懂区块链可能冒着被潮流淹没的风险;对于有志于从事区块链技术的人士来说,不学习Hyperledger可能错失与极有可能占据市场领导地位的金融科技结缘的机会。

坦诚地说,本书并非市场上第一本区块链的书。事实上,我了解到在Hyperledger 0.6版本盛行之时,本书的作者就曾经完成了本书的初版。但是由于后来Hyperledger推出了1.0版本,本着对读者极其负责任的态度,他们又全面重写了本书,使读者能够完全跟上Hyperledger发展的最新状态。本书的目的也不是蜻蜓点水地介绍一些Hyperledger入门知识,而是通过阅读本书能让读者达到一定的水平,甚至可以加入区块链产业应用中来,为区块链的发展和实践落地添砖加瓦。同时也希望通过作者的努力,能够给有志于在Hyperledger平台进行开发,并有所进展的程序开发人员带来帮助。


何宝宏  

中国信息通信研究院云计算与大数据研究所所长  




Preface前  言

为什么要写这本书

区块链是在全球范围内受到极高关注的技术。简而言之,区块链就是防篡改并且由大家共同维护的账本,其中包含不断增长的数据记录列表。根据现在的发展趋势,区块链将在商用领域得到广泛应用。

超级账本(Hyperledger)是Linux基金会旗下的区块链开发平台项目,致力于发展跨行业的商用区块链平台技术。超级账本项目自创立伊始便吸引了众多行业的领头羊,包括金融、银行、互联网、运输、制造等行业。目前,超级账本项目在全球拥有超过100个成员,包括IBM、Cisco、Intel、J.P. Morgan、荷兰银行、SWIFT、R3等。基于区块链技术、智能合约及其他相关技术,超级账本项目致力于建立新一代的分布式账本交易应用平台,从而在简化与商业流程相关的事务的同时,建立起商业信任、透明、审查等能力。Hyperledger Fabric子项目是以IBM早期捐献出的Open Blockchain为主体搭建而成的,是一个带有可插入各种功能模块架构的区块链实施方案,其目标是建立一个更加标准化的开源区块链开发平台,类似OpenStack之于云计算。开源地址是:https://github.com/hyperledger/fabric。Fabric主要框架的核心开发语言是Go语言,它非常适合联盟链,具有更高的商业应用前景。

从2015年开始,由于在IBM中国实验室工作,我开始接触区块链技术和IBM的Open Blockchain项目(即Hyperledger Fabric的前身),并开始为中国的金融用户推荐它,帮助这些用户借助区块链的技术价值来实现科技和业务的创新。到了2016年下半年,Hyperledger Fabric开发平台阶段性地稳定在0.6版本,无论是IBM还是云图智链(后来被智链ChainNova并购),都在很多行业应用场景中开始实践Fabric 0.6版本。那时在国内,绝大多数的金融企业都在尝试通过Hyperledger Fabric 0.6平台来开发属于自己的区块链应用,我在那个时候有机会参与了不少相关的区块链项目,涉及领域包括数字积分、资产托管和交易、保险、高价值商品溯源等。也正是从那时起,萌生了编写一本书来解释Hyperledger原理,介绍各项开发组件,并通过真实案例还原区块链开发全过程,让更多的人觉得区块链或者Hyperledger离自己并不遥远。于是,当时我们几个作者从社区、不同的开发项目,以及各个开发团队中开始收集和整理资料,完成了基于0.6版内容的大部分写作工作。

但恰逢此时,Hyperledger的第一个商用版本1.0准备推出,我们也第一时间从Linux基金会得到了这个消息。从当时1.0版本的计划来看,推出它的目的主要有两个方面:一是Hyperledger希望以这个版本为基调,作为企业级区块链平台;二是为了解决0.6版本中出现的一些问题,1.0版本进行了很大的改变和调整,可以说这个变化是翻天覆地的,以至于我们半开玩笑地说从0.6版本到1.0版本甚至没有可直接升级的路径。当时我还在IBM工作,第一时间找到了云图智链的张增骏老师等几位作者和出版社的高婧雅编辑,和他们商量是否需要调整写作方向和内容,因为在此之前实际上张增骏老师已经在上一个版本的写作中付出了很多的时间和精力。几乎是在十分钟之内我们就一致决定要基于Hyperledger Fabric 1.0版本重新组织材料,重新编写这本书,因为我们希望自己投入的时间和付出的精力为社区、众多开发者和广大对区块链技术感兴趣的读者带来一本真正实用的书,而不是仅仅为了把我们几个人的名字留在封面上。数月后的今天,我们把初审过的稿件提交给出版社。这个过程中由于Hyperledger开源社区和代码版本不断迭代内容也不断调整,经历了更多我们之前没涉及的新行业和应用场景,甚至经历了我个人工作角色的变化,我们几个作者最终坚持完成了本书的写作。当然必须承认,由于能力和经验不足,本书还有很多提升空间,内容本身也难免出现表达不准确的地方。本书希望抛砖引玉,欢迎读者多提宝贵意见,指出本书存在的技术错误,争取在下一版本中能纠正错误,不断完善,进一步提升质量。同时,我们还会一直基于Hyperledger这个平台不断地进行产业实践,后面还会以本书为起点策划系列丛书,把我们在工作学习过程中得到的启发和经验分享给读者。

本书作者大多来自智链ChainNova,均具有多年IT工作、实践经验。智链ChainNova与超级账本社区一直有非常紧密的合作。2017年智链ChainNova研究院联手Linux Foundation和IBM,共同主办了HyperLedger Fabric商用正式版本1.0发布后Hyperledger开源社区第一次线下会议(北京Meetup),Hyperledger全球副总裁、亚太区负责人Julian Gordan和多家国内知名金融企业、科技企业高层出席。在2018年,智链ChainNova正在计划携手Linux Foundation、北京大学和IBM共同主办超级账本黑客马拉松大赛(HyperLedger Hackathon)。同时为了进一步活跃Hyperledger社区,我们还即将承办多项开源社区活动,欢迎读者积极参与。相信读者将在学习区块链技术和Hyperledger的过程中获益匪浅。

本书特色

笔者是Hyperledger社区成员,参与超级账本社区的日常工作,了解超级账本发展和技术细节的第一手资料。本书以Fabric 商用正式版本1.0作为底层平台,其中也凝结了我们在Hyperledger开发理论和实际操作方面的经验。

本书深入讨论Hyperledger的核心技术,帮读者分析原理、关键实现与使用,是为数不多深入探讨和研究区块链的书籍之一。

我们的目标是把本书作为高校、科研院所、职业培训、企业技术学习的教材,向社会普及Hyperledger,培养更多的Hyperledger开发人才。

读者对象

区块链从业者

区块链应用开发人员

其他区块链技术爱好者(金融/Fintec从业者、产品经理、企业管理者等)

计算机及相关专业师生

如何阅读本书

本书共有12章内容,大体可以分为三篇内容。

准备篇(第1~2章),介绍区块链的基本概念,感受区块链的魅力。

第1章 本章是区块链技术与生态的概览,涉及区块链的基本概念、演进、主流平台,并着重分析企业级区块链平台的应用场景,有助于读者对区块链和Hyperledger Fabric 1.0(以下简称Fabric)的设计理念有整体性的了解。

第2章 本章介绍Fabric的安装、部署与调试。抛开复杂的底层技术细节,简化复杂的部署过程,快速体验Fabric的强大功能,以便有直观的感受。

核心篇(第3~9章),从系统架构开始讲解内部实现机制。

第3章 本章基于Fabric 1.0讲解区块链的架构,这是后续章节的基础,高屋建瓴地看待各个部件之间的关系和运行逻辑。本章涉及系统逻辑架构、网络节点架构、典型的交易流程、消息协议结构、策略管理和访问控制等内容,后面章节会从技术角度逐一“拆解”。

第4章 本章介绍基于Gossip的P2P数据分发机制,包括节点启动与成员管理、主节点选举与基于反熵的状态同步、身份认证与管理、多路分用与分区处理过程、消息的多种验证策略等。

第5章 本章介绍最为基础的分布式账本技术,它涵盖账本数据、索引数据、状态数据、历史数据等的实现技术。

第6章 本章介绍如何在排序服务上实现多通道的数据隔离,包括创建通道、节点加入通道等。排序服务采用插件化设计,可以根据业务场景的需求采用不同的共识算法。本章后面的内容详细介绍了排序服务的接口,以及实现了排序服务接口的Solo和Kafka模式。

第7章 本章介绍Fabric 1.0支持的多链及其内部的实现,多个链同时运行是一个系统工程,本章从数据存储、链码、命令行工具和SDK实现等多个方面分析如何支持多链。

第8章 本章介绍成员管理机制。它分为两个部分,第一部分详细介绍了MSP机制,包括MSP成员的验证、目录结构和配置最佳实践等;第二部分介绍可选的Fabric CA,包括服务端的安装部署和客户端的使用,还介绍了服务端提供的RESTful接口。

第9章 本章介绍Fabric 1.0上智能合约的实现。包括的内容有链码的生命周期管理、内置的系统链码、链码的相互调用、背书节点和链码的有限状态机等。

应用篇(第10~12章),从安装部署和应用开发的角度,通过一个票据背书的案例讲解如何基于Hyperledger Fabric 1.0开发区块链应用。

第10章 本章介绍Fabric 1.0的应用开发模型。从应用开发的角度看,开发者需要关注两部分:一部分是基于不同语言的SDK开发和区块链网络交互的应用程序;另一部分是实现超级账本的智能合约。本章详细介绍HFC SDK各个模块及其主要功能,链码的主要接口及其功能。

第11章 本章介绍多种Fabric 1.0的部署方式,包括分别基于Vagrant、Virtualbox、Docker的运行环境,以及BYFN脚本的使用。详细说明如何手动构建Fabric 1.0网络等。

第12章 本章通过一个票据背书示例,讲解如何实际开发一个基于Fabric 1.0的区块链应用。通过本章的实践,读者能够掌握区块链应用开发的方方面面,然后就可以动手开发具体的项目了。

读者反馈与勘误

欢迎读者朋友反馈,请让我们知道你对本书的看法——你喜欢哪些地方,不喜欢哪些地方。读者反馈对于我们很重要,因为这将帮助我们继续写作使你获益的书籍。反馈意见请发送E-mail至jessie@chainnova.com,并在邮件主题中指明书名,我们将尽力解决问题。如果你有专长领域,并对写书或为书做出其他贡献感兴趣,请访问www.chainnova.com参见作者指南。

特别致谢

首先感谢本书的其他作者——张增骏老师、朱轩彤老师和陈剑雄老师。他们在工作之余,挤出宝贵时间为本书贡献了他们对区块链技术和Hyperledger的理解和洞察。特别感谢张增骏老师在工作本身比较繁忙的前提下,为本书花费了很多精力,他不仅在内容上积极供稿,还在审定、修改和校正方面下了很多工夫。朱轩彤老师博闻强识,本身具有很强的行业背景,对科技产业的发展又格外关注,这些在本书第1章中得到了充分体现。智链首席科学家陈剑雄也对本书的内容给出了很多宝贵的意见和建议,同时对本书合作的达成给予了支持。

万分感谢超级账本执行董事Brian Behlendorf先生,北京大学陈钟教授和中国信息通信研究院云计算与大数据所何宝宏所长在百忙之中拨冗为本书做序,让我感觉特别荣幸。他们在各自领域都是最顶尖的专家,同时对区块链技术都有深刻且独到的见解。还有苏州同济金融科技研究院马小峰院长、中国电子学会区块链专委会孙贻滋秘书长和超级账本中国技术工作组杨保华主席为本书写来热情洋溢的推荐,令人备感温暖。

在成书的过程中,和我一起工作和合作的很多专家对本书都给予了不同程度的支持和帮助,像Linux基金会超级账本亚太区副总裁Julian Gordon和中国地区顾问龙文选先生,北京大学(天津滨海)新一代信息技术研究院马修军副院长,中国信息通信研究院云计算与大数据所魏凯主任和卿苏德博士,IBM的各位领导和专家,以及其他各个单位的领导和大咖,在此抱歉不能一一尽述。

非常感谢机械工业出版社华章公司的编辑高婧雅,她的敬业精神和编辑效率令我由衷敬佩,她的反馈、建议、鼓励和帮助引导我们克服诸多困难完成全部书稿。同时,本书的推广得到了CSDN及其副总裁孟岩先生、InfoQ及其总编辑郭蕾先生这些好朋友的大力支持。

最后,因为工作和写作,牺牲了很多本该陪伴家人的时间。我要特别感谢我的家人长期以来对我的默默支持和理解。

谨以本书献给我最亲爱的家人,多年以来帮助、支持我的师友,以及众多热爱区块链技术的朋友!


董宁  

2017年12月 



揭秘分布式账本的底层逻辑:区块链技术深度解析与前沿实践 在数字经济浪潮奔涌向前、技术革新日新月异的今天,一种颠覆性的技术正悄然重塑着商业模式、信任机制乃至社会结构的基石。它以其去中心化、不可篡改、透明可追溯的特性,为解决信息孤岛、信任缺失等诸多难题提供了全新的视角和解决方案。本书旨在带领读者穿越区块链技术的迷雾,深入理解其核心原理,并一同探索其在各行各业的落地应用,开启通往未来数字世界的钥匙。 第一章:追本溯源,区块链的诞生与演进 本章将带领读者回溯区块链技术的发展脉络,从比特币的诞生及其背后解决“双重支付”问题的巧妙设计出发,逐步深入理解区块链的起源。我们将探讨早期区块链的特点,分析其局限性,并引出区块链技术是如何从最初的加密货币应用,逐渐演化出适用于更广泛场景的平台型技术。这一过程并非一蹴而就,而是伴随着技术难题的攻克、社区的共识建立以及应用场景的不断拓展。我们将详细解析早期经典区块链的架构,理解其在去中心化、共识机制等方面的初步探索,并为后续深入理解更复杂的区块链系统奠定坚实的基础。 第二章:核心基石,理解区块链的内在逻辑 区块链的核心魅力在于其独特的技术架构和运作机制。本章将深入剖析区块链的“积木块”——区块(Block)的构成,理解每个区块如何包含交易数据、时间戳、以及关键的哈希指针,从而形成一条不可篡改的时间链。我们将详细讲解哈希函数在保证数据完整性和防篡改方面的关键作用,以及“工作量证明”(PoW)和“权益证明”(PoS)等主流共识机制的原理,解析它们如何确保分布式网络中的节点能够就交易的有效性达成一致,并防止恶意攻击。此外,本章还将深入探讨加密技术在区块链中的应用,如公钥加密、私钥签名等,揭示它们如何保障交易的安全性和用户的身份认证。通过对这些底层技术的深入理解,读者将能够清晰地把握区块链为何能够实现“信任的机器”。 第三章:智能合约,代码即法律的革命 本章将聚焦于区块链技术中最具革命性的创新之一——智能合约。我们将详细解释智能合约的概念,理解它如何在区块链上自动执行预设的条款和条件,从而无需中介即可实现合同的自动化执行。本章将深入探讨智能合约的编写语言(如Solidity),以及其在编写、部署和执行过程中的关键步骤。我们将分析智能合约如何赋能去中心化应用(DAPP)的开发,使其能够构建出无需信任第三方的去中心化金融(DeFi)、去中心化交易所(DEX)等新型应用。通过丰富的案例分析,读者将直观地感受到智能合约如何改变商业逻辑,提高效率,降低成本,并创造新的商业模式。 第四章:多链并行,生态系统的拓展与融合 随着区块链技术的不断发展,单一区块链的局限性日益凸显,多链并行的趋势应运而生。本章将探讨不同区块链网络之间的互操作性问题,以及侧链、跨链桥等技术是如何实现不同区块链之间的资产转移和信息交互的。我们将分析不同公有链、联盟链和私有链的设计理念和技术特点,理解它们各自适用的场景和优劣势。通过对多链生态的深入解读,读者将能够理解区块链技术如何从孤立的节点走向相互连接、协同工作的庞大网络,从而构建更加丰富和强大的应用生态。 第五章:安全至上,区块链的安全攻防与风险防范 区块链的去中心化和加密特性为数据安全提供了新的保障,但同时也面临着新的安全挑战。本章将全面梳理区块链技术面临的安全风险,包括但不限于51%攻击、智能合约漏洞、私钥泄露等。我们将深入分析这些攻击的原理和防范措施,并介绍区块链安全审计、形式化验证等技术手段。此外,本章还将探讨如何构建安全可靠的区块链基础设施,以及用户在参与区块链活动时应注意的安全事项,帮助读者建立起对区块链安全的全面认知,并掌握有效的风险防范策略。 第六章:应用场景,区块链赋能千行百业 区块链技术的潜力远不止于金融领域。本章将带领读者深入探索区块链在各行各业的广泛应用,展现其解决实际问题的强大能力。我们将详细分析区块链在供应链金融中的应用,如何实现贸易融资的透明化和高效化;在数字身份认证领域的潜力,如何构建去中心化、可控的个人身份体系;在知识产权保护方面的创新,如何实现数字作品的版权追溯和价值流转;以及在物联网(IoT)、政务服务、医疗健康、游戏娱乐等领域的落地实践。通过丰富的行业案例分析,读者将直观地了解到区块链技术如何渗透到我们生活的方方面面,并为各行各业带来颠覆性的变革。 第七章:前沿探索,区块链的未来展望与挑战 区块链技术仍在快速发展之中,新的技术趋势和应用场景层出不穷。本章将展望区块链技术的未来发展方向,包括但不限于零知识证明(ZKP)在隐私保护方面的突破,Layer 2扩展方案如何解决性能瓶颈,以及Web3.0时代区块链扮演的核心角色。同时,我们也将深入探讨区块链技术在发展过程中仍然面临的挑战,如监管政策的不确定性、大规模应用的落地难度、以及环境保护等问题。通过对前沿技术和未来趋势的解读,读者将能够把握区块链技术的最新动态,并对未来的发展方向形成自己的判断。 本书不仅是一本技术指南,更是一次思维的启迪。它将帮助您深刻理解区块链的底层逻辑,洞察其在数字经济时代的核心价值,并为您的技术创新和商业实践提供宝贵的参考。无论您是技术开发者、行业观察者,还是对未来充满好奇的探索者,本书都将是您开启区块链世界大门的理想之选。

用户评价

评分

这本书的标题《深度探索区块链:Hyperledger技术与应用》一下子就击中了我的兴趣点。我一直认为,区块链不仅仅是一个抽象的概念,它更是一系列可以被构建和应用的底层技术。而Hyperledger,作为Linux基金会旗下的开源项目,尤其在企业级区块链领域占据着举足轻重的地位,因此,我对这本书寄予了厚望,希望它能为我揭示Hyperledger的真实面貌。 我期待书中能对Hyperledger Fabric的架构进行一次彻底的“解剖”。从成员服务提供商(MSP)到排序服务(Ordering Service),再到背书节点(Endorsing Peers)和提交节点(Committing Peers),每一个环节的运作原理都让我充满好奇。我希望书中能够详细解释这些组件是如何协同工作的,以及它们在整个交易处理过程中扮演的角色。 智能合约是区块链应用的核心逻辑,而Chaincode是Hyperledger Fabric实现智能合约的方式。我希望书中能够深入讲解Chaincode的开发,不仅限于API的调用,更包括如何设计高效、安全、可维护的智能合约。如果能够看到一些典型的Chaincode示例,并理解它们是如何在实际业务场景中得到应用的,那将非常有帮助。 除了技术本身,这本书的“应用”部分也让我非常期待。我一直对区块链在实际商业场景中的落地情况非常感兴趣。我希望书中能够深入剖析Hyperledger在不同行业,例如金融、供应链、医疗等领域的实际应用案例。理解Hyperledger是如何解决这些行业的痛点,并带来实际价值,将极大地拓宽我的视野。 总而言之,我希望这本书能够成为一本真正能够引领我“深度探索”Hyperledger的指南。它不仅要让我理解技术原理,更要让我看到技术在现实世界中的价值和潜力。如果这本书能够帮助我建立起对Hyperledger扎实的理解,并激发我进一步学习和实践的动力,那它将是我非常满意的一次阅读体验。

评分

这本书的封面设计就足够吸引人,那种深邃的蓝色背景,辅以错落有致的区块元素,瞬间就勾起了我对区块链世界的好奇心。拿到书的那一刻,就能感受到它沉甸甸的分量,这不仅是纸张的厚度,更是其中蕴含知识的厚度。我一直对底层技术和其带来的颠覆性应用充满热情,而区块链,特别是Hyperledger这类企业级解决方案,更是我一直想要深入了解的领域。 我一直觉得,很多关于区块链的书籍,要么过于理论化,要么过于浅显,难以触及核心。这本书的出现,恰恰填补了我的这个空白。从目录上看,它不仅仅停留在概念的介绍,而是直击Hyperledger Fabric的架构、共识机制、智能合约开发等核心技术。我特别期待关于Chaincode开发的部分,能够看到具体的代码示例和实操指导,这对于我这样动手能力强的人来说,是最直接的学习方式。 这本书给我最大的惊喜在于,它并没有将Hyperledger仅仅作为一个技术框架来讲解,而是将目光投向了其在各个行业的实际应用。金融、供应链、医疗保健……这些曾经看似与区块链毫不相干的领域,在Hyperledger的赋能下,展现出了前所未有的可能性。我希望书中能够深入剖析这些案例,不仅仅是列举,更要揭示Hyperledger是如何解决实际业务痛点,带来效率提升和价值创造的。 对于我而言,理解一项新技术,最好的方式就是将其与现有的技术体系进行对比和融合。这本书在介绍Hyperledger时,是否会涉及它与其他区块链平台(如以太坊、EOS等)的异同?又或者,它在企业级应用中,如何与现有的IT基础设施进行集成?这些问题如果能在书中得到解答,那将是对我理解区块链技术在商业世界中定位非常有价值的补充。 最后,我非常看重一本书能否激发我进一步探索的欲望。好的技术书籍,不应该仅仅是知识的传递,更应该是一扇通往更广阔世界的窗口。我希望这本书能够让我对Hyperledger的潜力和未来发展方向有一个更清晰的认知,甚至能够启发我思考新的应用场景和解决方案。这本书的价值,或许就在于它能否成为我深入区块链海洋的“导航仪”。

评分

从书名来看,这本书似乎是一本非常扎实的区块链技术指南,尤其是对Hyperledger这个在企业级应用领域扮演着重要角色的技术栈进行了深入的剖析。我一直对如何构建安全、可信的分布式系统非常感兴趣,而Hyperledger所提供的模块化、权限化的特性,正是我认为区块链技术走向大规模商业应用的关键。 我特别关注书中对Hyperledger Fabric的详细讲解。它是否会深入到背后的节点通信、交易生命周期、以及不同类型的共识机制(比如RAFT和PBFT)之间的权衡和选择?理解这些底层机制,对于我这种偏爱从根源上掌握技术的人来说至关重要。我希望书中能提供足够的技术细节,让我能真正理解Hyperledger是如何保证其安全性和效率的。 智能合约的编写和部署是区块链应用的核心。我期待书中能够提供关于Chaincode(Hyperledger Fabric的智能合约)开发的详细教程。这包括如何设计数据模型,如何编写合规且高效的代码,以及如何在Fabric网络中进行部署和管理。如果书中能够包含一些实用的代码片段,并解释它们在实际场景中的应用,那将是非常有价值的学习资源。 另外,这本书的“应用”部分也让我充满期待。Hyperledger在多个行业都有广泛的应用,我希望书中能够深入探讨几个具有代表性的案例。不仅仅是列出应用场景,更重要的是剖析Hyperledger在这些场景下是如何解决实际业务问题的,例如如何提升透明度、降低成本、优化流程等。 总的来说,我希望这本书能够成为一本能够让我深入理解Hyperledger技术原理,并且能够指导我进行实际应用开发和部署的“操作手册”。如果它能够帮助我建立起对Hyperledger完整、系统的认知,并且能够启发我思考新的应用可能性,那么它将对我非常有价值。

评分

这本书的书名就透露出一种“硬核”的气质,对于我这种喜欢钻研技术细节的人来说,简直是量身定制。我之前接触过一些关于分布式账本技术的入门读物,但总觉得隔靴搔痒,难以形成系统性的认识。这本书承诺“深度探索”,并且聚焦于Hyperledger,这让我看到了系统性学习企业级区块链解决方案的希望。 我最关心的是书中对Hyperledger Fabric底层机制的解读。例如,它如何实现去中心化身份管理,如何保证交易的不可篡改性,以及其独特的共识算法(如PBFT)是如何工作的。如果书中能够提供清晰的架构图、流程图,并辅以深入浅出的文字解释,我相信我能很快掌握其核心原理。 除此之外,智能合约的开发也是我非常期待的部分。Hyperledger Fabric支持Go、Node.js、Java等多种语言开发Chaincode,我希望书中能够重点讲解一种或多种语言的开发流程,包括环境搭建、数据模型设计、API调用以及测试部署等。能够看到实际的代码示例,并了解如何在实际业务场景中编写出高效、安全的智能合约,将极大地提升我的实践能力。 这本书的另一个亮点在于其“技术与应用”的结合。我一直认为,技术只有落地才能产生真正的价值。因此,我希望书中能够提供一些真实的Hyperledger应用案例,并详细分析这些案例的业务背景、技术实现以及最终的效益。了解Hyperledger如何在金融、供应链、政务等领域发挥作用,能够帮助我更好地理解这项技术的商业价值。 总而言之,我希望这本书能够成为一本能够引领我从入门到精通的“宝典”。它不仅要讲清楚“是什么”,更要讲明白“怎么做”,并且能够让我触碰到“为什么”。如果这本书能够在我学习Hyperledger的过程中,帮助我建立起一个清晰的技术框架和应用视野,那我将非常满意。

评分

我看到这本书的书名《深度探索区块链:Hyperledger技术与应用》时,内心涌起一股强烈的学习冲动。我对区块链技术一直保持着高度的关注,尤其是在企业级解决方案方面,Hyperledger凭借其开放、模块化的特性,吸引了我的目光。我一直渴望能够深入了解这项技术,并看到它在实际业务中的落地情况。 这本书对我而言,最大的价值在于它能够提供一个全面而深入的视角来理解Hyperledger。我特别希望书中能够详细阐述Hyperledger Fabric的整体架构,包括其核心组件如MSP、Orderer、Peer等是如何协同工作的。了解这些基础架构,是理解其工作原理的关键。 我对于智能合约的开发尤为感兴趣。Chaincode作为Hyperledger Fabric实现智能合约的载体,其开发过程、语言支持以及安全性的考量,都是我想深入了解的内容。我期望书中能够提供清晰的Chaincode开发指南,并附带具体的代码示例,能够帮助我掌握智能合约的编写和部署。 同时,我对Hyperledger在实际应用中的表现也充满好奇。书中关于“应用”的部分,我希望能看到一些具体的、具有代表性的案例分析。例如,Hyperledger如何在金融、供应链管理、政务服务等领域解决实际问题,带来哪些切实的效益。通过这些案例,我能更好地理解Hyperledger的商业价值。 总而言之,我希望这本书能够成为我学习Hyperledger技术和理解其应用的最佳读物。如果它能帮助我建立起对Hyperledger的系统性认识,并激发我对区块链技术更深层次的探索,那它将是一本非常有价值的书籍。

评分

因为最近一直在看fabric,所以直接跳到6节,仔细看了下,发现好多处蹩脚的翻译,很cuo【第二声】【因为这章节大部分是翻译官网的文档来的,包括结构也是http://hyperledger-fabric.readthedocs.io/en/latest/blockchain.html,吐槽的仅仅是翻译,结构没毛病】至于部分的错别字这个倒是无所谓,但是一些关键数学符号这个你不展示好就有点过分啦

评分

书本非常好,但是原理方面讲解的太少,不是非常需要。

评分

不错哦,7刚才7非常7天7发v

评分

这本书不是很厚,内容还可以,供大家学习参考

评分

对对学习,书的质量很好,看着很不错哦,超级喜欢.赞赞

评分

学习先进思想,提升自我!

评分

东西挺好,给76289944131955110000个赞

评分

买来看看,应该还不错的。

评分

很好的关于区块链的读本

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.teaonline.club All Rights Reserved. 图书大百科 版权所有