什么是加密货币中的长程攻击(Long Range Attack)?如何防范?


长程攻击(Long Range Attack) 是一种主要针对权益证明(Proof of Stake,PoS) 区块链网络的攻击,例如 Cardano 和以太坊。在长程攻击中,恶意行为者试图从区块链很久以前的某个区块开始,创建一个替代版本的区块链。攻击者尝试从那个点构建一条新链,最终使这条新链比当前的“合法”链更长。由于许多区块链将“最长链”视为正确链,这样的替代历史理论上可能被接受为有效。

长程攻击特别适合 PoS 系统,因为验证者不需要消耗计算能力,而是通过质押代币来参与。当旧验证者的私钥落入攻击者手中(例如因出售或泄露),攻击者就可以利用这些密钥从过去的某个点开始构建替代链,而无需承担工作量证明(PoW)那样高昂的成本。

长程攻击的主要目的通常是使之前的交易失效、实现双花(double spending),或误导网络。

长程攻击如何运作?

攻击者首先获取过去活跃验证者的旧私钥。这可能发生在验证者出售质押份额或未妥善保管密钥时。由于这些密钥曾经有效,攻击者可以用它们重新签名历史区块。

接下来,攻击者选择一个很久以前的区块,并从该点开始构建一条替代链。这在区块链中是可行的,因为许多系统的共识基于加密签名的有效性和链的长度,而非绝对时间线。由于这条旧链上几乎没有竞争,攻击者可以相对快速地生成区块。在某些情况下,这条替代链甚至可能比当前链更长。

新加入网络且没有完整或近期历史记录的节点可能会被误导。它们可能认为最长链就是正确链,从而接受恶意链。这可能导致双花、交易被改写,并损害网络信任。

如何防范长程攻击?

区块链开发者已开发出多种机制来防范长程攻击:

检查点(Checkpoints) 检查点是嵌入区块链代码中的区块,被视为最终确定且不可逆转。节点不会接受在这些检查点之前分叉的替代链。

罚没机制(Slashing) 对试图作弊的验证者施加经济惩罚,例如签署无效区块或冲突链。这使得参与攻击在经济上变得不划算。

弱主观性(Weak Subjectivity) 新节点不仅依赖最长链,还需要区块链的近期可信状态(例如通过可信来源或检查点)。这使得攻击者更难改写区块链历史。

验证者自身也可以采取措施,例如安全存储私钥,防止攻击者获取旧验证者密钥,从而降低长程攻击风险。

其他常见攻击类型

除了长程攻击,加密和区块链世界中还有许多其他攻击类型。最著名的是51% 攻击,攻击者试图获得大部分算力(PoW)或质押量(PoS)来控制区块链并操纵交易。

还有 Sybil 攻击,恶意方创建多个虚假身份以获得对网络的不成比例的影响力,可用于扰乱共识机制。

其他攻击包括:

  • Eclipse 攻击:将一个节点与网络其他部分隔离,只连接到恶意节点,从而操纵该节点接收的信息。
  • 重放攻击(Replay Attack):在分叉后,交易在多条链上被重复执行,而用户并未有意为之。
  • 智能合约攻击:利用智能合约代码中的漏洞窃取资金。

总结思考

长程攻击是一种高级攻击类型,尤其与权益证明网络相关。攻击者试图利用旧验证者密钥改写区块链历史。虽然这在理论上构成严重威胁,但现代区块链协议通过检查点、罚没和弱主观性等机制,有效管理了这一风险。这些解决方案确保恶意替代链不会轻易被接受为有效,尤其是对新节点而言。

同时,这类攻击也凸显了强大安全实践和验证者负责任行为的重要性,特别是密钥管理方面。当私钥得到妥善管理且协议配置正确时,长程攻击成功的可能性会大幅降低。最终,这类攻击提醒我们,区块链网络不仅要高效,还必须对已知和高级威胁保持强大且完善的防护。

本文链接地址:https://www.wwsww.cn/jishu/39689.html
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。