# ビットコインの重複取引:興味深いが影響は限られたバグビットコインネットワークには興味深い脆弱性が存在します - 重複取引です。通常、ビットコイン取引は前の取引のIDを参照して未使用の出力を使用します。これらの出力は一度だけ使用可能であり、さもなければ二重支払いの問題が発生します。しかし、ビットコインの歴史の中で、完全に同じ取引が2組発生したことがあります。! [ビットコイン重複トランザクション:最小限のリスクで興味深いバグ](https://img-cdn.gateio.im/social/moments-2846f47605c9192f211e3a6b36c04d0d)このような状況が発生する可能性があるのは、coinbase取引に入力がなく、新しい通貨を直接生成するためです。したがって、2つの異なるcoinbase取引が同じアドレスに同じ数量のビットコインを送信する可能性があり、まったく同じ取引を構築することができます。取引内容が同じであるため、その取引ID(TXID)も同じになります。これらの2つの重複トランザクションは、2010年11月14日から15日まで、約16時間の間に発生しました。最初の重複トランザクションIDはd5d2....8599、2番目はe3bf....b468です。興味深いことに、d5d2....8599は最初にコピーされたにもかかわらず、ブロックチェーン上ではe3bf....b468の後に現れました。! [ビットコイン重複トランザクション:最小限のリスクで興味深いバグ](https://img-cdn.gateio.im/social/moments-edcc2e884cd4273116606ff15afa6e15)これらの重複取引はそれぞれ50 BTCの価値があり、合計で200 BTCが関与しています。ある意味では、そのうちの100 BTCは実際には存在しません。現在のところ、これらの200 BTCはまだ使用されていません。理論的には、関連する秘密鍵を持つ人がこれらのビットコインを使うことができますが、一度使用されると重複した50 BTCは失われるため、実際には100 BTCのみが回収可能です。繰り返しの取引は明らかにウォレットやブロックブラウザに混乱をもたらし、攻撃に利用される可能性もあります。例えば、攻撃者は2回の繰り返し取引で取引所に資金を預け、すぐに引き出そうとし、取引所を破産させようとします。この問題を解決するために、ビットコインコミュニティは複数の対策を講じました:1. 2012年3月、BIP30ソフトフォークは、前のTXIDが使用されている場合を除き、重複TXIDを使用した取引を禁止しました。2. 2012年9月、グレッグ・マクスウェルはルールを変更し、BIP30チェックをすべてのブロックに適用するようにしましたが、前述の2つの重複取引は保持されました。3. 2013年3月,BIP34ソフトフォークはコインベース取引にブロック高を含めることを要求し、これにより基本的に重複取引の問題が解決されました。4. 2015年11月、ビットコインコアはBIP30チェックの実行を停止しました。なぜなら、BIP34がこの問題を修正したからです。! [ビットコイン重複トランザクション:最小限のリスクで興味深いバグ](https://img-cdn.gateio.im/social/moments-9e956bcc28b2786c805e8c59bc4aee37)しかし、BIP34が有効になる前のいくつかのブロックでは、coinbaseトランザクションのscriptSigsの最初のバイトがちょうど将来有効なブロック高と一致しています。これは、重複トランザクションの問題が100%解決されていないことを意味します。次に重複トランザクションが発生する可能性のあるブロックは1,983,702で、2046年1月頃に生成されると予想されています。! [ビットコイン重複トランザクション:最小限のリスクで興味深いバグ](https://img-cdn.gateio.im/social/moments-e19f04bf763b8df0cd361e2927ccaaba)しかし、この脆弱性を利用するコストは非常に高いです。ブロック1,983,702の例を挙げると、攻撃者は約170 BTCの費用を失わなければならず、現在の価格で約1500万ドルに相当します。そして、これらの資金はおそらく回収できないでしょう。さらに、2017年のSegWitアップグレード以降、coinbase取引にはブロック内のすべての取引に対する約束が含まれており、攻撃の難易度がさらに増しています。! [ビットコイン重複トランザクション:リスクの少ない興味深いバグ](https://img-cdn.gateio.im/social/moments-0076e239e15e09665bdc3aaa08391cef)取引の複製に関する難しさやコスト、機会の希少性を考慮すると、この脆弱性はビットコインの主なセキュリティ脅威を構成していません。それにもかかわらず、開発者は修正策を見つけるために努力しており、ソフトフォークを通じて実現する必要があるかもしれません。可能なアプローチの一つは、SegWitのコミットメントを強制することです。全体的に見て、リピートトランザクションの脆弱性は興味深いものの、その実際の影響は非常に限られています。これは主にビットコインネットワークの複雑さと、開発者たちがシステムを継続的に改善しようとする努力を反映しています。! [ビットコイン重複トランザクション:最小限のリスクで興味深いバグ](https://img-cdn.gateio.im/social/moments-fb0734843d00c4922acda3f85fd02126)
ビットコインの重複取引の脆弱性:歴史的な逸話と未来の課題
ビットコインの重複取引:興味深いが影響は限られたバグ
ビットコインネットワークには興味深い脆弱性が存在します - 重複取引です。通常、ビットコイン取引は前の取引のIDを参照して未使用の出力を使用します。これらの出力は一度だけ使用可能であり、さもなければ二重支払いの問題が発生します。しかし、ビットコインの歴史の中で、完全に同じ取引が2組発生したことがあります。
! ビットコイン重複トランザクション:最小限のリスクで興味深いバグ
このような状況が発生する可能性があるのは、coinbase取引に入力がなく、新しい通貨を直接生成するためです。したがって、2つの異なるcoinbase取引が同じアドレスに同じ数量のビットコインを送信する可能性があり、まったく同じ取引を構築することができます。取引内容が同じであるため、その取引ID(TXID)も同じになります。
これらの2つの重複トランザクションは、2010年11月14日から15日まで、約16時間の間に発生しました。最初の重複トランザクションIDはd5d2....8599、2番目はe3bf....b468です。興味深いことに、d5d2....8599は最初にコピーされたにもかかわらず、ブロックチェーン上ではe3bf....b468の後に現れました。
! ビットコイン重複トランザクション:最小限のリスクで興味深いバグ
これらの重複取引はそれぞれ50 BTCの価値があり、合計で200 BTCが関与しています。ある意味では、そのうちの100 BTCは実際には存在しません。現在のところ、これらの200 BTCはまだ使用されていません。理論的には、関連する秘密鍵を持つ人がこれらのビットコインを使うことができますが、一度使用されると重複した50 BTCは失われるため、実際には100 BTCのみが回収可能です。
繰り返しの取引は明らかにウォレットやブロックブラウザに混乱をもたらし、攻撃に利用される可能性もあります。例えば、攻撃者は2回の繰り返し取引で取引所に資金を預け、すぐに引き出そうとし、取引所を破産させようとします。
この問題を解決するために、ビットコインコミュニティは複数の対策を講じました:
2012年3月、BIP30ソフトフォークは、前のTXIDが使用されている場合を除き、重複TXIDを使用した取引を禁止しました。
2012年9月、グレッグ・マクスウェルはルールを変更し、BIP30チェックをすべてのブロックに適用するようにしましたが、前述の2つの重複取引は保持されました。
2013年3月,BIP34ソフトフォークはコインベース取引にブロック高を含めることを要求し、これにより基本的に重複取引の問題が解決されました。
2015年11月、ビットコインコアはBIP30チェックの実行を停止しました。なぜなら、BIP34がこの問題を修正したからです。
! ビットコイン重複トランザクション:最小限のリスクで興味深いバグ
しかし、BIP34が有効になる前のいくつかのブロックでは、coinbaseトランザクションのscriptSigsの最初のバイトがちょうど将来有効なブロック高と一致しています。これは、重複トランザクションの問題が100%解決されていないことを意味します。次に重複トランザクションが発生する可能性のあるブロックは1,983,702で、2046年1月頃に生成されると予想されています。
! ビットコイン重複トランザクション:最小限のリスクで興味深いバグ
しかし、この脆弱性を利用するコストは非常に高いです。ブロック1,983,702の例を挙げると、攻撃者は約170 BTCの費用を失わなければならず、現在の価格で約1500万ドルに相当します。そして、これらの資金はおそらく回収できないでしょう。さらに、2017年のSegWitアップグレード以降、coinbase取引にはブロック内のすべての取引に対する約束が含まれており、攻撃の難易度がさらに増しています。
! ビットコイン重複トランザクション:リスクの少ない興味深いバグ
取引の複製に関する難しさやコスト、機会の希少性を考慮すると、この脆弱性はビットコインの主なセキュリティ脅威を構成していません。それにもかかわらず、開発者は修正策を見つけるために努力しており、ソフトフォークを通じて実現する必要があるかもしれません。可能なアプローチの一つは、SegWitのコミットメントを強制することです。
全体的に見て、リピートトランザクションの脆弱性は興味深いものの、その実際の影響は非常に限られています。これは主にビットコインネットワークの複雑さと、開発者たちがシステムを継続的に改善しようとする努力を反映しています。
! ビットコイン重複トランザクション:最小限のリスクで興味深いバグ