区块链大学区块链研习社区块链

共识算法指南:什么是共识机制?

2018-10-10  本文已影响19人  区势传媒

这个共识算法指南着眼于一个常见的问题,什么是共识机制,以及为什么区块链需要共识机制

介绍区块链

区块链技术被广泛认为是一种颠覆性的创新,可能会彻底改变我们做事的方式。事实上,许多人将区块链与20世纪90年代的互联网引入进行了比较,认为这对人类来说是一项突破性的进步。

评估互联网革命性影响的试金石得灵魂拷问:“没有互联网,我们真的能生存下去吗?”

2008年,比特币的诞生引领了一场技术革命,以一种前所未见的方式威胁着原有的的社会结构。区块链——比特币的底层技术,是一种全新的系统,可以在一个开放、去中心化的网络中实现无信任、透明和安全的交易。突然间,对拥有垄断控制的中心或中介和实体感受到威胁。密码学和计算机科学的发展已经融合为一种叫做区块链的强大的新技术,它将重新定义传统的系统和网络。

为了让我们真正理解这项技术的潜力,让我们揭示区块链的核心组成部分,它可以在没有中央权威或实体的情况下运行: 共识机制。本指南将致力于探讨所有有关共识机制的内容。在我们进一步讨论之前,让我们看看区块链和传统系统之间的区别,理解共识机制的必要性。

中心化vs去中心化系统

中心化系统:在集中系统中,只有中心人物有权维护和更新数据库。所有数据流由中央机构控制和管理; 它们决定数据库中需要,相关或允许哪种类型的数据。在维护数据库时,中心拥有根据自己设置的规则和策略添加、删除或更新数据的所有权。在网络中连接的所有其他节点(设备)只有得到中心授权,才能对部分数据进行访问。

中心化系统的一个例子是Facebook和谷歌,它们在集中的数据库中每秒收集大量的用户数据。

简单地说,一切决定都是由中央机构说了算。

去中心化系统:另一方面,一个公共的、去中心化化的系统不依赖于任何单一的权威,而是自我监管。区块链技术使用去中心化的网络架构。变成任何人都可以是节点,每个节点都是服务器。全节点在层次结构中是平等的,这意味着没有节点或实体比其他节点或实体具有更多的访问权限。分布式网络所有用户共同参与,实时验证和证明大量的事件。那么与分布式网络有关的关键问题就是:

如何在分布式网络中做出决策?

如果没有中央权力机构,所有参与者如何同意数据库的当前状态?

我们如何确认每个人的数据库中只有一个版本的真相?

我们怎样才能确保网络上的交易是真实可信?

我们如何确保每个人共同努力保护网络,没有人会采取不利行动?

在计算机科学领域,这些与分布式系统相关的问题已经得到了广泛的探索和讨论,但还没有可行的解决方案。区块链技术的出现提供了解决这些关键问题的办法——通过共识机制。在我们讨论共识机制之前,让我们深入研究一下在区块链出现之前没有解决方案的分布式算法问题。

拜占庭将军问题: 分布式算法的经典问题

分布式算法系统的一个经典问题被称为拜占庭将军问题。

这可以通过几个拜占庭军队的类比来理解,他们正在围攻一个敌人的城堡。拜占庭军队分为几个营,每个营由将军控制。将军们通过信使互相交流。

为了取得胜利,所有的将军必须齐声进攻敌人的城堡。因此,为了让拜占庭军队攻击敌人的城堡并取得胜利,所有将军必须达成共识。然而,有一些风险存在:

并非所有的将军都值得信赖;有些人可能是叛徒

并不是所有的信使都值得信赖;有些人可能是叛徒

信使可能会被敌人抓住,然后被假信使代替来传递假消息

下面是问题的直观表示:

面对可能危及胜利的多重风险,需要有一定的流程来保证:

消息的真实性: 消息必须容易验证,以确保它是真实的,没有被更改或更改

统一:所有将军都需要集体共识参与战斗计划

容错:允许一些叛徒或坏人存在但不能破坏整个过程

这些是分布式算法网络必须解决的风险和考虑因素。中心化网络的参与者(称为节点)必须都同意一组协议和规则达成共识,每个节点都同意添加到数据库的每个事务的有效性。这并不容易,但是密码术和计算机科学的进步——通过区块链技术——使这种可能性成为可能。解决方案是通过区块链的共识机制实现的。

什么是共识机制?

让我们来分解这两个部分:

共识: 所有参与者的一致意见,意味着每个人都接受并支持这些决定。

机制: 建立的过程由明确的规则组成,以实现特定的目标

共识机制是指以去中心化的方式就网络的状态达成统一协议的过程。也被称为共识算法,有助于验证和验证信息被添加到分类账簿,确保只有真实的事务记录在区块链上。

因此,共识机制负责安全地更新分布式网络中的数据状态。

已经硬编码到协议中的规则确保在全球计算机网络中总是能找到唯一的数据来源并达成一致。这些规则保护整个网络,实现无需信任的网络,而无需中央数据或中介。

共识机制的目标

让我们来看看共识机制实现的不同目标:

达成一致: 共识机制试图解决围绕分布式系统的最复杂问题之一:数据的真实性和准确性达成统一协议。与中心化系统不同,用户不必信任系统中的任何人。嵌入网络的协议规则确保了公共分类帐的状态总是随着大众的共识而更新。

防止双花攻击:共识机制防止任何用户重复消费,这是在比特币出现之前一直存在的数字货币问题。“双花攻击”指的是数字货币有可能被两次消费。区块链共识机制中嵌入的协议规则确保只有有效和真实的交易才记在公共透明的账簿中。随着矿工算力扩大以保护交易(以及网络),双花攻击或改变交易的指数变得越来越难。

激励机制:创建一个自我调节的无信任系统需要调动网络参与者的积极性。共识机制通过激励好的行为,在某些情况下,惩罚坏的行为者来实现这一点。比特币(Bitcoin)使用的第一种共识机制(工作量证明(Proof-of-Work)),通过奖励比特币(Bitcoins)给矿工,奖励他们每一笔交易的担保和验证。任何针对网络的行动(通过黑客攻击或双花攻击)都需要大量的算力和钱财,这些资源将更好地用于为系统工作(因为他们的努力会得到回报),而不是针对系统。

公平公正: 区块链的去中心化的一个重要优势是分配授权,任何人都能在同一个基础上参与进来。公共区块链的开源特性使任何人都可以检查和验证底层源代码对网络中的所有参与者是否公平。如果你愿意,就可以轻松地设置一个节点并成为参与者甚至矿工。简而言之,共识机制确保区块链不存在区别对待。

容错机制:在算法领域,容错是指分布式系统在面临威胁或故障时仍能无限运行。共识机制确保区块链是容错的,因此是可靠和一致的。

共识算法比较

在加密货币领域中有许多具有不同特性和特性的共识算法模型,以分布式的方式实现共识。第一个分布式共识机制是工作证明机制(POW),由中本聪(Sataoshi Nakamoto)在2018年末创建比特币时首创。

POW要求矿工们相互竞争,使用先进的计算硬件来解决问题。胜出的矿工必须有“证据”证明他已经完成了挖矿,这样他们就有权在公共账簿(区块链)上添加新的交易,并因此获得奖励。矿工的算力越高,他赢得采矿比赛的可能性就越大。参与者的集体算力保证了整个网络的安全。

尽管POW在产生分布式共识和保护分散网络方面非常有效,但这个过程是能源密集型的,而且对环境不友好。不仅如此,可扩展性也是比特币和区块链技术的一大关注点。正因如此,人们曾多次尝试设想不同的共识模型,以解决其弱点。事实上,这项技术的初期阶段就能达到令人兴奋的程度,每个共识算法都有不同的优点和权衡。

让我们来比较一下在加密货币行业广泛使用的不同共识机制:

​我们比较了区块链空间中使用的5种最流行的共识机制的特性。值得注意的是,几乎所有比特币之后的共识模型都更加节能,从而证明在不需要大量计算和电力资源的情况下仍然可以有效地达成共识。还有许多其他的共识机制,如上面所示,是主要类别的变体。

请继续关注,我们将后续解释这些共识机制是如何运作的!

本文来源:区势传媒  责任编辑:Smith

区势传媒是一家“研究型媒体”,专注于区块链经济和数字货币理论研究,旨在让一部分人先看懂“区势”。更多区块链信息请关注区势传媒www.55coin.com,项目推广、商务合作请联系微信号:qscm55coin。

上一篇下一篇

猜你喜欢

热点阅读