摘要: 共识机制是区块链系统的核心,它决定了一个区块链系统的去中心化程度,性能和安全性。因此公链的开发中,共识机制的设计是核心和关键。本文分别介绍了区块链中常用的三种共识机制:POW,POS,DPOS。
很多朋友都听说过共识机制,但具体什么是共识机制,似乎又解释不清。今天我就来和大家详细谈谈共识机制。
比特币的共识机制
我们还是从比特币谈起。
在比特币系统中,每一笔交易发生时,系统都会出一道题并把这道题向全网公开。全网中首先算出这道题的节点会把题目的答案抛向全网,如果答案得到全网中绝大多数节点的验证认可,这笔交易就会被打包进一个区块,最终这个区块会被添加到区块链中。
因此区块链中的每一个区块实际上都是系统中节点计算的结果,是节点电脑所消耗的电力和计算能力的结晶。这就是电脑的工作量。而系统的区块链就是在每一个区块上消耗的工作量的总和。这就是基于工作量证明的区块链,在英文中就是Proof of Work,简称POW。
如果黑客想攻击比特币,就要伪造交易,就必须把在这个交易产生之前所有产生的区块都重新伪造一遍。也就是说要把之前的每一个区块中包含的交易难题都重新算一遍,要付出大量的工作量。
除了比特币以外,还有以太坊,门罗等数字货币也是基于工作量证明的共识机制。但POW最大的问题在于对能源的消耗,因此后来发展出了不太消耗电能的POS和DPOS。
POS和DPOS共识机制
POS英文是Proof of Stake,被称为是基于权益的证明。在POS中,不再需要节点消耗大量电能来解题,而是通过抵押数字货币获得打包区块的权力。当一笔交易发生时,系统会对打包区块和验证区块的节点和验证人进行奖励。
在POS中,节点打包区块不需要拼算力,也不需要花太多时间,这样会提高区块产生和打包进区块链的效率,并缩短整个时间。性能上会比POW要高。
当然它也有些缺点,比如抵押了数字货币的大户可以坐享其成,持币拿利息。大家想着存币拿利息,就不利于流动性。还有一个危险,就是会吸引黑客攻击抵押了大量币的节点。
DPOS英文时Delegated Proof of Stake,被称为是委托权益证明。DPOS是在POS的基础上进行了改良。在这个共识机制中持有数字货币的人可以投票选择少数节点来代表全体成员完成交易的验证和打包记账。这有点类似我们国家的“人民代表大会”制度。
EOS就是采用的DPOS共识机制。
它的优点是比POS有更高的效率和性能。但它的缺点也很明显,就是为了效率和性能对去中心化做了一个妥协。比如对EOS来说,所有交易都由21个超级节点来处理。这个系统已经不是真正意义上的“去中心化”了,而变成了“弱中心”或者说“部分去中心化”。
其它共识机制
区块链系统中还有其它共识机制比如联盟链常用的PBFT,新经币(NEM)用的POI等。这些共识机制是为了解决现有共识机制的一些缺点而被提出的。但目前使用的系统不如POW,POS和DPOS多。
共识机制是区块链系统的核心,它决定了一个区块链系统的去中心化程度,性能和安全性。因此公链的开发中,共识机制的设计是核心和关键。
(作者:道说区块链,内容来自链得得内容开放平台“得得号”;本文仅代表作者观点,不代表链得得官方立场)