新書推薦:
《
Python贝叶斯深度学习
》
售價:HK$
91.8
《
文本的密码:社会语境中的宋代文学
》
售價:HK$
69.0
《
启微·狂骉年代:西洋赛马在中国
》
售價:HK$
80.5
《
有趣的中国古建筑
》
售價:HK$
68.8
《
十一年夏至
》
售價:HK$
78.2
《
如何打造成功的商业赛事
》
售價:HK$
91.9
《
万千教育学前·透视学前儿童的发展:解析幼儿教师常问的那些问题
》
售價:HK$
59.8
《
慈悲与玫瑰
》
售價:HK$
89.7
|
內容簡介: |
本书由超级账本核心设计和开发者撰写,是区块链开发落地专业指南。由浅入深,系统化介绍区块链系统的设计精华、应用开发等。全书分为理论篇和实践篇两大部分,主要内容包括:第1-3章介绍区块链技术的由来、核心思想及典型的应用场景;第4-5章重点介绍区块链技术中大量出现的分布式系统技术和密码学安全技术;第6-8章介绍区块链领域的三个典型开源项目:比特币、以太坊以及超级账本;第9-11章以超级账本Fabric项目为例,具体讲解安装部署、配置管理,以及使用FabricCA进行证书管理的实践经验;第12章重点剖析超级账本Fabric项目的核心架构设计;第13章介绍区块链应用开发的相关技巧和示例;第14章介绍区块链服务平台的设计与开发,并讲解应用超级账本Cello项目构建服务平台的相关知识。本书覆盖了区块链和分布式账本领域的新技术,可帮助读者深入理解区块链核心原理和典型设计实现,以及高效地开发基于区块链平台的分布式应用。
|
關於作者: |
杨保华博士,清华大学毕业,现为 IBM 中国研究院研究员。主要从事数据中心网络解决方案的研发与部署,技术方向包括云计算、软件定义网络(SDN)、网络安全等,是国内较早从事 SDN 和网络虚拟化相关技术的推广者,同时也是DockerPool开源社区的发起人之一。
|
目錄:
|
目录 Contents
序 言
前 言
理 论 篇
第1章 区块链思想的诞生2
1.1 从实体货币到数字货币2
1.2 站在巨人的肩膀上5
1.3 了不起的社会学实验5
1.4 潜在的商业价值7
1.5 本章小结8
第2章 核心技术概览9
2.1 定义与原理9
2.2 技术的演化与分类11
2.3 关键问题和挑战13
2.4 趋势与展望17
2.5 认识上的误区19
2.6 本章小结19
第3章 典型应用场景20
3.1 应用场景概览20
3.2 金融服务22
3.2.1 银行业金融管理22
3.2.2 证券交易24
3.2.3 众筹投资25
3.3 征信和权属管理26
3.4 资源共享28
3.5 贸易管理29
3.6 物联网30
3.7 其他场景31
3.8 本章小结33
第4章 分布式系统核心问题34
4.1 一致性问题34
4.1.1 定义与重要性34
4.1.2 问题与挑战35
4.1.3 一致性要求36
4.1.4 带约束的一致性36
4.2 共识算法37
4.2.1 问题与挑战38
4.2.2 常见算法38
4.2.3 理论界限38
4.3 FLP 不可能原理39
4.3.1 定义39
4.3.2 正确理解39
4.4 CAP 原理40
4.4.1 定义40
4.4.2 应用场景41
4.5 ACID 原则41
4.6 Paxos 算法与 Raft 算法42
4.6.1 Paxos 算法42
4.6.2 Raft 算法45
4.7 拜占庭问题与算法45
4.8 可靠性指标48
4.8.1 几个 9 的指标48
4.8.2 两个核心时间49
4.8.3 提高可靠性49
4.9 本章小结49
第5章 密码学与安全技术50
5.1 Hash 算法与数字摘要50
5.1.1 Hash定义50
5.1.2 常见算法51
5.1.3 性能51
5.1.4 数字摘要52
5.1.5 Hash 攻击与防护52
5.2 加解密算法52
5.2.1 加解密系统基本组成53
5.2.2 对称加密算法53
5.2.3 非对称加密算法54
5.2.4 选择明文攻击55
5.2.5 混合加密机制56
5.2.6 离散对数与 Diffie–Hellman密钥交换协议57
5.3 消息认证码与数字签名57
5.3.1 消息认证码58
5.3.2 数字签名58
5.3.3 安全性59
5.4 数字证书59
5.4.1 X.509 证书规范60
5.4.2 证书格式61
5.4.3 证书信任链62
5.5 PKI 体系63
5.5.1 PKI 基本组件63
5.5.2 证书的签发63
5.5.3 证书的撤销66
5.6 Merkle树结构66
5.7 布隆过滤器67
5.8 同态加密68
5.9 其他问题70
5.10 本章小结71
第6章 比特币——区块链思想诞生的摇篮72
6.1 比特币项目简介72
6.1.1 比特币大事记73
6.1.2 其他数字货币74
6.2 原理和设计75
6.2.1 基本交易过程75
6.2.2 重要概念76
6.2.3 创新设计78
6.3 挖矿80
6.3.1 基本原理80
6.3.2 挖矿过程81
6.3.3 如何看待挖矿81
6.4 共识机制82
6.4.1 工作量证明82
6.4.2 权益证明83
6.5 闪电网络83
6.6 侧链85
6.6.1 SPV 证明85
6.6.2 双向挂钩86
6.6.3 最新进展87
6.7 热点问题87
6.7.1 设计中的权衡87
6.7.2 分叉87
6.7.3 交易延展性88
6.7.4 扩容之争89
6.7.5 比特币的监管和追踪90
6.8 相关工具91
6.9 本章小结92
第7章 以太坊——挣脱数字货币的枷锁93
7.1 以太坊项目简介93
7.1.1 以太坊项目简史94
7.1.2 主要特点95
7.2 核心概念95
7.3 主要设计97
7.3.1 智能合约相关设计97
7.3.2 交易模型97
7.3.3 共识97
7.3.4 降低攻击98
7.3.5 提高扩展性98
7.4 相关工具98
7.4.1 客户端和开发库98
7.4.2 以太坊钱包99
7.4.3 IDE100
7.4.4 网站资源100
7.5 安装客户端100
7.5.1 从 PPA 直接安装100
7.5.2 从源码编译101
7.6 使用智能合约102
7.6.1 搭建测试用区块链102
7.6.2 创建和编译智能合约104
7.6.3 部署智能合约105
7.6.4 调用智能合约106
7.7 智能合约案例:投票106
7.7.1 智能合约代码107
7.7.2 代码解析109
7.8 本章小结111
第8章 超级账本——面向企业的分布式账本112
8.1 超级账本项目简介112
8.2 社区组织结构114
8.2.1 基本结构114
8.2.2 大中华区技术工作组114
8.3 顶级项目介绍115
8.3.1 Fabric 项目116
8.3.2 Sawtooth 项目117
8.3.3 Iroha 项目117
8.3.4 Blockchain Explorer 项目117
8.3.5 Cello 项目118
8.3.6 Indy 项目118
8.3.7 Composer 项目118
8.3.8 Burrow 项目119
8.4 开发必备工具119
8.4.1 Linux Foundation ID119
8.4.2 Jira——任务和进度管理119
8.4.3 Gerrit——代码仓库和 Review管理120
8.4.4 RocketChat——在线沟通121
8.5 贡献代码121
8.6 本章小结126
实 践 篇
第9章 超级账本 Fabric 部署和使用128
9.1 简介128
9.2 本地编译安装129
9.2.1 操作系统130
9.2.2 环境配置130
9.2.3 获取代码131
9.2.4 编译安装 fabric-peer 组件131
9.2.5 编译安装 fabric-orderer 组件
|
內容試閱:
|
Preface 前言区块链和机器学习被誉为未来十年内最有可能提高人类社会生产力的两大创新科技。如果说机器学习的兴起依赖于新型芯片技术的发展,那么区块链技术的出现,则是来自商业、金融、信息、安全等多个领域众多科技成果和业务创新的共同推动。
比特币网络自横空出世,以前所未有的新型理念支持了前所未有的交易模式;以太坊项目站在前人肩膀上,引入图灵完备的智能合约机制,进一步释放了区块链技术的应用威力;众多商业、科技巨头,集合来自大型企业的应用需求和最先进的技术成果,打造出支持权限管理的联盟式分布式账本平台——超级账本……开源技术从未如今天这样,对各行各业都产生着极为深远的影响。本书在剖析区块链核心技术时,正是以这些开源项目(特别是超级账本 Fabric 项目)为具体实现进行讲解,力图探索其核心思想,展现其设计精华,剖析其应用特性。
我们在写作中秉承了由浅入深、由理论到实践的思想,将全书分为两大部分:理论篇和实践篇。前三章介绍了区块链技术的由来、核心思想及典型的应用场景。第4~5章重点介绍了区块链技术中大量出现的分布式系统技术和密码学安全技术。第6~8章分别介绍了区块链领域的三个典型开源项目:比特币、以太坊和超级账本。第9~11章以超级账本 Fabric 项目为例,具体讲解了安装部署、配置管理,以及使用 Fabric CA 进行证书管理的实践经验。第12章重点剖析了超级账本 Fabric 项目的核心架构设计。第13章介绍了区块链应用开发的相关技巧和示例。最后,本书还就热门的“区块链即服务”平台进行了介绍,并讲解应用超级账本 Cello 项目构建区块链服务和管理平台的相关经验和知识。
相信读者在阅读完本书后,在深入理解区块链核心概念和原理的同时,对于区块链和分布式账本领域最新的技术和典型设计实现也能了然于心,可以更加高效地开发基于区块链平台的分布式应用。
在本书长达两年时间的编写过程中,得到了来自家人、同事以及开源社区开发者和技术爱好者的众多支持和鼓励,在此表示感谢!
最后,希望本书能为推动区块链技术的进步和开源文化的普及做出一点微薄的贡献!
作者2017年8月于北京
|
|