如果说商业活动是驱动人类文明发展的一架马车,那么价值记录则是马匹的四只蹄铁。自人类500年前发明复式记账以来,价值记录 工具 、方法随着科技的进步发生了一次次翻天覆地的变化,以区块链为代表的分布式记账也是其中之一。本文将从阐述分布式和非中心化的基本思想开始,带领读者了解区块链及其共识机制,为什么共识在区块链里得以扮演如此重要的角色。
摘要
区块链可以看作一个非中心化分布式的账本,参与交易的各方共同维护着同样的账本记录,这意味着各节点都保存账本的完整副本,并认可账本的正确性,没有一个节点能够完全控制记账的权利。它实现了人类记账规则与记账方式的重要突破,从而为线上价值转移提供了基础。
但绝对可靠的分布式对等系统是不存在的。由于组成分布式对等系统各节点的地理位置不同、网络延迟的存在,节点间的通信总是存在不可预测的延迟,因此不同节点对其接收到消息的先后顺序有不同的判断,这种消息处理模式称为异步模型。除了节点通信过程会发生意外,有时组成网络本身的各节点也会发生故障,表现出不可预测行为,它的存在是设计开放式区块链网络共识机制时必须考虑的因素。
FLP不可能原理表明:异步的分布式系统中不存在能容错(Fault Tolerant)的狭义共识算法。CAP原理表明: 分布式系统最多只能同时满足一致性、可用性和分区容错性中的两项特性。
我们根据区块链网络的特点作出有别于传统分布式系统的CAP定义,并以BTC及其共识机制工作量证明(PoW)为例, 分析其共识机制的原理与过程,从密码学、概率论、博弈论的角度说明最终一致性的可实现性。
以及为了满足实际应用场景的需求,PoW如何在一致性、可用性和分区容忍性实现完美平衡。我们还将分析节点可能对区块链网络发动的恶意攻击,并阐明PoW有一定抵御常见的恶意攻击的能力。
最后我们在分析PoW的基础上,抽象出区块链共识机制的八个关键要素,它们决定了共识机制的主要特征。在专题后续文章中,我们将进一步介绍主流的共识机制及其特点。
目录
1
什么是区块链:漫谈分布式系统与非中心化
1.1 记账方式与信任
1.2 分布式与非中心化的融合
2 分布式对等系统内部的通信与共识
2.1 不存在绝对可靠的分布式对等系统
2.2 “狼人杀”与拜占庭将军们
2.3 分布式系统不存在完美的确定性共识算法
2.4 CAP原理与区块链共识机制
3 PoW工作量证明——一致性与可用性的权衡
3.1 BTC实现实际应用中的一致性
3.2 密码学是PoW一致性的基础
3.3 最长链原则与“矿工”间的博弈
3.4 PoW如何防止拜占庭故障破坏共识
4 区分不同共识机制的八个关键要素
正文