比特币面临时间扭曲攻击 协议漏洞引发安全隐患

比特币安全漏洞:时间扭曲攻击

近日,一位比特币开发者提出了一个新的软分叉提案,旨在修复比特币协议中长期存在的几个漏洞和弱点。其中一个较为严重的漏洞被称为"时间扭曲攻击",本文将对此进行详细探讨。

比特币安全漏洞:时间扭曲攻击

比特币区块时间戳保护机制

在讨论时间扭曲攻击之前,我们先回顾一下当前的时间操纵保护规则:

  1. 中位过去时间(MPT)规则:区块时间戳必须比最后十一个区块的中位时间更晚。

  2. 未来区块时间规则:区块时间戳不能比节点对等体的中位时间超前超过2小时。节点时间与本地系统时钟之间允许的最大差距是90分钟。

MPT规则防止区块时间戳过于回溯,而未来区块规则则防止时间戳过于超前。值得注意的是,无法实施类似未来区块规则的机制来防止区块有过去的时间戳,因为这可能会影响初始区块链同步。时间扭曲攻击正是利用伪造时间戳,使其远远回到过去。

比特币安全漏洞:时间扭曲攻击

难度调整周期的计算问题

比特币的难度调整周期包含2016个区块,以10分钟区块目标计算,约为两周时间。在计算挖矿难度调整时,协议计算相关2016区块窗口中第一个和最后一个区块之间的时间戳差。这个2016区块的窗口实际包含2015个区块间隔,因此理论上使用的目标时间应该是60秒 * 10分钟 * 2015个间隔,等于1,209,000秒。

然而,比特币协议使用了2016这个数字来计算目标。60秒 * 10分钟 * 2016 = 1,209,600秒。这是一个"差一"错误,可能是由于混淆了区块与区块之间的间隔导致的。

这个错误导致目标时间比应有的长0.05%。因此,比特币实际目标间隔时间是10分钟零0.3秒,而非10分钟整。虽然这个误差看似微不足道,但它与另一个更严重的问题相关联。

时间扭曲攻击的原理

时间扭曲攻击利用了难度计算中的这个错误。在理想情况下,假设挖矿完全中心化,矿工可以设置协议允许的任何时间戳。攻击者会采取以下策略:

  1. 对于大多数区块,将时间戳设置为比前一个区块前进一秒。
  2. 为了尽可能慢地推进时间,矿工可以连续六个区块保持相同时间戳,然后在下一个区块中将时间增加一秒。
  3. 在每个难度调整周期的最后一个区块,将时间戳设置为真实世界时间。
  4. 下一个周期的第一个区块时间戳再次回到过去,比前一周期倒数第二个区块提前一秒。

这种操作符合MTP规则,因为单个异常不会影响11个区块的中位数。通过这种方式,区块链会逐渐落后于真实时间,难度会不断增加。然而,从第二个调整周期开始,难度将开始向下调整,使得矿工可以以极快速度创建区块,潜在地产生大量比特币。

比特币安全漏洞:时间扭曲攻击

攻击的可行性与挑战

尽管理论上这种攻击具有毁灭性,但实施起来面临一些挑战:

  1. 可能需要控制大部分算力。
  2. 诚实矿工的存在会增加攻击难度。
  3. MTP规则和诚实时间戳可能限制恶意时间戳的回溯程度。
  4. 如果诚实矿工产生任何难度调整窗口的第一个区块,该周期的攻击将失效。
  5. 攻击过程是公开可见的,可能给社区留出时间推出紧急修复。

比特币安全漏洞:时间扭曲攻击

潜在的解决方案

修复这个漏洞有几种可能的方法:

  1. 改变难度调整算法,计算不同2016窗口中区块之间的时间跨度。
  2. 取消MTP规则,要求时间在每个区块中总是向前移动。
  3. 设置新的限制规则:要求新难度周期的第一个区块时间不早于前一周期最后一个区块之前的特定分钟数。

目前,大共识清理提案中建议采用第三种方法,将时间限制设为2小时。这个时间段约为难度调整周期目标时间的0.6%,可以有效限制操纵难度向下的能力。

关于具体应使用多长的宽限期,业内存在不同观点。10分钟限制和2小时限制各有优缺点,需要权衡考虑。无论最终采用哪种方案,修复这个漏洞都将大大提高比特币网络的安全性和稳定性。

比特币安全漏洞:时间扭曲攻击

BTC-2.8%
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 8
  • 转发
  • 分享
评论
0/400
MintMastervip
· 3小时前
有人还在惦记着搞币圈啊
回复0
consensus_whisperervip
· 08-11 04:51
新漏洞又来 该润了
回复0
liquidation_surfervip
· 08-09 19:16
又得掏钱修补漏洞了啧啧
回复0
MeaninglessApevip
· 08-09 17:34
又又又出漏洞 无语了家人们
回复0
幽灵地址猎手vip
· 08-09 17:34
挖到漏洞了有人吗 说黑就黑吧
回复0
GasWasterrvip
· 08-09 17:31
攻击归攻击 反正我看不懂就完事儿了
回复0
MEVHuntervip
· 08-09 17:11
呵,发现了另一个美味的漏洞……说实话,时间只是另一个可以操纵的变量。从测试网时期就开始监控这个漏洞了。
查看原文回复0
ApeWithNoFearvip
· 08-09 17:10
挖矿机器才吓人
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)