51%算力攻击目前仅在”PoW“共识机制中存在,因为”PoW“共识机制依赖算力计算获胜,也就是谁算得快,谁的胜率就高。在使用了”PoW“共识机制的区块链网络中,我们称参与计算哈希的所有计算机资源为算力,那么全网络的算力就是100%,当超过51%的算力掌握在同一阵营中时,这个阵营的计算哈希胜出的概率将会大幅度提高。
为什么是51%?51.1%不行吗?当然也是可以的,之所以取51%是为了取一个最接近50%,且比50%达的整数百分比,这样当算力值达到51%后的效果会比50.1%的计算效果更明显。举个例子,如果诚实节点的算力值是50.1%,那么坏节点的算力值就是49.9%。两者的差不算法太大,这样容易导致最终的区块竞争你来我往、长期不分上下。
如果算力资源分散,不是高度集中的,那么整个区块链网络是可信的。然而,当算力资源集中于某一阵营的时候,算力的拥有者就能使用算力资源去逆转区块,导致区块链分叉严重,如下面的例子。
如图是一条区块链目前的状态。一个攻击者想要逆转区块8中的一笔交易,他就会从区块7后面引入一个分叉来使区块8变得无效,在分叉块中设置给某个地址几百或者几千个BTC。不过,由于比特币公链的最长链规则的限制,所有的诚实节点都会遵循最长链规则,将新产生出来的区块链接到最长链的尾部,从而避免攻击者得逞。
复杂的分叉情况
基于比特币公链来看(以太坊公链中分叉块有其他处理),大量的分叉会带来两个问题:
浪费了网络资源和计算资源,大部分分叉块无效,因为只有最优链中的区块才被认为是有效的。 危害了安全性,整个区块链里的最优链变短了,算力分散在不同的分叉链中,这使得攻击者值需要少于51%的算力就可以产生出恶意的最优链。就好比有3个阵营,A阵营有30%算力,B阵营有32%算力,C阵营有38%算力,算力以3大阵营分散在A、B、C上,如果A、B、C各自搞分叉,那么最终C就可以以低于51%的算力(38%的算力)达到控制恶意最优链的目的。以上就是区块链解读:PoW共识机制的51%算力攻击的详细内容,更多关于PoW共识机制的51%算力攻击的资料请关注本站其它相关文章!
湘ICP备2022002427号-10湘公网安备:43070202000427号
© 2013~2019 haote.com 好特网