主页 > imtoken钱包官方网址 > 什么是 51% 攻击及其概念如何定义

什么是 51% 攻击及其概念如何定义

imtoken钱包官方网址 2023-01-28 06:54:16

描述

51%攻击”是一个充满想象力的词,总让人有种在看刀光剑影的小说的感觉,但其实很多人对这个词的理解并不是很准确。

最通俗的理解是根据这个词的字面意思:认为只要算力超过51%,就可以对某个系统发起攻击,系统就有被中心化或被攻破的可能。

比如我今天随便查了两篇相关的文章,里面说:

1、当矿池算力过大,超过全网算力的51%时,会发生51%攻击。

2、51%攻击是指某人掌握了全网51%以上的算力后,可以先完成一条更长链的伪造交易,就像赛跑一样。 比特币只承认最长的链。 因此,伪造的交易也会得到所有节点的认可,以假乱真。 这是由比特币的共识机制PoW(Proof of Work)决定的。

在考察这些说法是否正确之前,我们先研究一下51%攻击到底是什么? 它的概念是如何定义的?

事实上,比特币白皮书全文中并没有出现“51%攻击”这个词,但有相关描述,最接近51%攻击的定义:The system is secure as long as honest节点共同控制的 CPU 能力比任何合作的攻击者节点组都多。 只要诚实的计算节点集体控制的计算能力超过任何一个攻击组,那么系统就是安全的。

从这句话可以推导出,如果一方算力超过对方,一方算力最好超过50%。 比如达到51%的时候比特币51%攻击,肯定是要超过对方的。 如果诚实节点拥有51%的算力,则系统是安全的; 如果恶意节点拥有51%的算力,就可以对对方发起51%的攻击,那么系统就不安全了。 我估计51%的攻击就是从这里来的。

姜卓尔在《天下正气,当合一——算力大战》中特别提到了他的定义: 大家都知道“51%算力攻击”: 1. 攻击者利用优势算力挖出一条比原来更长的链攻击链。 2、攻击链向全网广播后,节点将按照规则接受较长的链,并丢弃原链。 下图中的直链(上方蓝色链和下方红色链)代表中立节点接受的主链。

下面,我将51%的攻击拆分成“51%”和“攻击”两个词来分别说明。

1. 51%算力不是绝对的

1、即使没有51%的算力,比如只有30%或40%的算力,也可以发起“51%攻击”; 这种可能性。

事实上,即使你只有30%的算力,可能连续产生5-6个区块,就已经可以发起极具威胁的“51攻击”; 即使你有 51% 的算力,你也可能很长时间都出不了块,攻击就失败了,但从长远来看,你出块的概率等于你算力的权重。

如果把节点分为诚实节点、中立节点和作恶节点,那么你只需要比诚实节点有更多的算力即可,不一定需要51%的算力。

2.算力只是这场比赛的一个方面,还有网络通讯等其他因素。

在区块生成顺序的情况下,基本上谁先生成区块就有很大概率成为最长链。

在同时出块的情况下,谁能更快地传播到51%的网络节点并被接受,并在此基础上进一步扩容记账,谁就是最长的链。

从这个角度来看,51%不仅仅指的是算力,还有网络节点的接受度。 从这个角度来看,更重要的不仅仅是51%的算力,而是利用超强算力抢先出块后的“最长链法则”。

当然,这些都是为了同链竞争; 对于已经分裂成不同链的两条链,比如BCH和BTC,其中一条领先多少个区块并不重要。

2.算力竞争本身不是攻击

这里说的是“51%攻击”,而不是“51%竞争”或“51%竞争”。

两者有什么区别?

竞争是为了从中获利,攻击是为了毁掉链条。

竞争是合理的。 即使你拥有超过51%的算力,只要你在规则允许的范围内正常出块、正常挖矿比特币51%攻击,这就是正常的竞争。 还是以谁先出块,谁的链最长为判断标准,不能算攻击。

但是,就像ABC和BSV的算力大战一样,BSV最初的宣传是“用算力摧毁BCHABC”,“让BCH这两年没有交易”(虽然到现在还没有达成)最后),这种行为显然是攻击性的,而不是纯粹的竞争性。

一旦达到51%的攻击,某条链就会被摧毁,攻击者和防御者都将一无所获。

这也是为什么姜卓尔说“无论攻击方输赢,攻击方必然损失攻击成本,而防御方则具有防御优势,如果获胜还可以获得挖矿收益作为补偿”

可能有人会问,这么大的代价,毁掉一条链有什么好处? 一般来说,没有任何好处,大多数攻击弊大于利。 一般来说,算力越大,维护整个系统的积极性就越高,这就是比特币系统内置的博弈论发挥作用的地方。

但在这种情况下,BSV 方希望通过摧毁 BCHABC 来建立自己的 BSV 正统。

3. 51%攻击的本质

总结:中本聪和姜卓尔都没有定义51%的攻击。 51% 这个词没有出现。 我个人认为更准确的理解51%攻击是通过超强的算力(51%不是必需的)实现最长链的竞争。

毕竟,正如白皮书中最明确的定义:节点始终认为最长的链是正确的,并将继续努力扩展它。 最长的链获胜,其他节点在这条链的基础上扩展。