比特币历史上的重复交易:原因、影响及未来挑战

robot
摘要生成中

比特币重复交易:一个罕见但有趣的特例

比特币交易通常通过引用前一笔交易的ID来使用未花费的输出。这些输出只能被花费一次,否则就会导致双重支付问题。然而,比特币历史上确实出现过两组完全相同的交易。这种情况之所以可能发生,是因为coinbase交易没有输入,而是直接生成新币。因此,两个不同的coinbase交易有可能以完全相同的方式构建,发送相同数量到相同地址,从而产生相同的交易ID。

比特币的重复交易:一个风险极小的有趣Bug

这两组重复交易发生在2010年11月14日至15日之间,跨度约16小时。第一组重复交易的ID以d5d2开头,第二组以e3bf开头。有趣的是,不同的区块浏览器在显示这些重复交易时会有不同的行为。

比特币的重复交易:一个风险极小的有趣Bug

重复交易涉及的总金额为200 BTC,或者说实际上只有100 BTC。截至目前,这些比特币都未被使用。理论上,拥有相关私钥的人可以花费这些币,但只能花费100 BTC,另外100 BTC将无法使用。

比特币的重复交易:一个风险极小的有趣Bug

重复交易显然会带来问题,比如可能被利用来对交易所进行攻击。为了解决这个问题,2012年实施了BIP30软分叉,禁止使用重复交易ID。随后BIP34要求coinbase交易包含区块高度,进一步防止了重复交易的产生。

比特币的重复交易:一个风险极小的有趣Bug

然而,BIP34之前仍有一些coinbase交易的scriptSig恰好与未来的区块高度匹配。下一个可能出现重复交易的区块是1,983,702,预计在2046年1月左右产生。不过,利用这个漏洞的成本非常高,需要烧掉约170 BTC。

比特币的重复交易:一个风险极小的有趣Bug

考虑到复制交易的难度和成本,以及利用机会极其罕见,这个漏洞并不是比特币的主要安全隐患。尽管如此,开发人员仍在考虑在2046年之前彻底修复这个问题,可能需要通过软分叉来实现。

比特币的重复交易:一个风险极小的有趣Bug

BTC-0.16%
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 3
  • 分享
评论
0/400
LiquidityHuntervip
· 07-21 19:31
凌晨盯着数据看 这漏洞套利空间不小啊
回复0
NFTragedyvip
· 07-21 19:31
当年两百币 现在值多少了
回复0
胶水君vip
· 07-21 19:26
交易id居然能重复 见鬼了
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)