什么是区块链共识算法?

分享
Copied to clipboard!
什么是区块链共识算法?

在数字货币领域中,共识算法是区块链网络的重要元素,因为它维持着分布式系统的完整性和安全性。数字货币的首个共识算法即是工作量证明(PoW),它由中本聪(Satoshi Nakamoto)提出并在比特币中用于解决“拜占庭容错”问题。


共识算法

共识算法可以被定义为一个通过区块链网络达成共识的机制。公共的(去中心化的)区块链作为一个分布式系统,并不依赖于一个中央机构,而是由分布式节点全票通过来实现交易。与此同时,共识算法开始发挥作用,它保证了协议规则的正常执行以及交易可以在免信任情况下发生,因此所有的数字都货币只能被消费一次。

弄清楚算法与协议之间的区别是深入了解不同类型的共识算法的重要前提。


共识算法与协议的区别

算法与协议经常都被混用,但他们并不是同一个意思。简单来说,协议是区块链的一些简单规则,而算法则是这些规则实现的原理。

除了在金融系统的运用,区块链技术还能被用于各种商业领域且对于许多不同的案例也同样适用。另一方面,一个区块链网络将建立在一份协议之上,而该协议定义了区块链将如何运作,所以区块链系统中的所有组成部分及全部参与者们都要遵守底层协议。

协议决定了规则制度,算法则说明了该如何遵守这些规则及产生想要的结果。例如,一个区块链的共识算法决定了交易和区块是否正确有效。所以,比特币和以太坊等同于协议而工作量证明(PoW)和权益证明(PoS)则是共识算法。

进一步说,就是比特币协议规定了节点之间应该如何互动,数据应该怎样传递,以及一个成功的区块验证的需求是什么。而共识算法则验证了资产和签名,确认了交易,且实际执行了区块验证 - 这些都取决于网络共识。


共识算法的不同类型

共识算法有几种不同类型,最常见的便是工作量证明(PoW)和权益证明(PoS)。从安全性和功能性及延展性的平衡来说,他们都各有好坏。


工作量证明

工作量证明是第一个共识算法。它运用于比特币和许多其他数字货币。工作量证明算法是挖矿过程中的基本部分。

工作量证明挖矿需要用到哈希算法,所以更多的算力意味着每秒需要进行更多次试验。换言之,有着高哈希率的矿工更有可能发现下一个区块的有效值(又名:区块散列值)。工作量证明共识算法确保了只有矿工才能验证一个新的区块交易并将其加入到区块链中,而前提是所有的节点要一致同意该矿工所提供的区块散列值是一个有效的工作量证明。


权益证明(PoS)

2011年,权益证明共识算法诞生,并成为工作量证明的有力竞争者。虽然权益证明和工作量证明都有着相似的目标,但他们有着根本的差异和特殊性。特别表现在新区块的确认期间。

总而言之,权益证明共识算法根据参与者的权益来验证区块,在该机制下,便可替代工作量证明挖矿。每一个区块的验证器(也叫做锻造者或铸币者)不是由分配的算力数量而是数字货币自身的投入所决定的。每一个权益证明系统可能以不同的方式来实现算力,但通常,区块链受到一个伪随机的选举程序保护,这是因为考虑到节点的财力和货币的寿命 (即:货币能被锁仓或质押的时间长短)- 这通常带着随机性。

目前,以太区块链是建立在工作量证明算法上的,但“Casper协议“的最后发出将会用权益证明取代工作量证明,这是为了尝试提高网络的延展性。


为何共识算法对于数字货币很重要

像前面所提到过的,共识算法是维持数字货币网络完整性和安全性的关键因素。他们让分布式节点能达成一致共识。认同当前的区块链状态是数字经济系统朝着正确方向发展的重要前提。

工作量证明算法通常被认为是“拜占庭将军问题”的最好解决方案,它能让比特币成为“拜占庭容错“系统。这就是说,比特币区块链有极高的耐攻击能力,比如“51%的攻击”,而这正是工作量证明的功劳。高成本的挖矿工作让攻击变得非常困难,并且矿工不可能浪费巨大的资源来破坏网络。

Loading