区块链十大攻击方式系列(1) : 51%攻击 让区块链危机四伏

安全,一直是区块链领域最重要的要素,自比特币诞生以来,数字货币世界可谓是历经风霜,先后发生过各种攻击方式,而最严重的攻击方式之一莫过于51%攻击。

51%攻击,总让人有一种刀光剑影看小说的感觉,但其实很多人对这个词的理解是不太准确的。下面,我们将为大家详细介绍什么是51%攻击,一起来看看吧。

什么是51% 攻击?

51%攻击,从字面理解就是攻击者拥有超过全网算力的50%的算力资源,便可以发动51%算力攻击。

若攻击者拥有超全网50%的算力资源,就能通过攻击修改自己的交易记录、废弃其余矿工开采的区块、阻止交易确认等不道德行为。

在比特币网络中,采用PoW共识机制来解决如何获得记账权的问题,采用“最长链共识”解决如何记账的问题。51%的攻击,就是利用比特币网络采用PoW竞争记账权和“最长链共识”的特点,使用算力优势生成一条更长的链“回滚”已经发生的“交易行为”。

在理论上,如果掌握了50%以上的算力,就拥有了获得记账权的绝对优势,可以更快地生成区块,也拥有了篡改区块链数据的权利。实际上,当恶意攻击者持有比特币全网占比比较高的算力时,即使尚未达到51%的比例,也可以制造相应的攻击,比较典型的就是双花问题。

51%攻击的通俗举例

举个简单的例子,想必大家能更好的理解。

例如,攻击者花费一笔虚拟货币购买了一件商品,通过51%攻击使得该笔虚拟货币进行了2次花费,最终黑客既没有花费虚拟货币,也得到了相应商品,具体攻击流程如下:

  1. 黑客先向商家支付了10个虚拟货币。 

  2. 同时,将这10个虚拟货币发送给了自己另一个账户。 

  3. 当购买商品那笔交易被确认后,将会被打包区块中,这10个虚拟货币到了商家的账户,商家将商品按照约定发送给黑客。 

  4. 此时,攻击者发起51%攻击,将步骤(2)中转到自己另一个账户的那笔交易打包进另一个非购买商品那条链上的区块。 

在步骤(4)的区块之后重新组合一条链,由于黑客拥有超过全网其余矿工的算力,那此黑客将能组合出一条最长的合法链,而矿工也将从这条链后面继续挖矿,之前的区块就将被丢弃,商家账户收不到那10个虚拟货币。 

51%攻击看似无所不能,但是它也有一定局限性,无法做到:修改其他人的交易记录、阻止交易被发出去(交易会被发出,只是显示0个确认而已)、改变每个区块的矿工奖励、凭空产生虚拟货币、把不属于黑客的虚拟货币发送给自己或其他人等。

哪些项目遭受过 51% 攻击

2020年8月,ETC共遭受到了3次51%攻击。

8月1日,ETC遭受到第一次攻击,此次攻击导致3000多个区块重组,攻击者获利超560万美元;8月6日,ETC遭受到第二次攻击,此次攻击导致4000多个区块重组,攻击者获利超170万美元;8月30日,ETC遭受到第三次攻击,此次攻击导致7000多个区块重组,攻击者第三次获利尚不明确。

区块链十大攻击方式系列(1) : 51%攻击 让区块链危机四伏

2020年12月7日,Aeternity 遭受到51%攻击,此次攻击黑客共进行了3步操作。首先黑客在12月3日收集大量AE作为攻击成本,总额高达2900万;12月6日,攻击者挖出了一条未公开的链,此链长于公链,并在较长链上向自己的账户转入2752万AE,随后在公链将AE花掉;12月7日,攻击者将较长链广播出去,从而较长链得到了认可,攻击者向自己转入2752万AE的交易被正常打包,使得资产再次回到自己账户中,而之前花费的AE失效。本次攻击造成近400万美元的损失。

 出现 51% 攻击的可能性有多大? 

由于区块链由分布式节点网络维护,因此所有参与者都是在达成共识的过程中开展合作。这是区块链的安全性一般较高的原因之一。网络越大,防御攻击和数据损坏的能力就越强。

而关于工作量证明区块链,矿工拥有的哈希率越高,为下一个区块找到有效解决方案的机会就越大。因为挖矿涉及无数次哈希尝试,而更高的计算能力意味着每秒可以尝试更多次。一些早期矿工加入了比特币网络,为其发展和安全作出了贡献。随着比特币作为一种货币的价格不断上涨,许多新矿工进入该系统,意图争夺区块奖励(目前设定的奖励为每区块 12.5 枚比特币)。这种竞争的存在是比特币安全的原因之一。如果不是为了诚实行事并努力获得区块奖励,矿工就不会有动力投入大量资源。

因此,由于比特币网络的规模较大,51% 攻击不太可能发生。一旦区块链变得足够大,单人或团体获得足够计算能力来压倒所有其他参与者的可能性就会迅速下降到极低的水平。

此外,随着链的增长,更改之前确认的区块会变得越来越困难,因为这些区块都是通过加密证明链接起来的。出于同样的原因,一个区块所获确认越多,更改或撤销其中交易的成本就越高。因此,一次成功的攻击可能只能在短时间内修改最近几个区块的交易。

虽然获得比其余比特币网络更多的计算能力对攻击者而言相当困难,但如果是规模较小的加密货币,挑战性就小很多。与比特币相比,小规模的公链拥有的可保护其区块链的哈希算力相对较低。低到足以让 51% 攻击切实发生。受到过多数攻击的加密货币的几个著名例子有 Monacoin、Bitcoin Gold 和 ZenCash。

写在最后

任何新兴技术都可能遇到各种风险和漏洞,这正是我们需要了解51%攻击的原因。51%攻击就如同一把悬在加密社区头顶的利剑,督促人们要警惕随时可能出现的危险,这会压迫社区的人不断的去尝试改变和创新,对算法的发展会起到一个促进作用,能够适应的项目继续存在,否则就会被市场所淘汰。

区块链十大攻击方式系列(1) : 51%攻击 让区块链危机四伏

扫一扫手机访问

区块链十大攻击方式系列(1) : 51%攻击 让区块链危机四伏

发表评论