我最近在重新学区块链,巩固一下细节,也收集一个“区块链100问”,供小白们使用(大佬可以另找教程),每天更新1-2个。
推特:0x00pluto
所谓51%算力攻击,就是指利用自己的算力优势来篡改区块链上的记录,从而达到撤销已付款交易的目的。
比特币的交易数据,实际上是矿工通过算力竞争来打包记录的。“算力”指的是每秒钟可以计算哈希值的次数,算力越大矿工的计算速度就越快。理论上来说,当一个人掌握了51%以上的算力,那么他计算出正确哈希值的速度就会比全网其他矿工更快,因此只要他从包含自己想要篡改的交易数据之前的一个区块开始继续向下挖矿,那么他就有可能创造出一条比当前主链更长的区块链。
在POW机制中,当节点接收到了从其他节点传来的更长的区块链时,会自动放弃当前的链,转而继续在新的主链上进行挖矿,这样一来拥有51%算力的矿工,就能够撤销之前的交易记录。所以通常情情况下,我们发起一次转账之后至少要等待六个区块的确认,才能将其视为是不可变的交易。因为需要篡改的区块数量越多,实现的难度就越大。
虽然从目前比特币挖矿算力越来越集中的情况来看,发起一次51%算力攻击是有可能的,但是从经济收益的角度来看,发起攻击对矿工而言并没有什么好处。第一,算力攻击一旦发生,比特币的安全性就会遭到质疑,从而引发价格的暴跌;第二,因为矿工为发起攻击而挖掘的区块并不是在主链上进行,因此他们实际上无法获得任何比特币奖励。