# ビットコインの重複取引: 面白いがリスクの非常に低い脆弱性ビットコインネットワークには興味深い現象があります: 二つの完全に同じ取引です。この状況が発生する理由は、コインベース取引には入力がなく、新しい通貨が直接生成されるからです。したがって、二つの異なるコインベース取引が同じアドレスに同じ数量のビットコインを送信し、完全に同じ方式で構築されることがあり、それにより完全に一致します。これらの取引が同じであるため、彼らの取引ID(TXID)も一致します。TXIDは取引データのハッシュ要約だからです。! [ビットコイン重複トランザクション:最小限のリスクで興味深いバグ](https://img-cdn.gateio.im/social/moments-2846f47605c9192f211e3a6b36c04d0d)この2つの重複取引は2010年11月14日から15日にかけて、約16時間の間に発生しました。最初の重複取引は2番目のグループの間に挟まれています。私たちはd5d2....8599を最初の重複取引として分類します。なぜなら、それが最初にコピーとなったからですが、ブロックチェーン上では別の重複取引e3bf....b468よりも遅れて初めて登場したからです。! [ビットコイン重複トランザクション:最小限のリスクで興味深いバグ](https://img-cdn.gateio.im/social/moments-edcc2e884cd4273116606ff15afa6e15)これらの重複取引に関与するビットコインの総額は200 BTCであるか、理解の仕方によっては100 BTCとなる。現時点で、これらのビットコインは未使用である。理論的には、関連するプライベートキーを持つ人はこれらのビットコインを使用できるが、一度使用されると、重複する50 BTCは再び使用できず失われるため、実際に使用可能なのは100 BTCのみである。! [ビットコイン重複トランザクション:最小限のリスクで興味深いバグ](https://img-cdn.gateio.im/social/moments-9e956bcc28b2786c805e8c59bc4aee37)繰り返しの取引は明らかに問題があります。それらはウォレットやブロックエクスプローラーに混乱をもたらし、ビットコインの出所が不明確になります。また、実際には半分の資金しか利用できないのに、2回の繰り返し取引で誰かに2回支払うといった攻撃や脆弱性を引き起こす可能性もあります。この問題を解決するために、開発者は複数の改善提案を提出しました。1. BIP30: 2012年3月に実施されたソフトフォークで、前のTXIDが使用されていない限り、重複したTXIDを使用しての取引を禁止します。2. BIP34:2013年3月激活,要求coinbase取引がブロック高さを含むことを要求し、すべての取引は一意であるべきである。3. 2015年11月、開発者はBIP30のチェックを削除しました。なぜならBIP34がこの問題をすでに解決していたからです。! [ビットコイン重複トランザクション:最小限のリスクで興味深いバグ](https://img-cdn.gateio.im/social/moments-e19f04bf763b8df0cd361e2927ccaaba)しかし、BIP34は完璧な解決策ではありません。BIP34が有効になる前のいくつかのブロックでは、coinbase取引のscriptSigsの最初のバイトがちょうど将来有効なブロック高と一致する場合がありました。次に重複取引が発生する可能性のあるブロックは1,983,702で、2046年1月頃に生成されると予想されます。! [ビットコイン重複トランザクション:リスクの少ない興味深いバグ](https://img-cdn.gateio.im/social/moments-0076e239e15e09665bdc3aaa08391cef)それにもかかわらず、この脆弱性を利用するコストと難易度は非常に高いです。ブロック1,983,702を例にとると、マイナーは攻撃を行うために現在の価格で約1500万ドル(に相当する170 BTC)以上の費用をかける必要があり、ほとんど実際の利益はありません。取引のコピーの難しさとコスト、機会の稀少性を考慮すると、この脆弱性はビットコインの主要なセキュリティ脅威とは言えません。しかし、開発者は2046年までにこの問題の完全な修正を求める可能性があり、可能な方法にはSegWitの約束を強制することなどが含まれます。! [ビットコイン重複トランザクション:最小限のリスクで興味深いバグ](https://img-cdn.gateio.im/social/moments-fb0734843d00c4922acda3f85fd02126)
ビットコインの重複取引の脆弱性: 歴史的な遺産と未来の課題
ビットコインの重複取引: 面白いがリスクの非常に低い脆弱性
ビットコインネットワークには興味深い現象があります: 二つの完全に同じ取引です。この状況が発生する理由は、コインベース取引には入力がなく、新しい通貨が直接生成されるからです。したがって、二つの異なるコインベース取引が同じアドレスに同じ数量のビットコインを送信し、完全に同じ方式で構築されることがあり、それにより完全に一致します。これらの取引が同じであるため、彼らの取引ID(TXID)も一致します。TXIDは取引データのハッシュ要約だからです。
! ビットコイン重複トランザクション:最小限のリスクで興味深いバグ
この2つの重複取引は2010年11月14日から15日にかけて、約16時間の間に発生しました。最初の重複取引は2番目のグループの間に挟まれています。私たちはd5d2....8599を最初の重複取引として分類します。なぜなら、それが最初にコピーとなったからですが、ブロックチェーン上では別の重複取引e3bf....b468よりも遅れて初めて登場したからです。
! ビットコイン重複トランザクション:最小限のリスクで興味深いバグ
これらの重複取引に関与するビットコインの総額は200 BTCであるか、理解の仕方によっては100 BTCとなる。現時点で、これらのビットコインは未使用である。理論的には、関連するプライベートキーを持つ人はこれらのビットコインを使用できるが、一度使用されると、重複する50 BTCは再び使用できず失われるため、実際に使用可能なのは100 BTCのみである。
! ビットコイン重複トランザクション:最小限のリスクで興味深いバグ
繰り返しの取引は明らかに問題があります。それらはウォレットやブロックエクスプローラーに混乱をもたらし、ビットコインの出所が不明確になります。また、実際には半分の資金しか利用できないのに、2回の繰り返し取引で誰かに2回支払うといった攻撃や脆弱性を引き起こす可能性もあります。
この問題を解決するために、開発者は複数の改善提案を提出しました。
BIP30: 2012年3月に実施されたソフトフォークで、前のTXIDが使用されていない限り、重複したTXIDを使用しての取引を禁止します。
BIP34:2013年3月激活,要求coinbase取引がブロック高さを含むことを要求し、すべての取引は一意であるべきである。
2015年11月、開発者はBIP30のチェックを削除しました。なぜならBIP34がこの問題をすでに解決していたからです。
! ビットコイン重複トランザクション:最小限のリスクで興味深いバグ
しかし、BIP34は完璧な解決策ではありません。BIP34が有効になる前のいくつかのブロックでは、coinbase取引のscriptSigsの最初のバイトがちょうど将来有効なブロック高と一致する場合がありました。次に重複取引が発生する可能性のあるブロックは1,983,702で、2046年1月頃に生成されると予想されます。
! ビットコイン重複トランザクション:リスクの少ない興味深いバグ
それにもかかわらず、この脆弱性を利用するコストと難易度は非常に高いです。ブロック1,983,702を例にとると、マイナーは攻撃を行うために現在の価格で約1500万ドル(に相当する170 BTC)以上の費用をかける必要があり、ほとんど実際の利益はありません。
取引のコピーの難しさとコスト、機会の稀少性を考慮すると、この脆弱性はビットコインの主要なセキュリティ脅威とは言えません。しかし、開発者は2046年までにこの問題の完全な修正を求める可能性があり、可能な方法にはSegWitの約束を強制することなどが含まれます。
! ビットコイン重複トランザクション:最小限のリスクで興味深いバグ