什么是比特币51%攻击?一个典型比特币51%攻击案例
时间:2016-10-25 来源:网络 作者:不详
一、什么是51%攻击? 一提到对比特币的攻击,大部分人想到的就是51%攻击。所谓51%攻击,就是利用比特币使用算力作为竞争条件的特点,使用算力优势撤销自己已经发生的付款交易。如果有人掌握了50%以上的算力,他能够比其他人更快地找到开采区块需要的那个随机数,因此他实际上拥有了绝对哪个一区块的有效权利。 他能够: 1、修改自己的交易记录,这可以使他进行双重支付 2、阻止区块确认部分或者全部交易 3、阻止部分或全部矿工开采到任何有效的区块 但是他无法做到: 1、修改其他人的交易记录 2、阻止交易被发出去(交易会被发出,只是显示0个确认而已) 3、改变每个区块产生的比特币数量 4、凭空产生比特币 5、把不属于他的比特币发送给自己或其他人 二、一个典型51%攻击案例 如果我有整个网络51%的计算速度,我可以计算出一个这样的区块链,包含我发送所有的比特币到我的私人账户上这个交易信息。这个区块链的长度为10,但是我不向网络广播。同时,我把所有的比特币在交易市场换成美元并提取出来。这笔交易记录在正常的那个区块链中。 当我的美元提取正在进行中的时候,那个正常的区块链的长度是9,而我的区块链长度是10。现在我向网络广播出去,然后观察,网络会确认我的区块链是正确的。 但是美元已经被我提取了,损失的是交易市场。 我也可以用这种方式拿比特币买任何东西。如果这样的事情发生个几次,对比特币将是致命的,至少会严重的伤害人们对这个系统的信任度。 比特币发动51%攻击具体思路大致如下: 准备工作: 1. 既然是51%攻击,就必须首先掌握足够的算力,无论是控制矿池,还是利用其它计算资源,总之必须使你的算力领先与现在网络总算力,领先的幅度越大,成功的可能性越高; 2. 拿到足够的BTC作为筹码,无论是自己挖到的,还是从任何渠道买的,都可以; 攻击步骤: 1. 将手中的BTC充值各大交易所,然后卖掉,提现;或者也可以直接卖给某人或某一群人; 2. 运用手中的算力,从自己对外付款交易之前的区块开始,忽略自己所有对外的付款交易,重新构造后面的区块,利用算力优势与全网赛跑,当最终创建的区块长度超过原主分支区块,成为新的主分支,至此,攻击完成; 攻击结果: 由于撤销了所有对外付款交易,等于收回来所以已卖掉的比特币。 可行性评估: 现在比特币全网算力差不多90T,而且还会快速增长,现在看来只有现在的几大矿池联合,才具有发动51%攻击的实力,普通个人或机构实施此攻击的可能性越来越小。 三、51%攻击成功可能性大吗? 过去几年比特币网络的算力悄无声息的增长到了无比之大,这大大增加了比特币成功的可能性。反之也可以解释为什么山寨币不靠谱,太容易被51%攻击啦。在依赖密码学的数字货币领域,先发优秀是非常明显的。所以51%攻击对于比特币来说并不是一个什么大问题(早在2013年7月,比特币全网算力已经达到世界前500强超级计算机算力之和的20倍),即使有政府集全国之力秘密造出一台超级计算机,用来击溃比特币来挽救自己的货币发行体系,它会发现使用该能力进行挖矿便可垄断比特币的发行权,其收益远大于击溃比特币,动机也就不复存在了。 |