目前51%的计算能力攻击只存在于“PoW”共识机制中,因为“PoW”共识机制是靠计算能力取胜的,即谁计算快谁胜率高。在使用“PoW”共识机制的区块链网络中,我们把所有参与计算哈希的计算机资源都称为计算能力,所以全网的计算能力是100%。当51%以上的计算能力在同一个阵营时,这个阵营的计算哈希胜出的概率会大大提高。
为什么是51%?51.1%呢?当然也有可能。之所以选择51%,是为了取一个最接近50%且高于50%的整数百分比,这样计算出来的力达到51%时,计算出来的效果会比50.1%更明显。例如,如果诚实节点的计算能力是50.1%,那么坏节点的计算能力是49.9%。两者差距太大,很容易导致最后的区块竞争,很长一段时间都是不分上下。
如果计算资源是分散的,不是高度集中的,那么整个区块链网络是可信的。然而,当计算能力资源集中在某一阵营时,计算能力拥有者可以利用计算能力资源逆转区块,从而导致严重的区块链分叉,如下例所示。
该图显示了区块链的当前状态。如果攻击者想逆转Block 8中的一个交易,他会从Block 7的后面引入一个fork使Block 8无效,并在fork block中的一个地址设置成百上千个BTC。但由于比特币公链最长链规则的限制,所有诚实节点都会遵循最长链规则,将新生成的块链接到最长链的尾部,以防止攻击者得逞。
某个区块链的状态
当系统的阻塞率较低,块大小较小时,网络延迟相对于阻塞时间较小,这样诚实节点产生的块基本上是有序的。只要诚实节点的强度超过50%,攻击者就无法让自己的链最长。而当诚实节点最终实力不如坏节点,即坏节点计算能力之和超过51%时,坏节点就会使用最长链机制,所以此时坏节点的出块速度整体上比诚实节点快,胜率高,这样坏节点产生的块就会形成最长链。
另外,如果出块率很高,那么块生成的时间和块在网络上传播的延迟会比较小,这样一个新的块生成后还2022尚力财经小编没来得及传播到整个网络,其他节点就会生成其他新的块,相互之间的竞争会很激烈,导致链中分叉严重。虽然最后只会有一条最长的链,但是块产率越高,块大小越大,分叉就越严重,最终区块链会发展成很多分叉,如图所示。
复杂分叉情况
基于比特币公链(以太坊公链中分叉块还有其他处理方式),大量分叉会带来两个问题:
网络资源和计算资源浪费,分叉块大部分无效,因为只有最优链中的块才被认为有效。为了危及安全,整个区块链中的最优链被缩短,计算能力分散在不同的分叉链中,使得攻击者的值只需要不到51%的计算能力就可以生成恶意的最优链。就像有三个阵营,A阵营30%算力,B阵营32%算力,C阵营38%算力。计算能力分散在三个阵营的A、B、C上。如果A、B、C各做一个分叉,那么最后C可以用不到51%的计算能力(38%的计算能力)控制恶意最优链。以上是区块链解读的详细内容:PoW共识机制的51%计算攻击。更多关于PoW共识机制51%计算攻击的信息,请关注coir.com其他相关文章!
标签: 2022