区块链核心算法解析
出版信息
【瑞士】Roger Wattenhofer(罗格.瓦唐霍费尔) / 陈晋川、薛云志、林强、祝庆 / 电子工业出版社 / 2017-8 / 59.00
内容简介
《区块链核心算法解析》介绍了构建容错的分布式系统所需的基础技术,以及一系列允许容错的协议和算法,并且讨论一些实现了这些技术的实际系统。
《区块链核心算法解析》中的主要概念将独立成章。每一章都以一个小故事开始,从而引出该章节的内容。算法、协议和定义都将以形式化的方式描述,以便于读者理解如何实现。部分结论会在定理中予以证明,这样读者就可以明白为什么这些概念或算法是正确的,并且理解它们可以确保实现什么。其他的大部分内容将以评论的方式出现。这些评论将讨论各种各样非正式的思考,并且为后续内容做好铺垫。就算不阅读这些评论,读者们也可以掌握章节的精髓。此外,为了便于读者寻根溯源,每一章也会讨论相关技术的发展历史。
《区块链核心算法解析》将介绍不同的模型(以及模型的组合),以适用于不同的场景。《区块链核心算法解析》关注的是实用的协议和系统。换句话说,我们在选择概念时,不会根据这些概念是否看起来有意思,而是根据它们是否有实际的价值。
不管怎样,希望你在本书中找到乐趣!
目录
第1章 绪论 1
1.1 分布式系统是什么1
1.2 本书概览.2
第2章 容错问题和Paxos 算法6
2.1 客户端/服务器.6
2.2 Paxos11
延申阅读:Paxos漫谈 21
第3章 共识机制 27
3.1 两个朋友约饭局.27
3.2 共识.28
3.3 共识的不可能性.29
3.4 随机共识.36
3.5 共享硬币.41
第4章 拜占庭协定 46
4.1 有效性. 47
4.2 有多少个拜占庭节点.49
4.3 国王算法.52
4.4 “轮”数的下界.55
4.5 异步模式下的拜占庭协定算法.56
第5章 认证的协定 62
5.1 利用认证的协定.62
5.2 Zyzzyva 65
第6章 仲裁系统 81
6.1 负载和工作量82
6.2 网格仲裁系统85
6.3 容错.88
6.4 拜占庭仲裁系统(Byzantine Quorum Systems) 92
第7章 最终一致性以及比特币101
7.1 一致性、可用性,以及分区. 102
7.2 比特币104
7.3 智能合约(Smart Contracts)113
7.4 弱一致性.117
延伸阅读:PoW vs. BFT 123
第8章 分布式存储 128
8.1 一致性哈希(Consistent Hashing)128
8.2 超立方体网络(Hypercubic Networks)131
8.3 DHT & Churn140