坎坷的“共识机制”之路——区块链技术引卷
2020-06-08 08:52:24如果商业活动是推动人类文明发展的马车,那么价值记录就是马的四蹄。自500年前复式记账法发明以来,随着科学技术的进步,价值记录工具和方法发生了翻天覆地的变化。以区块链为代表的分布式簿记也是其中之一。本文将从阐述分配和分权的基本思想开始,引导读者了解区块链及其共识机制,以及为什么共识在区块链发挥如此重要的作用。摘要
区块链可以被视为一个分散和分布式的账簿。参与交易的各方共同维护同一个账簿记录,即每个节点保存一份完整的账簿,并确认账簿的正确性。没有一个节点可以完全控制记账的权限。它在人类会计规则和会计方法方面取得了重大突破,从而为在线价值转移提供了基础。
但是没有绝对可靠的分布式对等系统。由于组成分布式对等系统的节点的不同地理位置以及网络延迟的存在,节点之间的通信总是具有不可预测的延迟。因此,不同的节点对它们接收消息的顺序有不同的判断。这种消息处理模式称为异步模式。除了节点通信过程中的意外,有时组成网络本身的节点也会出现故障,表现出不可预知的行为。它的存在是设计开放的区块链网络共识机制时必须考虑的一个因素。
FLP不可能性原理表明,在异步分布式系统中没有能够容错的狭义一致算法。CAP原则表明,分布式系统最多只能满足一致性、可用性和分区容错两个特征。
根据区块链网络的特点,我们提出了一个不同于传统分布式系统的CAP定义。以BTC及其一致性机制工作量证明(PoW)为例,分析其一致性机制的原理和过程,并从密码学、概率论和博弈论的角度说明最终一致性的实现。为了满足实际应用场景的需要,PoW是如何在一致性、可用性和分区容忍度之间实现完美平衡的。我们还将分析节点可能在区块链网络上发起的恶意攻击,并阐明PoW具有一定的抵抗常见恶意攻击的能力。
最后,基于对PoW的分析,我们提炼出区块链共识机制的八个关键要素,这些要素决定了共识机制的主要特征。在后续文章中,我们将进一步介绍主流共识机制及其特点。
1、什么是区块链:关于分布式系统和分散化的随机演讲
会计方法和信托
分布式和非集中式的集成
2、分布式对等系统中的通信和共识
没有绝对可靠的分布式对等系统
分布式系统没有完美的确定性一致性算法。
CAP原则与区块链共识机制
3、电源工作负载证明——一致性和可用性的平衡
BTC在实际应用中实现一致性
密码学是功率一致性的基础
最长链原理与“矿工”的博弈
如何防止拜占庭式的失败打破共识
4、区分不同共识机制的八个关键要素
会计方法和信托
如果商业活动是推动人类文明发展的马车,那么价值记录就是马的四蹄。14世纪后期,复式簿记诞生于意大利,文艺复兴的诞生地,——年,中世纪欧洲的海上贸易中心。500多年前的这项发明也是现代会计的重要基础。目前,最常用的借贷记账法是基于一个简单的身份:资产=权益和负债。交易的本质是价值的转移。复式簿记使资金转移过程的记录更清楚,也更容易核实账簿的正确性。与“保持流动账户”相比,它增加了不诚实簿记员的欺诈成本。
随着20世纪电子计算机的发明,人类会计工具开始向数字化发展。随着数据库技术和互联网的普及,电子支付已经成为可能。数据的规模和处理效率也有了很大提高,但背后的复式记账法没有改变。在传统的记账方法中,账簿由一个记账员维护。这种由单一中央组织存储、记录和维护数据的模式被认为是集中式的。账簿的正确性和廉洁性由记账人的声誉、信用或资产来保证。
在集中记账系统中,交易双方都维护各自的账簿,因此产生了一些问题:如何处理双方账簿不一致的情况?我们如何确保双方不会为了自己的利益篡改账目?为了解决这些信任问题,专业组织仍然需要审计http://www . sogo.com的账户,这带来了非常高的额外成本。因此,参与交易的各方共同保持相同的记账方法,这也是分布式记账的思想,应运而生。
分布式和非集中式的集成
区块链工业界提到的“分散分布”概念与传统计算机科学中的分布式计算略有不同。分布式计算系统通常旨在解决以下问题:
一般来说,分布式系统是由多个工作单元组成的,这些工作单元可以相互通信,可以实现“最小功能”,并且可以共同工作来实现相同的任务。分布式系统中的一个工作单元称为节点。在理想的分布式系统中,用户可以通过任何节点使用系统的全部功能。
与传统的分布式系统相比,区块链有什么特点?
如前所述,区块链的最初目的是进行分散的分布式簿记,这要求参与交易的所有各方(每个节点)共同记录相同的账簿,这意味着每个节点保存一份完整的账簿副本,并可以检查账簿的正确性。因此,我们可以将区块链视为一个分布式系统,其中多个具有会计功能的节点一起工作,以维护特定账簿的完整记录。