区块链的共识是指区块链系统中每个结点之间如何一致地作出有效的决策。共识算法主要有三种:工作量证明(Proof-of-Work, PoW)、权益证明(Proof-of-Stake, PoS)和密码认证(Byzantine Fault Tolerance, BFT)。(交易用大牌:欧易官网注册,APP下载)
工作量证明(Proof-of-Work, PoW)是一种昂贵而困难的计算过程,采矿者必须计算出一个特殊的数字,这个特殊的数字由某种规则所定义,它本身和一个哈希值相关,而在简单说明下,矿工将输入数据的哈希值就是该特定值,从而将这个数字定义为“工作量”。矿工会不断提交尝试,直到一个成功的结果出现,而这种方法也被称为“挖矿”。挖矿的矿工是最终创建交易块的人,他们利用自己的计算资源正为区块完成贡献,从而有效地构建、维护区块链网络。挖矿在比特币中被用来奖励铸造区块的矿工,比特币中的现金报酬是矿工的机制来激励他们继续工作,并对系统的正常运行做出贡献。
权益证明(Proof-of-Stake, PoS)是一种使用节点利益状态作为权威凭证的区块链共识算法。“权益”可以是某种货币,也可以是某种权利,以此来增加某个节点被选举创建新块的几率。就类似于拥有股权的股东,他们将有更多的权利去决定系统的运营,包括发行新股票,这样的话,权益证明代表了新增发行的力量,而无须挖矿痛苦费用及耗费大量资源的计算过程。PoS也可以被称为收费保证金,节点必须提供一定数量的代币作为加入网络的保证金,如果某个结点发生犯规行为,勤奋证明可以利用此类保证金的方式来扣除代币,以此来惩罚。
最后是Byzantine Fault Tolerance(BFT),它是一类能够在网络中彼此间相互不信任的结点的情况下仍然能够达成共识的算法,BDT 系统比其他共识算法更稳健。BFT 使用类似于议会投票的方式来容忍拜占庭将军错误,它规定了如何应对部分节点的失联、拒绝服务或作恶:大多数的节点需要认可才能接受交易。BFT 不需要利用投票来保护网络的安全,而是把所有交易放到区块中,经过大多数节点的确认,最终将公认为公正的交易放入到区块链中。
总而言之,工作量证明、权益证明和Byzantine Fault Tolerance都对应着区块链共识算法的不同方法。从一个更广泛的意义上来讲,区块链的共识主要是要保证系统正常运行,就像保险一样,只有有效的共识算法,才能在全球范围内传播信息、共享资源和形成伙伴关系的框架。