写在前面
不同的区块链有很多不同的设计。其中,共识机制是我们经常提到的一个区块链术语,也是区块链的核心机制。
尤其对于公链来说,共识机制是公链的关键,TVB今天就聊一聊为什么共识机制是公链的关键。
真实性保障
区块链我们都知道是一个分布式的网络,这个网络上有很多的节点组成,区块链上发行的交易也好,其他DAPP的数据也好,是会写入这个分布式网络的,会存储在这些节点上。无论是全节点也好,还是DPOS机制的若干个有限节点也好。
那么问题就来了。如何把信息写在多个节点服务器上呢?是服务A先写,还是服务器B先写呢?
如果存在分歧的话,谁说得算呢?
这时候就需要一个机制来事先规定好规则,在存储数据时,按照这个规则来执行。当然,这个规则是通过算法来现实的,所以共识机制也被称为共识算法。
比特币POW机制下,服务器会去计算一道难度相同、但题目不同的数学题。这其中有一定的随机性,哪个服务器先算出来,哪一个计算机负责将最近时间内的交易信息打包,率先写入自己的服务器中,这个行为被称为出块。然后呢,其他的服务器当然也收到了这些交易请求,然后就会去验证出块的信息的正确性,当超过6个服务器确认正确以后,其他的服务器就可以跟随着去记录这个信息。
看懂了吧。这个机制,是记账(存储数据)的方法。这种记账方式会影响到区块链上信息的真实性。如果这种机制不科学,或者存在漏洞,就会使区块链上的信息不真实。
区块链之所以受到人们的推崇,就是因为区块链上的信息真实不可篡改。可是,如果区块链上信息的真实性有问题,那区块链也就失去了本身的意义。
POW机制下就存在一个信息真实性的隐患。当算力超过51%时,就可发起51%攻击,强行向区块链中写入虚假的信息。
所以说,共识机制会影响到区块链上信息的真实性,因此对于公链而言是至关重要的。
价值激励
公链有一个必要的要素就是发币,因为只有发币才能给矿工发奖励,这些奖励是节点服务器运行的成本补充,也是收益来源。
出块的矿工才可以获得奖励,其他的节点服务器跟随记账,在这一轮账记中是没有奖励的。
比如EOS的Dpos共识,21个主节点轮流出块,其他节点不出块负责存储信息。这样呢,主节点获得的eos奖励相对更多,其他的节点获得的奖励相对较少。更多的价值分配给主节点。这样激励主节点的竞争。各个节点服务的经营者为了竞争主节点,会努力争取更多的投票。而争取投票的方式呢,自然是努力发展eos生态。
所以共识机制形成了公链的价值激励,从而推动着公链的发展。
写在最后
共识机制到底是什么?
共识机制是一个分布式网络中,各个节点之间如何平衡的机制。对于POW而言,是以算力为基础的平衡机制,算力高的节点具有更高的出块概率,对于POS而言,币龄高的具有更高的出块概率,对于DPOS而言,影响力高的具有更高的出块概率。
共识机制未必真的是共识。共识机制是公链的项目方设计好的一个记账(数据存储)的算法,你觉得可以,你就来参与挖矿,你觉得不可以你就别来哈哈哈。
当然,你来了,你就对这个算法有了共识哈哈。
所以呢,共识机制是一个先有机制,后有共识的算法。这个算法会影响到公链上信息的真实性和价值的激励性。
公链信息的真实性,决定着这个公链现在的可信性。
而公链的价值激励性,决定着这个公链的未来的可信性和可用性。
所以,共识机制是公链的核心和关键。
所以我们在读公链白皮书时,首先要找到它的共识机制来研究一番,我们要弄清这是一个怎样的共识机制,又是如何实现的。例如有的公链白皮书上称混合共识,那么我们就要了解它的混合指标都有哪些,是如何计算这些指标的,指标的权重如何获得,多长时间或者多少交易量为一轮,重新计算这些指标。
如果白皮书里写得不够具体或者存在漏洞,那这个公链的可信性就很值得怀疑了。
致所有读到此文章和所有关注TVB的朋友:
各位大中小V新老朋友,感谢您的阅读,欢迎大家提出更宽广、更深远以及各种不同的观点和意见。欢迎大家评论本文,并@TVB,尤其欢迎各种批评!
同时,也欢迎大家在自己的后面@TVB,TVB愿意学习大家的知识和观点,互相交流,共同进步!
网友评论