名词解释第五十九讲:51%攻击

这里是王团长区块链学院,与最优秀的区块链人一起成长!今天给大家讲讲51%攻击。

 

 

相信大家都听说过比特币的“51%攻击”,这个是对比特币安全的破坏,可以修改比特币主链数据块。当然51%攻击并没有在比特币身上发生过,但只要是PoW(工作量证明机制)的数字货币都有可能受到51%攻击。就在近日,比特币黄金(BTG)遭受黑客51%攻击,损失超过388201个 BTG,价值1860万美元。

 

51%攻击,就是一名恶意矿工控制了全网大部分算力(超过了50%),然后进行强制交易。如果发生51%攻击,就会破坏区块链去中心化的特性,同时也会让区块链网络处于其他攻击风险之下。

 

举个例子说明:

小明在一个公开场合向王团长借钱,在场有100个人,他们都看见了,正常情况来说他们都可以证明:小明借了王团长的钱,但是现在小明不想还钱,而且因为借的数额比较多,他决定拿出一大半分给在场的人,让他们帮忙证明他没有借钱,这时有51个人被打动了,愿意帮小明证明。也就是说超过一半在场的人证明小明并未向王团长借钱,而王团长当时只是让在场的人帮忙做见证,并未做其他的借钱证据留存,最后,本着少数服从多数的原则,王团长借给小明的钱打了水漂,而小明和在场的51个人分了王团长的钱,这就是51%攻击。

 

掌握了全网51%以上的算力之后,就可以像赛跑一样,抢先完成一个更长的、伪造交易的链。而比特币网络只认最长的链,所以伪造的交易也会得到所有节点的认可,假的也随之变成真的了。下面我们看看比特币网络51%攻击到底是如何进行攻击的。

 

                                    

 

发动攻击并且想要获利有两个条件:

1、掌握了比特币全网的51%算力;

2、手里持有大量比特币。

 

攻击者发动攻击:

1、把比特币转到交易所或某个机构或个人,卖出所有比特币,并且收到钱、把钱提现到银行帐号(提现目的是为确保收益,也可不用提现)。这个时间越短越好,能大大节省攻击时间,也就节省了攻击成本。

 

2、用51%算力从还没向交易所转币的区块开始重新生成区块。比如:向交易所转币的区块为第30万个区块,攻击者就在第29万9999个区块开始重新生成区块。

 

3、因为攻击者有51%算力,而且假设他能在攻击过程中保证一直51%算力,所以他的攻击一定成功,也就是说他生成的攻击块链一定能追上原块链。

 

4、当攻击块链的长度超过原块链2个区块,所有的客户端将丢弃原块链,接受攻击块链。至此,51%攻击成功,而攻击者的比特币没有少,并且获得了不菲的收入。

 

51%攻击后能够做什么:

1、修改自己的交易记录,这可以使他进行双重支付;

2、阻止区块确认部分或者全部交易;

3、阻止部分或全部矿工开采到任何有效的区块。

 

但是无法做到:

1、阻止交易被发出去(交易会被发出,只是显示0个确认而已);

2、改变每个区块产生的比特币数量;

3、凭空产生比特币;

4、把不属于他的比特币发送给自己或其他人。

 

51%攻击看起来非常恐怖,但在比特币网络上想要做到这点并不容易,即使能做到的人,也并不会做,得不偿失。想要对比特币网络进行51%攻击,首先需要足够的钱去掌控51%的算力,这会是一笔非常大的投资,即使拥有这么大的算力,进行51%攻击后带来的收益并不是很多,因为在短时间卖出大量比特币的同时,币价也会大跌,整个比特币网络甚至都会一蹶不振,遭受毁灭打击。如此一来,手上的比特币和算力都会一文不值。这就是51%攻击的悖论。

 

虽然51%攻击针对大型区块链项目(比如比特币、以太坊等)威胁不大,因为受到实现成本太高等因素影响;但相对一些山寨币和小型项目(如:比特黄金BTG、Verge等)来说则大为不同,它的攻击成本远比想象中要低,安全性风险可能不容忽视。

 

想要了解更多的区块链知识,可以关注我们的公众号:王团长区块链日记,与最优秀的区块链人一起成长!

猜你喜欢

转载自blog.csdn.net/xinshengdaxue000/article/details/83105919