初入Web3的人,都听过一个名词——51%攻击。很多唱衰区块链的人,也常常拿这个说事。他们以“51%攻击”作为手段,强调区块链的不安全性和危害性,很多不明所以的人就会因此得出错误的结论。

关键的问题是:“51%攻击”这个概念到底能不能成立?有多大的概率发生?真的发生了,又会产生多大的危害?今天,识链大学就把这个问题讲清楚,讲明白。

打开网易新闻 查看精彩图片

一、 什么是51%攻击?

从字面意思上来理解,“51%”指的是哈希率或者算力超过51%,“攻击”就是对区块链网络发起的攻击。那么,“51%攻击”的具体含义就是:某个个人或者组织掌握了某条区块链51%的算力,那就有可能会对这条区块链发起攻击。

为什么会出现这种情况?我们以比特币网络为例。大家都知道,比特币是由矿机挖矿产生的。挖矿的人分布在世界各地,每个人或者公司掌握了一小部分的矿机。但是,假如说现在世界上有100台矿机参与挖矿,有人收购了51台矿机,那么他就有可能掌握了51%的算力。就整个比特币区块链来说,他就是老大,他就有机会对网络发起攻击。

打开网易新闻 查看精彩图片

这个时候,攻击者就可以故意排除某些交易,或者修改交易的顺序,甚至有可能导致双花问题。

二、什么是双花问题?51%攻击危害多大?

双花问题就是双重支付的意思,就是说同一笔资产被重复支付,同样一笔钱被花掉两次或者多次。比如说,我们支付宝里有20块钱,先是买了一杯奶茶。但是支付的时候支付宝出了bug,这笔钱没有被同步,还留在钱包里。之后,我们又用这笔钱吃了一份螺蛳粉。这就是双花问题了。

打开网易新闻 查看精彩图片

对于区块链网络来说,如果出现了51%的攻击,就有可能会引发双花问题。

在区块链网络里,用户进行交易时,不会立即添加到区块链中,必须先由节点进行挖矿,将这笔交易打包之后放入区块里。因此,只有区块入链,收款方才可确认交易有效。例如有人花1个比特币买了一个产品,然后将比特币进行转账支付。理论上区块链会记录这笔交易。但是如果有人掌握了51%的算力,就可以以此删除这笔交易,引起退款。这样的话,购买产品的人没有任何损失,平白无故得到了产品。但是出售产品的人就面临资产损失的风险。

三、51%攻击常见吗?

对于任何一个区块链网络来说,51%攻击都是基本上不太可能出现的情况,只存在于理论中。51%攻击出现的概率,与该条区块链的网络算力成反比。区块链整体的算力越大,越不容易被攻击。就比特币来说,由于其网络规模不断增大,出现51% 攻击基本上没有。

总的来说,一旦区块链变得足够大,个人或组织获得足够计算能力来压倒所有其他参与者的可能性就会迅速下降到极低的水平。

四、51%攻击出现过吗?

区块链发展至今已经超过10年的时间,期间诞生了上千种形形色色不同的区块链网络,还真就出现过几起51%攻击事件。

打开网易新闻 查看精彩图片

2018年5月, Reddit 网友发帖称 Monacoin 遭受了 51%算力攻击、自私挖矿攻击与时间戳攻击。一些支持 Monacoin 交易的交易所,比如 Bittrex, Livecoin当即关闭了 Monacoin 的充值。也是在当年5月, Bitcoin Gold 交流社区中,MentalNomad 发文称有人在尝试进行针对交易所的双花攻击。本次攻击据不完全统计损失了 388,201 个BTG,约为 1860 万美元。

当然,我们需要注意的是,以上几起事件并不具有代表性。在整个Web3世界里,51%攻击出现的概率微乎其微,低到忽略不计。因此,不用担心区块链的安全性,至少不用担心因为51%攻击带来的安全问题。其他Defi的安全性,我们另外讨论。

打开网易新闻 查看精彩图片

《Web3知识120问》是由识链大学出品的Web3科普系列文章,致力用120篇轻松易懂的文章解释抽象的Web3概念,帮助大家清楚理解Web3,辨析Web3。