浅谈共识机制(POW、POS、DPOS、PBFT及POP)

共识机制有什么用?

它就像一个国家的法律,维系着区块链世界的正常运转。

在区块链上,每个人都会有一份记录链上所有交易的账本,链上产生一笔新的交易时,每个人接收到这个信息的时间是不一样的,有些想要干坏事的人就有可能在这时发布一些错误的信息,这时就需要一个人把所有人接收到的信息进行验证,最后公布最正确的信息。

共识机制的背景

加密货币都是去中心化的,去中心化的基础就是P2P节点众多,那么如何吸引用户加入网络成为节点,有那些激励机制?同时,开发的重点是让多个节点维护一个数据库,那么如何决定哪个节点写入?何时写入?一旦写入,又怎么保证不被其他的节点更改(不可逆)?回答这些问题的答案,就是共识机制。

一、POW

(Proof of Work):工作量证明机制。

基本原理:第一代共识机制,比特币的基础。理解起来,很简单,就是“按劳取酬”,你付出多少工作量,就会获得多少报酬(比特币等加密货币)。在网络世界里,这里的劳动就是你为网络提供的计算服务(算力x时长),提供这种服务的过程就是“挖矿”。假如是真的矿场,显然在均匀分布的前提下,人们“挖矿”所得的比重与各自提供的算力成正比,通俗一点就是,能力越强获得越多。

优点:

  1. 机制本身当然很复杂,有很多细节,比如:挖矿难度自动调整、区块奖励逐步减半等,这些因素都是基于经济学原理,能吸引和鼓励更多人参与。
  2. 理想状态,这种机制,可以吸引很多用户参与其中,特别是越先参与的获得越多,会促使加密货币的初始阶段发展迅速,节点网络迅速扩大。在CPU挖矿的时代,比特币吸引了很多人参与“挖矿”,就是很好的证明。
  3. 通过“挖矿”的方式发行新币,把比特币分散给个人,实现了相对公平。

缺点:

  1. 算力是计算机硬件(CPU、GPU等)提供的,要耗费电力,是对能源的直接消耗,与人类追求节能、清洁、环保的理念相悖。不过,如果非要给“加密货币”找寻“货币价值”的意义,那么这个方面,应该是最有力的证据。
  2. 这种机制发展到今天,算力的提供已经不再是单纯的CPU了,而是逐步发展到GPU、FPGA,乃至ASIC矿机。用户也从个人挖矿发展到大的矿池、矿场,算力集中越来越明显。这与去中心化的方向背道而驰,渐行渐远,网络的安全逐渐受到威胁。有证据证明Ghash(一个矿池)就曾经对赌博网站实施了双花攻击(简单的说就是一笔钱花两次)。
  3. 比特币区块奖励每4年将减半,当挖矿的成本高于挖矿收益时,人们挖矿的积极性降低,会有大量算力减少,比特币网络的安全性进一步堪忧。

详细的解析可以参考 区块链共识算法-POW这篇文章。

二、POS

(Proof of Stake):股权证明机制。

基本原理
  1. 这是点点币(PPC)的创新。没有挖矿过程,在创世区块内写明了股权分配比例,之后通过转让、交易的方式(通常就是IPO),逐渐分散到用户手里,并通过“利息”的方式新增货币,实现对节点的奖励。以太坊是POW跟pos结合。

  2. 简单来说,就是一个根据用户持有货币的多少和时间(币龄),发放利息的一个制度。现实中最典型的例子就是股票,或者是银行存款。如果用户想获得更多的货币,那么就打开客户端,让它保持在线,就能通过获得“利息”获益,同时保证网络的安全。

优点:

  1. 节能。不用挖矿,不需要大量耗费电力和能源。
  2. 更去中心化。首先说,去中心化是相对的。相对于比特币等PoW类型的加密货币,PoS机制的加密货币对计算机硬件基本上没有过高要求,人人可挖矿(获得利息),不用担心算力集中导致中心化的出现(单用户通过购买获得51%的货币量,成本更高),网络更加安全有保障。
  3. 避免紧缩。PoW机制的加密货币,因为用户丢失等各种原因,可能导致通货紧缩,但是PoS机制的加密货币按一定的年利率新增货币,可以有效避免紧缩出现,保持基本稳定。比特币之后,很多新币采用PoS机制,很多采用工作量证明机制的老币,也纷纷修改协议,“硬分叉”升级为PoS机制。

缺点:

  1. 纯PoS机制的加密货币,只能通过IPO的方式发行,这就导致“少数人”(通常是开发者)获得大量成本极低的加密货币,在利益面前,很难保证他们不会大量抛售。
  2. PoS机制的加密货币,信用基础不够牢固。
  3. 为解决这个问题,很多采用PoW+PoS的双重机制,通过PoW挖矿发行加密货币,使用PoS维护网络稳定。或者采用DPoS机制,通过社区选举的方式,增强信任。

三、DPOS

(Delegated Proof of Stake):授权股权证明机制

基本原理

无人控制的公司发行股份,产生利润,并将利润分配给股东。实现这一切不需要信任任何人,因为每件事都是被硬编码到软件中的。通俗点讲就是:公司股份制,股东持有这些公司的股份,公司为股东产生回报,无需挖矿。

优点:

  1. 能耗更低。DPoS机制将节点数量进一步减少到101个,在保证网络安全的前提下,整个网络的能耗进一步降低,网络运行成本最低。
  2. 更加去中心化。目前,对于比特币而言,个人挖矿已经不现实了,比特币的算力都集中在几个大的矿池手里,每个矿池都是中心化的,就像DPoS的一个受托人,因此DPoS机制的加密货币更加去中心化。PoS机制的加密货币(比如未来币),要求用户开着客户端,事实上用户并不会天天开着电脑,因此真正的网络节点是由几个股东保持的,去中心化程度也不能与DPoS机制的加密货币相比。
  3. 更快的确认速度。每个块的时间为10秒,一笔交易(在得到6-10个确认后)大概1分钟,一个完整的101个块的周期大概仅仅需要16分钟。而比特币(PoW机制)产生一个区块需要10分钟,一笔交易完成(6个区块确认后)需要1个小时。点点币(PoS机制)确认一笔交易大概也需要1小时。

缺点:

  1. 投票的积极性并不高。绝大多数持股人(90%+)从未参与投票。这是因为投票需要时间、精力以及技能,而这恰恰是大多数投资者所缺乏的。
  2. 对于坏节点的处理存在诸多困难。社区选举不能及时有效的阻止一些破坏节点的出现,给网络造成安全隐患。

四、PBFT

Practical Byzantine Fault Tolerance,实用拜占庭容错算法。

拜占庭共识算法(Practical Byzantine Fault Tolerance- PBFT)也是一种常见的共识证明。它与之前两种都不相同,PBFT以计算为基础,也没有代币奖励。由链上所有人参与投票,少于(N-1)/3个节点反对时就获得公示信息的权利。

优点: 算法的可靠性有严格的数学证明,具备(n-1)/3容错性

缺点:当有1/3或以上记账人停止工作后,系统将无法提供服务。

五、POI

基本原理

PoI(Proof of Importance)重要度证明共识算法引了账户重要程度的概念,使用账户重要性评分来分配记账权的概率。

**优点:**低能耗,速度快,公 平

**缺点:**缺少社区共识,账户 重要性≠设备贡献度

六、POP

POP(ProofofParticipation)算法,POP 将 POI和DPOS 的思想结合

基本原理

这是标准链(CZR)的创新,基于账户参与度的 PoP(ProofofParticipation)算法,POP 将 POI 和DPOS 的思想结合,既能确保对设备的公平性,又拥有社区的共识。

优点:低功耗、速度更快,更加安全,既能确保公平性,又拥有社区的共识。

总结

  1. POW 工作量证明机制,类似于按劳分配。
  2. POS 股权证明机制。 持有股票的人,就有对应的权利,持有的越多,权利越大 。
  3. DPOS 授权股权证明机制。类似于董事会, 董事会成员数量有限,,由大家选举产生, 被选中的董事会成员可以行使权利。
  4. PBFT这是一种基于消息传递的一致性算法,算法经过三个阶段 预准备(pre-prepare)、准备(prepare)和确认(commit)达成一致性,这些阶段可能因为失败而重复进行。
  5. POI本质都是POS的变种,就一带而过了。
  6. POP是前边所有的几种的升级。

从机制设计上来看. POW 机制更加强调去中心, 更加强调对等.。而DPOS 则是有一个明显的中心, 通过带来部分中心,来得到效率的提升。哪一种机制更好, 有待时间的验证. POW 已经运行快10年, 电力耗费已经非常严重. POP的出现, 有可能让记账这件事情更经济效率, 从而支撑起更多大规模的协作体系。

参考:
http://baijiahao.baidu.com/s?id=1596184609683656426&wfr=spider&for=pc

https://blog.csdn.net/lsttoy/article/details/61624287

https://www.jianshu.com/p/b23cbafbbad2?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io

展开阅读全文

没有更多推荐了,返回首页