共识机制

“共识机制”一词常常泛指“权益证明”、“工作量证明”或“权威证明”协议。

但是,它们只是共识机制中用于防御“女巫攻击”的部分。

共识机制是由一整套想法、协议和激励构成的体系,使得一系列分布式节点能够就区块链状态达成一致

什么是共识?

我们所说的共识,是指达成了广泛的一致。

比如,一群人去看电影, 如果他们对于提议“看某部电影”没有任何异议,那么就可以说共识达成了。

如果存在异议,那么他们就必须通过某种方法决定看哪一部电影。

在极端情况下,这群人就会分开。

对于以太坊区块链来说,达成共识的过程是标准化的,达成共识意味着全网络中至少 66% 的节点就网络的全局状态达成一致。

ps: 为什么不是 51%?

什么是共识机制?

共识机制是一整套由协议、激励和想法构成的体系,使得整个网络的节点能够就区块链状态达成一致。

以太坊采用基于权益证明的共识机制,其加密经济的安全性来自于对质押人的锁定资本实施的一系列奖励和罚没措施。

这种激励体系鼓励各个质押人诚信运行验证者节点,并惩罚那些有不良行为的质押人,让攻击网络的行为付出极其高昂的代价。

还有一个协议,用于规范如何选择诚实的验证者,让它们提议或验证区块、处理交易并投票支持其链头部的视图。

极少数情况下,如果链头部附近的同一位置存在多个区块,就会利用一个分叉选择机制来选择区块组成“最重的”链。

区块权重根据为相应区块投票的验证者数量进行计算,并由验证者质押的以太币余额进行加权。

有些关于共识的重要概念并未在规范中明确定义,例如由潜在“带外社交协调”提供的额外安全保障,可作为防止网络攻击的最后防线。

这些部分共同组成了共识机制。

共识机制类型

基于工作量证明

和比特币类似,以太坊也曾经使用基于工作量证明 (PoW) 的共识协议。

创建区块

验证者创建区块。

每个时隙中都会随机选择一个验证者成为区块提议者。

区块提议者的共识客户端请求配对执行客户端对交易打包,作为“执行负载”。

然后它们将“执行负载”包装成共识数据并形成一个区块,再把这个区块发送给以太坊网络上的其他节点。

这样的区块生产会得到以太币奖励。

在极少数情况下,一个时隙中产生了多个可能的区块,或节点在不同时间收到区块,分叉选择算法就会选择使形成的链具有最大认证权重的那个区块(认证权重是指为该区块提供认证的验证者数量,并根据验证者质押的以太币余额调整)。

安全性

因为用户需要拥有网络中 51% 的算力才能够欺骗整条链,因此网络的安全得以保证。

这将需要巨大的设备与能源投入,支出很有可能超过收益。

基于权益证明

以太坊目前使用基于权益证明 (PoS) 的共识协议。

区块创建

权益证明由验证者完成,验证者通过质押以太币参与到系统中。

系统将随机选择一位验证者来创建新区块,并将它们分享到网络从而获得奖励。

无需完成大量计算工作,你只需在网络中质押以太币即可。

这将有利于激励健康的网络行为。

安全性

权益证明体系保障加密经济的安全,因为攻击者若试图控制整条链,就必须销毁大量以太币。

奖励机制会奖励诚实的质押人,而惩罚机制则阻止质押人作出恶意行为。

Sybil 抗性和链选择

仅仅工作量证明和权益证明还不能成为共识协议,然而为了简便起见,通常将它们称为共识协议。

它们实际上是女巫攻击防御机制和区块作者选择器;它们是决定最新区块的作者的一种方式。

另一个重要组成部分是链选择(又称分叉选择)算法,它让节点可以在同一位置有多个区块的情况下在链头部选择一个正确区块。

女巫攻击防御衡量一种协议如何抗衡女巫攻击。

女巫攻击是指一个用户或用户群体假装成许多用户。

防御这种攻击对去中心化区块链至关重要,并使矿工和验证者能够在资源投入的基础上获得平等奖励。

通过让用户消耗大量能源或提供大量抵押品,工作量证明和权益证明可以防止这种情况。

这些保护措施通过经济手段对女巫攻击形成威慑。

链选择规则用于决定哪条链才是“正确”的。

比特币使用“最长链”规则。这意味着,任何最长的区块链,都会被其他节点作为有效链接受并与之协作。

对于工作量证明链,最长链由链上累积的工作量证明总难度决定。

以太坊曾经也使用过最长链规则,但现在运行在权益证明机制下的以太坊采用了一种最新的分叉选择算法,以此衡量链的“权重”。

权重是验证者投票的累积总数,并以验证者质押的以太币余额加权。

以太坊使用被称为 Gasper 的共识机制,该机制结合了 Casper 友好的最终确定性工具权益证明和 GHOST 分叉选择规则。

参考资料

https://ethereum.org/zh/developers/docs/consensus-mechanisms/