LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 区块链资讯 > 科普|区块链的共识机制(上)

科普|区块链的共识机制(上)

2019-12-19 U网资讯 来源:区块链网络

如果说共识是区块链的基础,那么共识机制就是区块链的灵魂,因为这决定了系统中各个节点的责任和义务,继而会影响整个系统的安全性和可靠性。目前已经有了十多种共识机制算法,最初比特币区块链选用了一种依赖节点算力的工作量证明共识(Proof of Work,PoW)机制来保证比特币网络分布式记账的一致性。

之后随着区块链技术的不断演进和改进,研究者陆续提出了一些不过度依赖算力而能达到全网一致的算法,比如权益证明(Proof of Stake,PoS)机制、授权股份证明(Delegated Proof of Stake,DPoS)机制、实用拜占庭容错(Practical Byzantine Fault Tolerance,PBFT)算法等等。当然,没有一个算法是完美无缺的,每个算法都有其适用场景。下面我们对这几种共识算法进行简单介绍。

W9qiox2JGEza2eMLRzfjiJXy7dEzekFwLxirrGwa.jpeg

PoW(工作量证明机制)

Pow机制诞生于1997年Adam Back设计的Hashcash系统,它最初被创造出来用于预防邮件系统中漫天遍地的垃圾邮件。2009年,中本聪将PoW机制运用于比特币区块链网络中,作为达成全网一致性的共识机制。从严格意义上讲,比特币中所采用的是一种可重复使用的Hashcash工作证明,使得生成工作证明量可以是一个概率意义上的随机过程。

在该机制中,网络上的每一个节点都在使用SHA256哈希算法运算一个不断变化的区块头的哈希值。共识要求算出的值必须等于或者小于某个给定的值。在分布式网络中,所有的参与者都需要使用不同的随机数来持续计算该哈希值,直到达到目标为止。当一个节点得出了确切的值,其他所有的节点必须相互确认该值的正确性。

之后,新区块中的交易将被验证以防欺诈。然后,用于计算的交易信息的集合会被确认为认证结果,用区块链中的新区块表示。在比特币中,运算哈希值的节点被称作“矿工”,而PoW的过程被称作“挖矿”。由于认证的计算是一个耗时的过程,所以也提出了相应的激励机制(例如向矿工授予一小部分比特币)。

总的来说,工作量证明就是对于工作量的证明,每个区块加入链上,必须得到网络参与者的同意验证,矿工对它完成了相对应的工作量。

PoW的优点是完全的去中心化和分布式账簿,节点自由进出,避免了建立和维护中心化信用机构的成本。只要网络破坏者的算力不超过网络总算力的50%,网络的交易状态就能达成一致。缺点也很明显,即消耗资源:挖矿行为造成了大量的资源浪费,激励机制也可造成矿池算力的高度集中,背离了当初去中心化设计的初衷。同时PoW达成共识的周期也比较长,比特币网络会自动调整目标值来确保区块生成过程大约需要10分钟,每秒交易量不超过7笔,因此它不太适合高频交易商业场景。

PoW共识算法(挖矿)的数学本质是,为了创建一个新的块,必须通过暴力求解,找到满足特定要求(如不大于预先设定的某一数值)的SHA256哈希值。由于哈希函数的特性,使得找到这种哈希值只能用穷举的方式进行,因而谁的计算能力越快、谁的算力越强,理论上就能越快找到该随机数,才能越快解决数学问题,也就是发现了新的区块。

PoW 机制的优点是完全的去中心化,节点自由进出。其缺点是:一方面矿池的出现, 一定程度上违背了去中心化的初衷,同时也使得占比51%的攻击成为可能,影响其安全性;另一方面每次达成共识需要全网共同参与运算,性能效率低。截至2016年4月,比特币网络的算力达到了1300PHS,即每秒完成13331兆亿次SHA256运算,而最终这些计算没有任何实际意义或科学价值。

在最不乐观的情况下,到2020年,比特币网络的耗电量将达到丹麦整个国家的水平。但是从另一方面来看,由于投入巨大,促使攻击比特币区块链代价极高,从来保证了系统的安全性,因而比特币也就是人类目前构建的最安全的数据库。

PoS(权益证明机制)

Pos的思想源于Nick Szabe,并由 Quantum Mechanic 2011 年在 bitcointalk 首先提出。作为Pow的一种升级共识机制,用于解决其能耗问题,主要应用在Peercoin和以太坊等。

它不要求证明者完成一定数量的计算工作,而是根据证明者所占代币的比例和时间,等比例地降低挖矿难度,从而加快寻找随机数的速度,因此节点记账权的获得难度与节点持有的权益成反比。简单来说,PoS 就是把PoW由算力决定记账权变成由持有币数以及持有的时间来决定记账权。

基于拥有货币数量多的节点实施网络攻击的可能性更低的假设,PoS不需要节点在不受限制的空间中找到一个随机数,而是要求节点提供拥有一定数量的代币证明来获取竞争区块链记账权的一种分布式共识机制。如果单纯依靠代币余额来决定记账者必然使得富有者胜出,导致记账权的中心化,降低共识的公正性,因此不同的PoS机制在权益证明的基础上,采用不同方式来增加记账权的随机性来避免中心化。

其中,Blackcoint 使用随机选择来预测下一个创建者,而 Peercoin 则倾向于基于币龄来选择。Peercoin 首次开创性地实现了真正的股权证明,它采用工作量证明机制发行新币,采用股权证明机制维护网络安全,这也是“虚拟货币”历史上的一次创举。同比特币网络要求证明人执行一定量的工作不同,该机制只需要证明人提供一定数量“数字货币”的所有权即可。

在股权证明机制中,每当创建一个区块时,矿工需要创建一个称为“币权”的交易,这个交易会按照一定的比例预先将一些币发给矿工,然后股权证明机制根据每个节点持有代币的比例和时间,依据算法等比例地降低节点的挖矿难度,以加快节点寻找随机数的速度,缩短达成共识所需的时间。

与PoW机制相比,PoS机制在很大程度上减少了数学运算带来的能耗,效率也得到了相应的提升。但是缺点也很明显,由于挖矿成本接近于零,因此可能会遭受攻击,安全性有待验证,另外拥有代币数量达的节点获得记账权的概率更大,会使得网络的共识受少数富裕账户支配,从而失去公正性。且作为PoW的升级版本,PoS在本质上仍然需要网络中的节点进行挖矿运算,所以它同样难以应用于很多商业领域。

—-

编译者/作者:U网资讯

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...