区块链中的POW、POS、DPOS共识算法及其优缺点

区块链中的共识是需要在整个生态都认可的,所有的角色不论是生产者、消费者、矿工等都遵循的一个奖惩机制。那么共识有了,接下来就是要说明“共识算法”,共识算法是决定了贡献者的奖励与权益。常见的共识算法有:POW、POS、DPOS.

1.POW:proof of work(工作量证明)。比特币在Block的生成过程中使用了POW机制,一个符合要求的Block Hash由N个前导零构成,零的个数取决于网络的难度值。要得到合理的Block Hash需要经过大量尝试计算,计算时间取决于机器的哈希运算速度。当某个节点提供出一个合理的Block Hash值,说明该节点确实经过了大量的尝试计算,当然,并不能得出计算次数的绝对值,因为寻找合理hash是一个概率事件。当节点拥有占全网n%的算力时,该节点即有n/100的概率找到Block Hash。POW是最早的共识机制,也是比特币为代表的共识算法。POW是通过一定的工作量,来获得相对应的奖励。用工作量来证明自己对社区的贡献,从而得到奖励,简单理解就是“多劳多得”。换句话说,如果你的算力越高,那么你获得的挖矿时间就会相对缩短,并且获得代币的奖励几率也就更大。一开始大家用普通笔记本电脑就可以挖矿了,后面有人为了抢奖励于是用更快的电脑来挖矿,随着比特币价格往上涨,大家争相升级设备去挖矿。短短时间经历了从一开始的PC、显卡、矿机、集群再到矿池挖矿。所谓的:“矿池”就是有一个大的基地,里面放置了大量矿机在挖矿,挖到的矿再经过体系内进行分配,一般是谁出的资源多,谁占多点。

优点:其算法采用了目前行业内大家普遍认可的寻找随机数,比较简单且容易实现。同时就是安全性非常的高,因为犯错的成本很高,所以也就导致了比特币安全运行十年依然没有出现任何大的系统隐患。

缺点:因为矿机设备需要耗费了大量的电力和水力,处理效率比较低。现在有矿池的出现,算力集中在个别几家,那也就可能他们的算力超过全网的51%,就有做坏事的条件了,比如强行分叉一条新的链。随着大矿池的出现,也就越来越中心化。违背了区块链的初衷。(BTC.COM,Antpool,ViaBTC前三大矿池,已经占到了全网52.4%的算力水平。)

2.POS:proof of stake(权益证明)。因为POW的越来越中心化,大家就开始心怀忌惮,于是虚拟货币爱好者开始研究另一种共识机制POS。POS也称股权证明,是通过持币而产生利息,并且对于验证人和节点进行奖励。对于获得的奖励,不是通过算力挖矿,而是通过持币而产生利息。判断标准是币龄,币龄=币量x持有天数。这是根据你持有货币的量和时间,给你发利息的一个制度。当你获得了利息以后,你的所有币龄将被清空,你的持币时间将从0重新算起。这个机制很像你在银行存钱,银行会根据你的数字货币资产情况来告诉你到底适合哪一种,并且根据你资本的大小支付给你相对应的利息。

优点:矿工不需要去拼算力,而且也不会浪费太多的算力,这样间接性的就会缩短达成共识的时间。性能上会比POW要来的高。

缺点:拥有代币的大户可以坐享其成,而且所有参与者可以持币拿利息。卖币的人也会少了,大家想着存着币拿利息,也不利于流动性。还有一个间接的危险,就是会吸引黑客攻击大量币的钱包。

3.DPOS:delegated proof of stake(委托权益证明)。最近很火热的币叫“EOS”,想必大家都有所耳闻,EOS的共识算法就是用DPOS委托权益证明。DPOS与POS其实差别不大,只是DPOS 选择了一些节点代表来参与以后的交易验证和记账。我们可以把它想象成是“人民代表大会”,社区选择少数可以代表的人,这些人代表整个社区去做投票记账的事。EOS有21个节点(称为:超级节点)。

优点:继承了POS的有钱且比POS更快的效率和更高的性能。

缺点:为了性能,对去中心化做了一个妥协。比如EOS来说,就21个超级节点,那么这个区块链网络已经不是真正意义上的“去中心化”了,反而变成了“弱中心”或者说“部分去中心化”。

--end--

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180619B0LDOS00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券