比特币历史上的重复交易谜题: 原因、影响与未来风险

比特币重复交易:一个小概率但有趣的技术问题

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

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

这两组重复交易都发生在2010年11月14日至15日之间,时间跨度约16小时。第一组重复交易(d5d2....8599)首先成为复制品,但奇怪的是它在区块链上首次出现却在另一个重复交易(e3bf....b468)之后。

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

重复交易的出现给系统带来了一些问题。它们会让钱包和区块浏览器产生混淆,也会让人难以确定比特币的来源。这还可能被利用进行攻击,比如用两笔重复交易向某人支付两次,但实际上只有一半资金可用。

为了解决这个问题,2012年比特币开发者提出并实施了BIP30软分叉,禁止使用重复交易ID,除非前一个交易ID已被花费。2012年9月,这一规则被进一步修改,适用于所有区块,只有前面提到的两个重复交易除外。

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

2013年3月,BIP34软分叉生效,要求coinbase交易必须包含区块高度信息。这似乎彻底解决了重复交易问题,因为现在所有交易都应该是唯一的。然而,BIP34激活前的一些区块中,coinbase交易的scriptSig第一个字节恰好与未来有效的区块高度相匹配。这意味着重复交易问题仍有可能在未来出现。

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

下一个可能出现重复交易的区块是1,983,702,预计于2046年1月左右产生。不过,要利用这一漏洞,矿工需要花费巨额成本,收益却很有限。按目前比特币价格计算,这种攻击可能需要超过1500万美元。

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

虽然这个漏洞看起来并不是比特币的主要安全隐患,但开发人员仍在努力寻找修复方案。一种可能的方法是强制执行SegWit承诺。总的来说,这是一个小概率但很有趣的技术问题,反映了比特币系统的复杂性和长期演进过程。

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

此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 5
  • 分享
评论
0/400
链下人生赢家vip
· 6小时前
啧啧 历史上也就闹过这一次重复交易
回复0
暴富型韭菜vip
· 07-16 01:09
挖呦 好家伙 2010年就埋这坑了 早知当时买点接盘也不亏
回复0
永续多头人vip
· 07-16 00:57
抄底都是纸老虎 信仰才能让钱包回暖
回复0
SellTheBouncevip
· 07-16 00:57
老系统又双叒出bug 抄底的真敢买
回复0
链上资深吃瓜群众vip
· 07-16 00:50
这bug也太离谱了叭,文末省略吊人胃口
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)