主页 > imtoken安全下载 > 为什么 PoS 比 PoW 更能避免 51% 攻击?

为什么 PoS 比 PoW 更能避免 51% 攻击?

imtoken安全下载 2023-09-20 05:08:57

本文首发于36氪战略合作区块链媒体《Odaily星球日报》(公众号ID:o-daily,APP下载),作者范磊,上海焦大学网络空间安全学院副教授同大学,Fractal Platform CTO,原题《区块链共识协议的安全与发展方向》。

比特币黑客攻击_比特币被黑客攻击_比特币依靠什么检测双花攻击

最近,加密货币领域发生了一起重要的攻击事件。 以太坊经典(ETC)在1月8日遭遇了51%算力的双花攻击,根据不同的算力,这次攻击造成的损失从数千万美元到数百万美元不等。 这是攻击者首次成功实现对排名靠前的主流加密货币的51%算力攻击。 与这些可计算的真实损失相比,当前加密货币背后深层次的安全问题更值得关注。

一、什么是51%算力攻击

目前,以比特币(Bitcoin)为代表的加密数字货币大多采用基于工作量证明(PoW)的共识协议。 参与工作量证明的矿工通过计算产生新的区块,使区块链不断增长。 由于区块链是一个分散的系统,任何人都可以尝试从任何位置生成新的区块。 如果攻击者的计算资源相对较少,则攻击者产生的新分叉的增长速度将慢于公链的增长速度,因此不会形成被诚实用户接受的长分叉。 但如果攻击者拥有比诚实用户更多的计算资源,那么攻击者产生的新分叉的增长速度将快于公链的增长速度,他可以轻松形成新的更长的区块链分支取代最长的公链可用的区块链。 具体过程见图1和图2。

比特币依靠什么检测双花攻击_比特币黑客攻击_比特币被黑客攻击

图 1. 攻击者的计算能力较低

比特币黑客攻击_比特币被黑客攻击_比特币依靠什么检测双花攻击

图 2. 攻击者在算力上占上风

攻击者的计算资源占优势。 一个简单的数学描述就是攻击者掌握了超过51%的算力,这也是51%算力攻击名称的由来。 当攻击者掌握了超过 51% 的计算资源时,他的攻击就一定成功了。 事实上,当攻击者拥有足够的计算资源比例时,比如40%,如果他以6个区块作为确认长度,他就可以以较高的概率成功实施分叉攻击。

一旦51%算力攻击成功,区块链将切换到最长链,其后果是区块上已经确认的交易数据可能会被抹除。 如果这种攻击是有意构建的,攻击者可以提取区块上已经确认的高价值交易数据,进而使这部分数字货币可重复使用。 这种攻击就是我们常说的双花攻击。 显然,这种攻击严重损害了加密数字货币的安全性和可信性。

2. 为什么这次攻击成功

比特币黑客攻击_比特币被黑客攻击_比特币依靠什么检测双花攻击

与一般的网络安全攻击不同,51%算力攻击是一种众所周知的攻击方式。 攻击者这次的整个攻击行为和过程,已经不是什么新鲜事了。

一般来说,基于 PoW 的加密货币系统的整体算力越强,控制 51%算力的成本就越高。 由于大多数 PoW 算法都具有相似的核心计算结构,因此可以方便地在不同的加密货币之间直接切换算力,甚至还有算力资源可以按时间方便地租用。 网站Crypto51()计算了不同数字货币进行1小时51%攻击的成本(不包括区块奖励)和可以从NiceHash借到的算力比例。 其中,对ETC进行1小时51%攻击只需5116美元,80%的算力可以从NiceHash租用(这个数据一直在变化,大家可以去这个网站查看实时数据),可能性这种攻击是不可能被忽略的。

另一个不可忽视的因素是PoW算法需要依赖大量的能量来驱动挖矿作业。 当加密货币市值低于挖矿收益时,矿机将因利益驱动而关机停止挖矿。 这时候会造成全网算力急剧下降,更容易实施51%攻击。 这次对 ETC 的 51% 攻击就是利用了这个机会。 对于新兴的基于 PoW 的加密货币,由于全网算力较低,攻击成本较低。

ETH 比 ETC 更不容易遭受 51% 攻击,因为 ETH 和 ETC 使用相同的挖矿算法,但 ETH 的全网算力是 ETC 的 20 倍左右。 即便如此,以太坊创始人维塔利克在袭击发生后仍然发声,称该事件证明了他从 PoW 转向 PoS 的决定是正确的。

3.基于PoW的区块链还安全吗?

毫无疑问,在过去的10年里,以比特币为代表的加密数字货币取得了巨大的成功,其安全性也得到了网络实际运行的检验。 不仅如此,密码学家还从理论上证明了基于 PoW 的区块链的安全性。 人们认为数学是区块链安全的基石,也被称为 In Math We Trust。 然而,近年来的技术发展和研究表明,基于 PoW 的区块链也存在安全隐患。

1)算力集中

事实上,在比特币等加密数字货币系统中,由于超级矿池的存在,人们长期以来一直关注算力集中度问题。 利益相关者组成的大型矿池和矿池联盟可能控制接近甚至超过51%的算力。 我们不能说这些大型算力集团会对系统发起51%算力攻击,但至少他们有能力发起这样的攻击。

2)算力黑天鹅隐患

在目前的技术条件下,加密数字货币的计算能力取决于硬件计算和能源供应的速度。 一个始终存在的隐患是,一旦算力出现飞跃,系统的安全可能面临重大威胁。 例如,由于快速算法的发明或芯片技术的更替,新的计算资源可能会压倒性地超过原有资源。 在这种情况下,系统的安全性将被彻底破坏。

比特币黑客攻击_比特币依靠什么检测双花攻击_比特币被黑客攻击

以上分析表明,PoW 区块链的安全性并不是建立在数学基础上的,数学只是物理资源与区块链之间的粘合剂。 一旦物理资源的安全假设不成立,区块链系统的安全就会受到威胁。

从系统角度看,基于 PoW 的区块链依靠算力竞争来选择区块生产者,即记账人。 算力是区块链生态本身的一种外部资源,用户可以租用算力的多少与其持有的链上资产/权益没有必然联系。 此外,算力租赁网站的出现,使得算力的使用权触手可及。 快速转移。 例如,拥有算力的矿主或矿机制造商的利益与主链的安全是强绑定的,但算力租用者则不然。 计算能力的大小是发动攻击的唯一因素。 如果采用自私挖矿等策略,当前公链在算力未达到51%的情况下就可以被攻击,造成双花。

因此比特币依靠什么检测双花攻击,在 PoW 区块链系统中,外部攻击者可以通过投资计算资源来威胁数字货币现有的价值体系。 由于现有 PoW 算法的高度同质化,大量的计算资源可以在系统内用户完全不知情的情况下被注入,而且这个过程甚至可能不涉及任何生态系统中的任何现有用户。 借用《三体》中的一句话:“我毁了你,与你无关。”

4.我们有更好的选择吗

近年来,越来越多的区块链系统和分布式共识协议被提出。 其中一个重要方向是基于股权的共识(Proof of Stake,PoS)。

PoS 最初的提出主要是为了解决 PoW 的能耗问题。 PoS 和 PoW 的本质目的是一样的,都是在区块链网络的参与节点中随机选择一个节点记账。 “随机”这个词看似简单,意思是公平、不可预测、不受恶意节点控制,但实际上在去中心化网络中很难做到,因为没有上帝来掷骰子。 PoW 的随机原则是,你拥有的算力越多,你成为簿记员的可能性就越大。 PoS 的随机原则是,你拥有的 stake 越多,你成为簿记员的可能性就越大。 看起来两者很相似,但只是用于选举。 “凭据”不同,但两者的设计和所面临的攻击却大不相同。

PoS 依靠 stake 来选择簿记员。 参与选举的人所拥有的股份被记录在区块链上,股份比例——即一个用户所持有的股份占区块链上股份总数的比例。 PoS 进行 51% 攻击,需要持有链上 51% 的股权,股权的获取只能从现有用户手中购买,不能投入到系统外的生产中。 因此,对 PoS 系统发起 51% 攻击的成本等于从市场上购买权益的成本。

以ETC为例,目前ETC总发行量为107,514,088 ETC。 如果共识算法是PoS,那么对其进行51%攻击需要持有53,747,044个ETC,相当于市值约229,542,578美元。 在 PoW 的情况下,通过租用算力只需 5000 美元左右。 PoS 51%攻击所需资金与其他数字货币PoW 1小时51%攻击成本对比如下表(数据来自Crypto51,数据会实时变化,下表)数据为作者撰写本文时所取)。 而在法链上持股越多的人越倾向于维护这条链。 如果将stake转让租赁给攻击者,其面临的风险远大于租用的算力,因此攻击者很难通过租赁获得足够的算力。 赌注。 所以在 51% 攻击方面,PoS 比 PoW 更有优势。 这也是ETH会演变成PoS共识的重要原因。

比特币黑客攻击_比特币被黑客攻击_比特币依靠什么检测双花攻击

总而言之,与 PoW 相比,PoS 有两个最大的优势。 一是可以避免能源浪费,也可以降低节点参与共识的成本。 另一个是它提高了产生51%攻击的门槛。 在中心化的情况下,PoS 比 PoW 更安全。 但是,就像一些全网算力较小的新兴数字货币一样,采用PoS共识算法的数字货币在初期也容易受到51%攻击,因为一开始链上的权益总量很小,而51%攻击发生所需资金相应较小,因此需要在上线初期加强安全防护,提前做好应对措施。

比特币被黑客攻击_比特币依靠什么检测双花攻击_比特币黑客攻击

5. PoS 共识协议的关注点与对策

相对于已经在众多区块链项目中成功应用的PoW,PoS共识协议尚未得到广泛应用,因此很多人对PoS共识协议存在各种顾虑。 下面我们一一分析PoS可能存在的攻击和弱点。

1)PoS是中心化系统

在 PoS 算法研究之初,许多研究者自然而然地受到了分布式计算理论和密码学研究的启发。 拜占庭容错协议(BFT)是用于在分布式环境中达成共识的经典算法,因此大多数提出的 PoS 共识算法都可以视为 BFT 的某种变体。 BFT算法的优点是在理想的网络环境下确认延迟短,但由于其通信复杂度高,限制了参与共识的节点数量,因此不能直接用于全球公链. 在EOS(DPoS)和Algorand等系统中,共识是通过选择一些代表来实现类拜占庭协议,从而给人主观上的印象,即PoS是一个中心化的协议。 事实上,目前的研究也提出了类似 PoW 的有竞争力的 PoS 协议比特币依靠什么检测双花攻击,所以不用担心 PoS 是一个中心化系统。

2)新PoS链冷启动不安全

一种观点认为,由于 PoS 系统的共识节点是由 Token 决定的,系统必须有预代币分配才能冷启动,因此 PoS 系统的控制权属于少数早期参与者。 为过度利益作恶甚至破坏整个系统以实现双花等攻击。 在实践中,这些担忧并不存在,原因如下:

a) 目前,区块链生态发展相对成熟。 新区块链主链上线前,往往要经过多轮募资活动。 因此,即使是创始团队也无法控制过多的 Token 份额。 而一个理性的团队,是不会追求过多的股份控制权的。 只有 Token 充分去中心化,系统才能安全。

b) 在PoS系统中,Token持有者的权益充分体现在Token的价值上。 诱导维护系统安全的更大动机,因此不太可能从事恶意行为。 在 PoW 系统中,攻击者实施攻击后可以将算力等硬件投资转移到其他区块链系统中,获取短期利益,因此恶意行为的可能性更高。

c) 在新区块链的启动阶段,如果采用 PoW 协议,外部计算资源会不受控制地涌入系统。 此时由于整个系统的总算力不高,攻击者可以用较少的资源完成攻击,因此PoW区块链的冷启动阶段就更加不安全了。 事实上,除了比特币、以太坊等已经积累了大量算力的PoW区块链,所有新产生的区块链都面临这个问题。 前期BCH分叉带来的算力竞争,折射出新链的风险。 为了避免被攻击,往往是一个中心化的矿池来维护前期的安全,所以中心化程度比PoS要高。

3)PoS财富中心化严重

比特币黑客攻击_比特币依靠什么检测双花攻击_比特币被黑客攻击

在前面的讨论中,我们分析过,在启动阶段,PoS区块链往往已经实现了Token的初始分发。 最初获得的Token确实会在区块链后续的成长中带来进一步的投资收益,所以有人担心富者愈富,造成财富集中。 针对这个问题,我们分析如下:

a) 财富集中存在于任何经济系统中,在 PoS 系统中并不更严重。 现有的经济研究表明,即使在最公平的经济体系中,也会出现财富集中。 我们常说的第28次财富分配就是形式财富集中现象的体现。 PoS系统初期的Token分配比大多数上市公司初期成为巨头的股权分配更加去中心化和透明化。

b) 只要提供公平透明的交易环境,财富集中现象就不会被无限放大,不必担心。 如果Token能够在二级市场自由流通,Token自然会在市场上得到一个公允的价格估值。 如果吸引到足够多的兴趣,原来的投资人也会卖出获利; 如果看好系统的前景,后期投资者会理性买入。 所以,不用担心后来者买不到,或者财富完全集中。

事实上,由于参与PoW系统挖矿需要大量的硬件投入和算力投入,分散的参与者在成本上远不如大型矿池。 当币价市场出现波动时,最先退出的往往是小规模矿工,因此财富和算力的中心化在 PoW 系统中会更加明显。

4)PoS会受到Nothing-at-Stake攻击

Nothing-at-Stake 是指在 PoS 系统中,由于尝试生成区块不会消耗大量的硬件资源,因此攻击者可以在不遵循协议的情况下尝试在不同的区块之后生成新的区块。 这给了我们一个清晰的直觉,即 PoS 系统更容易出现分叉。 但是设计良好的 PoS 系统可以完全抵抗 Nothing at Stake 攻击。

在我们写的一篇论文中[1],我们提出了一种新的 PoS 协议 iChing,它是一种类似于 PoW 的竞争性共识协议。 论文对GreedyAttack(一种基于Nothing-at-Stake的攻击策略)进行了理论分析,结果表明,攻击者在链上任何地方进行的贪婪尝试确实会使攻击者受益,但利润并不是无限大。 表现在如果攻击者持有与诚实节点相同比例的stake,则攻击者产生的链的增长率至多为诚实链的e倍(e为数学常数,约为2.71828) , 所以 PoS 可以容忍 stake 中恶意 stake 的比例不超过 30%(计算过程见论文)。 针对这种情况,论文给出了对策。 在鼓励诚实节点适度贪婪的策略下,可容忍的恶意质押比例可达43%以上。 因此,Nothing at Stake 不是不可逾越的攻击。

5)PoS会受到Long-Range攻击

Long-Range attack是指攻击者通过长期积累对PoS系统进行攻击的方法,其具体表现形式可能会有所不同。 最直接的 Long-Range 攻击是攻击者收集或购买大量在过去某个时间点有效的质押账户,从而从更早的时间点发起分叉。 论文[2]提出了一种属于Long-Range的攻击策略,称为Stake-Bleeding攻击。 在本次攻击中,攻击者通过长期的秘密分叉挖矿积累了足够的奖励代币后,发起分叉攻击。

文中对Long-Range的攻击方式进行了归纳总结。 一般来说,Long-Range攻击需要经过长时间的准备和操作才能实施。 根据这个特点,可以通过相应的技术手段来避免或消除Long-Range,包括设置定期检查点(checkpoints)。 事实上,为了提高区块链的验证速度,PoW 区块链中经常采用检查点技术。 因此,Long-Range 攻击不会对真正的 PoS 区块链系统构成严重威胁。

比特币依靠什么检测双花攻击_比特币被黑客攻击_比特币黑客攻击

六、下一代区块链应满足的特点

为了支持更多的实际应用,区块链不仅要满足安全性和去中心化的基本要求,还要解决吞吐率低、确认时间长等问题。

吞吐率低主要是由于区块链传统的单链结构和网络传输延迟。 因此,最近提出的DAG结构、交易打包方式、交易分片处理方式等都是为提高区块链吞吐率而进行的研究。 .

确认时间延长是所有竞争的区块链共识算法都存在的问题。 这个问题可以通过在上层叠加一个快速确认协议来改善。

我们认为,下一代区块链必须具备以下特点,才能真正支持安全、高效、灵活的应用落地:

1)基于PoS共识算法,避免了对外部资源的安全依赖,消除了系统外攻击的威胁。

2)坚持去中心化设计,避免将系统共识权委托给少数节点,否则会回落到现有的中心化系统。

3) 完善的数据分布式存储设计,避免了交易数据在全网的广播和存储,支持高吞吐量的应用。

4)叠加高速确认算法,实现正常交易的快速确认,支持准实时应用场景。

参考:

[1] Fan L, Zhou H S. iChing:开放环境中的可扩展权益证明区块链。

[2] Gaži P, Kiayias A, Russell A. 权益证明区块链的权益流血攻击。 2018 年加密谷区块链技术会议 (CVCBT)。 IEEE, 2018: 85-92