# ビットコインの重複取引:珍しいが興味深い特例ビットコイン取引は通常、前の取引のIDを参照して未使用の出力を使用します。これらの出力は一度だけ使用でき、さもなければ二重支払いの問題が発生します。しかし、ビットコインの歴史の中で完全に同じ取引が二組存在したことがあります。このような状況が発生する可能性があるのは、コインベース取引には入力がなく、直接新しい通貨を生成するためです。したがって、異なる2つのコインベース取引が同じアドレスに同じ数の通貨を送信する可能性があり、完全に同じ取引を構築します。これらの取引の内容が同じであるため、その取引IDも同じになります。! [ビットコイン重複トランザクション:最小限のリスクで興味深いバグ](https://img-cdn.gateio.im/social/moments-2846f47605c9192f211e3a6b36c04d0d)この2つのグループの重複取引は、2010年11月14日から15日までの間に発生し、約16時間の間隔があります。最初のグループの重複取引は、2番目のグループの間に挟まれています。取引IDがd5d2で始まるものを最初の重複取引として分類しますが、それはブロックチェーン上での最初の出現時間が別の重複取引よりも遅いです。一部のブロックチェーンエクスプローラーでは、これらの重複取引が異なるブロックに繰り返し表示される状況を見ることができます。異なるブロックチェーンエクスプローラーは、これらの重複取引を表示する際に異なるデフォルトの動作を持つ可能性があります。! [ビットコイン重複トランザクション:最小限のリスクで興味深いバグ](https://img-cdn.gateio.im/social/moments-edcc2e884cd4273116606ff15afa6e15)これらの重複取引はそれぞれ50 BTCを含み、合計で200 BTCに関与しています。現時点では、これらのビットコインはまだ使用されていません。理論的には、関連する秘密鍵を持つ人がこれらのビットコインを使用できる可能性があります。しかし、一度使用されると、重複する50 BTCは失われるため、実際に利用可能なのは100 BTCだけです。これらの通貨が使用される際にどのブロックから支出されるかは、現時点では不明です。繰り返し取引は明らかにいくつかの問題を引き起こす可能性があります。それらはウォレットやブロックエクスプローラーを混乱させ、ビットコインの出所を特定するのを難しくします。これにより、取引所への繰り返し入金などの攻撃に利用される可能性もあります。! [ビットコイン重複トランザクション:最小限のリスクで興味深いバグ](https://img-cdn.gateio.im/social/moments-9e956bcc28b2786c805e8c59bc4aee37)この問題を解決するために、2012年3月にビットコインはソフトフォークを通じてBIP30を実施し、重複取引IDを使用した取引を禁止しました。2012年9月にはさらに修正が行われ、BIP30のチェックがすべてのブロックに適用されるようになり、前述の2つの重複取引を除外しました。2013年3月、ビットコインはBIP34ソフトフォークを再びアクティブ化し、コインベース取引にブロック高情報を含めるよう要求しました。これは重複取引の問題を根本的に解決したように見え、理論的にはすべての取引がユニークであるべきです。! [ビットコイン重複トランザクション:最小限のリスクで興味深いバグ](https://img-cdn.gateio.im/social/moments-e19f04bf763b8df0cd361e2927ccaaba)しかし、BIP34が有効化される前のいくつかのブロックにおいて、いくつかのコインベーストランザクションのscriptSigの最初のバイトが、将来有効なブロック高とちょうど一致する場合があります。これは、極めて稀な状況下で、取引が再度発生する可能性があることを意味します。次に重複取引が発生する可能性のあるブロックは1,983,702で、2046年1月頃に生成されると予想されています。! [ビットコイン重複トランザクション:リスクの少ない興味深いバグ](https://img-cdn.gateio.im/social/moments-0076e239e15e09665bdc3aaa08391cef)しかし、この取引をコピーする難しさやコスト、そしてそれを利用する機会が非常に稀であることを考慮すると、この脆弱性はビットコインの主要なセキュリティ脅威ではありません。それでも、開発者たちはこの問題を完全に修正する方法を研究しており、ソフトフォークを通じて実現する必要があるかもしれません。修正案の一つはSegWitの約束を強制することです。! [ビットコイン重複トランザクション:最小限のリスクで興味深いバグ](https://img-cdn.gateio.im/social/moments-fb0734843d00c4922acda3f85fd02126)
ビットコイン歴史の中での珍しい現象:繰り返し取引とその進化
ビットコインの重複取引:珍しいが興味深い特例
ビットコイン取引は通常、前の取引のIDを参照して未使用の出力を使用します。これらの出力は一度だけ使用でき、さもなければ二重支払いの問題が発生します。しかし、ビットコインの歴史の中で完全に同じ取引が二組存在したことがあります。このような状況が発生する可能性があるのは、コインベース取引には入力がなく、直接新しい通貨を生成するためです。したがって、異なる2つのコインベース取引が同じアドレスに同じ数の通貨を送信する可能性があり、完全に同じ取引を構築します。これらの取引の内容が同じであるため、その取引IDも同じになります。
! ビットコイン重複トランザクション:最小限のリスクで興味深いバグ
この2つのグループの重複取引は、2010年11月14日から15日までの間に発生し、約16時間の間隔があります。最初のグループの重複取引は、2番目のグループの間に挟まれています。取引IDがd5d2で始まるものを最初の重複取引として分類しますが、それはブロックチェーン上での最初の出現時間が別の重複取引よりも遅いです。
一部のブロックチェーンエクスプローラーでは、これらの重複取引が異なるブロックに繰り返し表示される状況を見ることができます。異なるブロックチェーンエクスプローラーは、これらの重複取引を表示する際に異なるデフォルトの動作を持つ可能性があります。
! ビットコイン重複トランザクション:最小限のリスクで興味深いバグ
これらの重複取引はそれぞれ50 BTCを含み、合計で200 BTCに関与しています。現時点では、これらのビットコインはまだ使用されていません。理論的には、関連する秘密鍵を持つ人がこれらのビットコインを使用できる可能性があります。しかし、一度使用されると、重複する50 BTCは失われるため、実際に利用可能なのは100 BTCだけです。これらの通貨が使用される際にどのブロックから支出されるかは、現時点では不明です。
繰り返し取引は明らかにいくつかの問題を引き起こす可能性があります。それらはウォレットやブロックエクスプローラーを混乱させ、ビットコインの出所を特定するのを難しくします。これにより、取引所への繰り返し入金などの攻撃に利用される可能性もあります。
! ビットコイン重複トランザクション:最小限のリスクで興味深いバグ
この問題を解決するために、2012年3月にビットコインはソフトフォークを通じてBIP30を実施し、重複取引IDを使用した取引を禁止しました。2012年9月にはさらに修正が行われ、BIP30のチェックがすべてのブロックに適用されるようになり、前述の2つの重複取引を除外しました。
2013年3月、ビットコインはBIP34ソフトフォークを再びアクティブ化し、コインベース取引にブロック高情報を含めるよう要求しました。これは重複取引の問題を根本的に解決したように見え、理論的にはすべての取引がユニークであるべきです。
! ビットコイン重複トランザクション:最小限のリスクで興味深いバグ
しかし、BIP34が有効化される前のいくつかのブロックにおいて、いくつかのコインベーストランザクションのscriptSigの最初のバイトが、将来有効なブロック高とちょうど一致する場合があります。これは、極めて稀な状況下で、取引が再度発生する可能性があることを意味します。次に重複取引が発生する可能性のあるブロックは1,983,702で、2046年1月頃に生成されると予想されています。
! ビットコイン重複トランザクション:リスクの少ない興味深いバグ
しかし、この取引をコピーする難しさやコスト、そしてそれを利用する機会が非常に稀であることを考慮すると、この脆弱性はビットコインの主要なセキュリティ脅威ではありません。それでも、開発者たちはこの問題を完全に修正する方法を研究しており、ソフトフォークを通じて実現する必要があるかもしれません。修正案の一つはSegWitの約束を強制することです。
! ビットコイン重複トランザクション:最小限のリスクで興味深いバグ