基本信息
作者: 冯翔 刘涛 吴寿鹤 周广益
丛书名: 区块链技术丛书
出版社:机械工业出版社
ISBN:9787111599425
上架时间:2018-6-1
出版日期:2018 年6月
开本:16开
版次:1-1
所属分类:计算机
目录
前言
第1章 全面认识区块链 1
1.1 区块链技术的起源和解释 1
1.2 区块链的核心技术及其特性 2
1.2.1 区块链技术的特性 3
1.2.2 区块链的分布式存储技术特性 3
1.2.3 区块链的密码学技术特性 4
1.2.4 区块链中的共识机制 8
1.2.5 区块链中的智能合约 12
1.3 区块链技术演进过程 13
1.4 区块链技术的3个缺点 13
1.5 区块链技术常见的4个错误认识 14
1.6 区块链技术的应用领域 15
1.6.1 区块链在金融行业的应用 15
1.6.2 区块链在供应链中的应用 16
1.6.3 区块链在公证领域的应用 17
1.6.4 区块链在数字版权领域的应用 18
1.6.5 区块链在保险行业的应用 19
1.6.6 区块链在公益慈善领域的应用 21
1.6.7 区块链与智能制造 22
1.6.8 区块链在教育就业中的应用 23
1.7 区块链的其他常见技术框架 24
1.8 本章小结 25
第2章 实战准备 26
2.1 开发环境准备 26
2.1.1 操作系统的配置 26
2.1.2 Docker的使用 27
2.1.3 Git的使用 30
2.2 开发语言 30
2.2.1 GO语言 30
2.2.2 Node.js 32
2.3 常用工具 32
2.3.1 Curl 32
2.3.2 tree 33
2.3.3 Jq 33
2.4 本章小结 34
第3章 Hyperledger简介 35
3.1 Hyperledger综述 35
3.1.1 Hyperledger的项目背景 35
3.1.2 Hyperledger的项目成员 36
3.2 Hyperledger的体系结构 37
3.2.1 获取Hyperledger源代码并成为开发者 37
3.2.2 Hyperledger的9个正式项目 38
3.3 本章小结 43
第4章 Fabric快速入门 44
4.1 Fabric的技术特性 44
4.1.1 Fabric的多账本特性 44
4.1.2 Fabric的智能合约 45
4.1.3 Fabric的权限系统 46
4.1.4 Fabric的共识算法 47
4.2 Hyperledger中与Fabric相关的项目 47
4.3 Fabric的模块、安装和使用 48
4.3.1 Fabric的编译和安装 49
4.3.2 Fabric模块安装结果检查 50
4.3.3 利用Docker运行Fabric相关模块 51
4.4 快速运行一个简单的Fabric网络 53
4.4.1 Fabric环境准备 53
4.4.2 生成Fabric需要的证书文件 54
4.4.3 创始块的生成 56
4.4.4 Orderer节点的启动 59
4.4.5 Peer节点的启动 60
4.4.6 创建通道 64
4.4.7 Chaincode的部署和调用 65
4.5 本章小结 66
第5章 Fabric核心模块详解 67
5.1 Fabric的核心模块功能、通用选项和命令 67
5.1.1 Fabric核心模块及其功能 67
5.1.2 Fabric模块的通用选项和命令 68
5.2 Fabric模块的子命令、选项和配置文件 68
5.2.1 cryptogen 69
5.2.2 configtxgen 74
5.2.3 configtxlator 77
5.2.4 orderer 79
5.2.5 peer 85
5.3 Fabric模块在系统中的作用 92
5.3.1 peer模块在Fabric系统中的作用 92
5.3.2 orderer模块在Fabric系统中的作用 95
5.4 Fabric数据安全传输的方式 95
5.4.1 Fabric中orderer模块TLS设置 95
5.4.2 Fabric中peer模块TLS设置 96
5.5 本章小结 98
第6章 Fabric的账号体系 99
6.1 Fabric账号简介 99
6.1.1 Fabric账号是什么 99
6.1.2 什么地方需要使用Fabric的账号 101
6.2 基于cryptogen的账号管理体系 103
6.3 Fabric账号服务器:Fabric-ca 106
6.3.1 Fabric-ca的编译和安装 107
6.3.2 fabric-ca-server的启动和配置 108
6.3.3 fabric-ca-client的使用 115
6.4 将fabric-ca-server绑定到现有项目中 117
6.5 本章小结 120
第7章 Fabric的智能合约详解 121
7.1 Chaincode初探 121
7.2 快速编写和运行一个Chaincode 122
7.3 Golang版本的Chaincode的代码结构 125
7.3.1 Chaincode源代码的基本结构 125
7.3.2 shim包的核心方法 127
7.3.3 ChaincodeStubInterface接口中的核心方法 128
7.4 Chaincode相关的操作命令和选项 136
7.5 如何通过Chaincode进行交易的endorse 140
7.6 Chaincode的调试方法 142
7.6.1 Chaincode在Docker容器之外的运行 142
7.6.2 Chaincode在IDE中的调试 145
7.7 本章小结 148
第8章 Fabric和Fabric-ca的编程接口 149
8.1 Fabric接口的通信协议和功能划分 149
8.2 Fabric Nodejs SDK的使用 151
8.2.1 如何获取Fabric Nodejs SDK源代码 151
8.2.2 快速构建基于Nodejs的Fabric客户端 151
8.2.3 Fabric Nodejs SDK中TLS的设置 159
8.3 Fabric Java SDK 160
8.3.1 Fabric Java SDK的安装 160
8.3.2 Fabric Java SDK的常用接口 161
8.3.3 Fabirc Java SDK中TLS的设置 169
8.4 Fabric Go SDK 170
8.4.1 Fabric Golang的安装 170
8.4.2 创建配置文件 170
8.4.3 一个简单的Golang访问Fabric的例子 171
8.4.4 Fabric Golang SDK其他用法 174
8.4.5 Fabric Golang SDK的背书操作 176
8.5 本章小结 176
第9章 Fabric系统架构设计 177
9.1 Fabric架构中的组织规划 177
9.1.1 确认组织 178
9.1.2 组织的管理方式 178
9.2 Fabric系统的结构 179
9.2.1 Fabric系统的逻辑结构 179
9.2.2 Fabric系统的物理结构 181
9.3 Fabric中Channel的设计 181
9.4 Chaincode 182
9.5 数据访问层 183
9.6 历史遗留系统的兼容 185
9.7 Fabric系统的维护和管理 186
9.8 本章小结 187
第10章 Fabric开发实战:开发流程与实例详解 188
10.1 Fabric项目的开发流程 188
10.2 Fabric项目开发实例详解 191
10.2.1 系统初始化 191
10.2.2 Orderer节点的初始化和启动 193
10.2.3 启动第一个Peer 198
10.2.4 Channel的创建和加入 200
10.2.5 启动当前组织的Fabric-ca 202
10.2.6 测试Chaincode的部署和开发 202
10.2.7 客户端的开发 203
10.2.8 启动本组织的其他Peer 205
10.2.9 其他组织Peer节点的加入 208
10.2.10 背书交易的测试 210
10.2.11 非初始化组织的加入 214
10.3 本章小结 220
第11章 基于Fabric的区块链浏览器项目实战 221
11.1 项目介绍 221
11.2 开发过程 222
11.2.1 项目准备 222
11.2.2 项目开发 222
11.3 本章小结 229
第12章 基于Fabric的供应链金融项目实战 230
12.1 供应链金融的背景知识和痛点 230
12.1.1 供应链金融的背景知识 230
12.1.2 供应链金融的痛点 231
12.1.3 用Fabric解决供应链金融痛点的方法 231
12.2 用Fabric构建供应链金融系统的方法 232
12.2.1 系统的设计 232
12.2.2 系统环境搭建 233
12.2.3 客户端开发 239
12.3 本章小结 244
第13章 基于Fabric的食品溯源项目实战 245
13.1 数据溯源的背景知识和痛点 245
13.1.1 数据溯源的背景知识 245
13.1.2 数据溯源的痛点 245
13.2 Fabric如何优化数据溯源系统 246
13.3 Fabric如何构建数据溯源系统 246
13.3.1 系统环境搭建 247
13.3.2 客户端开发 262
13.4 本章小结 271
附录A 比特币的原理和运行方式 272
附录B 比特币的bitcoin-cli模块详解 282
附录C 比特币系统的编程接口 292
附录D 比特币系统客户端项目实战 297
附录E 区块链相关术语 304
↑折 叠
前言
为何写作本书
近年来区块链技术逐步占据各大技术类网站的头条,各种基于区块链特性的想法和创新层出不穷。这些繁荣是区块链技术在幕后默默支撑的,可是人们经常忽略区块链的技术而把投资、融资、保值等金融属性和区块链画上了等号。其实区块链本质上还是一门技术。区块链技术源于比特币,经过近几年的发展,已经超越比特币逐步形成一门单独的技术体系。目前区块链技术已经渗透到各行各业中,比如区块链技术同大数据、人工智能等技术产生了让人意想不到的化学反应。我们有理由相信区块链技术在未来一定会成为IT基础技术之一,成为每个IT技术人员必备的基础技能。
同时我们也可以看到区块链技术在国内外的发展非常迅速。在国外,IBM发起了超级账本项目,并把超级账本项目的源码捐献给了Linux基金,借助社区的力量来发展。全球已经有将近200多个公司和组织加入了超级账本,成为超级账本项目的会员。当然其他巨头也随之跟进,微软早就和以太坊达成了战略合作协议。互联网巨头Google、社交媒体行业的龙头Facebook等在区块链领域均有所布局。
但是在繁荣的背后我们也应该看到危机,目前区块链技术在实际项目中的应用还存在不少问题。我们认为出现这种情况是因为目前区块链技术的实用化还存在以下障碍:
技术新,学习资料匮乏。区块链技术是最近几年刚刚兴起的一门综合技术,目前资料特别是中文资料还是比较缺乏的。
技术种类多,有一定的学习成本。区块链是一门综合型的技术,如果把每个单项技术列出来学习并不难,但是当把这些技术组合起来之后学习难度就大大增加了。
可借鉴的成功案例少。由于区块链技术是一门比较新的技术,因此目前缺少比较成功的案例。即使诸如IBM等巨头开发了一些成功案例,但是由于各种各样的原因,目前并没有公开,这些都给广大技术人员学习区块链技术特别是把区块链技术应用到具体项目中造成了一定的障碍。
这些问题的存在是我们编写“区块链开发实战”系列图书的目的,第一批有两本书同时面世,分别是基于Hyperledger Fabric和以太坊进行区块链开发实战。我们希望读者通过这两本书,在了解区块链的基本概念和核心技术的同时,能够将区块链技术更多应用到具体的项目中,解决现有技术无法解决的一些行业痛点。
这本书简直是为像我这样的区块链小白量身定做的!我之前一直对Hyperledger Fabric这个名字闻名已久,但总觉得它高不可攀,各种技术术语和复杂的概念让我望而却步。这本书开篇就用一种非常接地气的方式,从最基础的区块链原理讲起,然后慢慢引入Fabric的核心概念,比如通道、链码、对等节点等等。作者在解释这些概念的时候,没有堆砌那些晦涩难懂的专业词汇,而是运用了很多生动的比喻和直观的图示,让我这种初学者也能轻松理解。尤其让我惊喜的是,书中对智能合约的讲解,不仅仅是停留在理论层面,而是提供了大量的实战代码示例,并且一步步指导如何搭建开发环境、编写、部署和调用智能合约。我尝试着跟着书中的例子动手实践,发现过程比我想象的要顺利得多,这让我对区块链开发充满了信心。这本书的优点在于它真的能够让你从“知道”区块链是什么,到“会”用Fabric来开发。
评分我是一名对加密货币领域有浓厚兴趣的开发者,尤其关注比特币背后的技术原理和其与其他区块链平台的潜在接口。这本书在这一点上给我带来了很多启发。虽然它的重点是Hyperledger Fabric,但书中对区块链底层技术,例如分布式账本、共识机制等方面的深入剖析,与比特币的原理有很多共通之处。更让我惊喜的是,书中探讨了如何将Fabric与其他区块链系统进行交互,甚至提及了与比特币网络进行一定程度集成的可能性。虽然书中没有直接提供比特币接口编程的完整教程,但它为理解这种集成提供了坚实的基础。通过学习Fabric的智能合约设计和通信机制,我开始思考如何利用这些知识去设计一个能够与比特币网络进行有限信息交互的系统,例如记录比特币交易的哈希值,或者作为某些去中心化应用的中间件。这本书的价值在于它提供了构建更复杂、跨链应用所需的基本构件和思考框架。
评分作为一名有一定编程基础的在职工程师,我一直在寻找能够快速上手企业级区块链开发的资源。Hyperledger Fabric因其在企业应用中的广泛落地而备受关注,而这本书的“实战”二字恰恰吸引了我。它没有像很多教程那样只停留在理论讲解,而是通过一个接一个的案例分析,将Fabric的各个关键技术点融入其中。从搭建一个简单的联盟链网络,到实现一个资产管理的链码,再到更复杂的权限控制和链下数据集成,每个案例都环环相扣,逻辑清晰。作者在讲解过程中,非常注重代码的实现细节,并且对遇到的常见问题和解决方案进行了深入的分析。我特别欣赏书中对链码生命周期管理、节点加入与退出、以及数据加密等方面的详细阐述,这些都是在实际项目中不可或缺的知识。这本书真正做到了“授人以鱼不如授人以渔”,让我能够独立解决开发中遇到的各种挑战。
评分这本书的深度和广度超出了我的预期。我购买这本书的初衷是想了解Hyperledger Fabric的实际应用,但它带来的收获远不止于此。除了对Fabric核心技术的细致解读,书中还穿插了大量关于区块链整体生态的介绍,例如不同共识机制的优劣对比,以及Fabric在不同行业中的应用场景分析。更让我眼前一亮的是,作者在讲解过程中,会适时地将Fabric与其他主流区块链平台进行比较,比如以太坊,这让我能够更全面地理解各种技术的特点和适用范围。书中关于“智能合约”的探讨,不仅限于Fabric的链码,还延伸到了更广泛的智能合约概念,以及如何进行安全审计和风险评估。这本书就像一个百科全书,它能够满足从入门到进阶的不同层次读者的需求,并且为进一步深入研究提供了丰富的方向。
评分坦白说,我一开始是被“包邮”和“比特币接口编程”这两个关键词吸引过来的,以为这本书会侧重于个人开发者如何快速利用比特币的API进行一些便捷操作,或者快速接入一些已有的比特币服务。虽然书中确实提及了比特币,并且对区块链的接口编程也有所涉及,但它的核心内容明显是围绕Hyperledger Fabric展开的。这一点上,我的预期与实际内容有些偏差。不过,在阅读过程中,我逐渐发现Fabric的开发模式和思想对于理解比特币的底层逻辑以及其他区块链平台的接口设计,有着非常重要的启发意义。书中关于如何设计和实现一个“链码”的过程,让我开始思考如何将类似的逻辑应用到比特币的脚本语言中,或者如何设计一个桥梁来连接Fabric和比特币网络。虽然它不是我一开始设想的那种“比特币接口编程”的直接教程,但它提供的思维方式和技术基础,对于我理解和探索更广泛的区块链接口编程领域,无疑是有价值的。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等,本站所有链接都为正版商品购买链接。
© 2025 windowsfront.com All Rights Reserved. 静流书站 版权所有