为了使区块链正常工作,必须建立一种机制来维持网络共识。这就是我们需要共识算法的原因。它们的任务是确保区块链中的下一个区块获得大多数网络节点的同意。此外,如果网络的大多数不支持,它们还会使得区块链分叉变得更加困难。
第一个问世的区块链共识算法是比特币网络使用的工作量证明算法(Proof of Work,PoW)。尽管中本聪(比特币的创造者)的算法运行良好,但它有一定的缺点。首先,它愈发成本高昂,因为它依赖于加密挖矿。而且,尽管这主要被看作是一个经济上的缺点,但环境层面的影响也不应该被忽视。
这就是为何开发者们一直在研究替代共识算法的可能性。第一个这样的算法是权益证明(Proof of Stake,PoS),在这种算法下,区块不是由矿工创建的。相反,它们涉及验证者抵押他们的代币。这样做是为了确认要添加到下一个区块的交易。如果他们确认了一个无效的区块,验证者会因此失去他们抵押的一部分。
除了已经确立的工作量证明和有前景但尚未完全运行的权益证明之外,还有其他共识算法正在开发和测试中。本文旨在概述最突出的替代方案。
在权威证明(Proof of Authority,PoA)区块链中,区块由称为验证者的核准账户验证。整个过程是自动化的,这意味着不需要验证者始终坐在电脑前。但这确实要求他们的节点始终保持未受损害。
要成为验证者,网络用户必须通过积累足够积极的声誉来赢得权利。因此,验证者一旦获得了他们的位置,就有动力保持它。验证者有动力维持交易过程,因为未能这样做会导致其身份附着负面声誉。
要建立验证者,必须满足以下三个条件:
不同于工作量证明、权益证明和权威证明,权重证明不是单一的共识算法。相反,它是一系列基于Algorand 共识模型的共识算法的总称。
在某种程度上,权重证明类似于权益证明,但有一个主要的不同。在权益证明中,发现下一个区块的概率取决于你在网络中锁定的加密货币数量。相比之下,权重证明使用其他相对加权值。
有些区块链被设计成发现下一个区块的概率取决于你在给定时间存储了多少数据。因此,权重证明非常可定制和可扩展。缺点是它缺乏稳固的激励手段。
如果仅从名称上判断,权益证明和委托权益证明有很多共同点。但这是误导性的,因为这两者实际上非常不同。在委托权益证明中,代币持有者不对区块的有效性进行投票(与权益证明情况相同)。相反,他们投票选举将代表他们进行验证的代表。例如,在 EOS 中,从数百名候选人中定期选择 21 名代表来确认区块。未能交付区块或确认无效交易的代表将被新当选的代表替换。
委托权益证明与工作量证明和权益证明的另一个主要区别在于,验证者并不争夺下一个区块;相反,他们协作。这使得委托权益证明非常节能,因为没有资源被花费在与对手竞争上。然而,同时,缺乏竞争使得这种达成共识的方式在某种程度上是中央化的,因为拥有大量代币的大户的投票权力要大得多。就像本文讨论的其他替代共识算法一样,运行委托权益证明的网络是可扩展的。
权益证明是最早创造的旨在取代工作量证明的共识算法之一。尽管 PoS 旨在最终在以太坊等区块链上取代工作量证明,但它尚未完全实施。
目前还不清楚最大的加密货币是否会采用任何替代算法,以及何时采用。它们可能有某些优势,但它们能否提供工作量证明目前确保的去中心化程度?毕竟,去中心化正是加密货币的全部意义。