This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
ビットコインプロトコル修復時間歪み攻撃脆弱性:大コンセンサスクリアリング提案解析
ビットコインプロトコルの時間歪み攻撃の脆弱性とその修正
2025年3月26日、ビットコイン開発者は「大共識清理」というソフトフォーク提案を提出しました。これは、ビットコインプロトコルに長年存在しているいくつかの脆弱性と弱点を修正することを目的としています。その中で最も深刻な脆弱性の一つは「時間歪み攻撃」と呼ばれ、この記事ではこれについて詳しく探討します。
ビットコインブロックタイムスタンプ保護メカニズム
時間の歪み攻撃について議論する前に、現在の時間操作保護ルールを理解する必要があります:
中位過去時間(MPT)ルール:ブロックのタイムスタンプは、前の11ブロックの中位時間よりも遅くなければなりません。
未来のブロック時間ルール:ブロックのタイムスタンプはノードのピアの中央値の時間を2時間以上前に進めてはいけません。ノードが提供する時間とローカルシステムクロックの間の許容される最大の差は90分です。
これらのルールは、ブロックのタイムスタンプが遅れすぎず、早すぎないことを確保することを目的としています。しかし、タイムディストーション攻撃は、タイムスタンプを偽造し、それをはるかに過去に戻すことによって実現されます。
! ビットコインセキュリティ侵害:タイムワープ攻撃
サトシ・ナカモトの「1人足りない」ミス
ビットコインの難易度調整周期は2016個のブロックを含み、10分ブロック目標で計算すると、約2週間の時間になります。マイニング難易度調整を計算する際、プロトコルは関連する2016ブロックウィンドウ内の最初と最後のブロックの間のタイムスタンプの差を計算します。しかし、中本聡は目標時間を計算する際に小さな誤りを犯しました:彼は2016ではなく2015を乗数として使用しました。
このエラーにより、ターゲット時間が実際に必要な時間より0.05%長くなり、ビットコインの実際のターゲット間隔時間は10分0.3秒となりました。この誤差は微々たるものに見えますが、より深刻な脆弱性の伏線を張ることになりました。
! ビットコインセキュリティ侵害:タイムワープ攻撃
タイムワープアタックの原理
時間歪曲攻撃は、中本聡の難易度計算における誤りを利用します。攻撃者は、ブロックのタイムスタンプを操作することで、ブロックチェーンが時間的に遅く進むようにし、同時にMTPルールを遵守します。具体的には、攻撃者は次のことができます:
この操作は、ブロックチェーンの時間が実際の時間に対してますます遅れていく原因となり、同時に難易度が増加し続けます。しかし、2回目の調整サイクルの後、難易度は下方調整を開始し、攻撃者は非常に速い速度でブロックを作成でき、潜在的に大量のビットコインを生成することができます。
! ビットコインセキュリティ侵害:タイムワープ攻撃
攻撃の実現可能性と制限
理論的にはこの攻撃は破壊的ですが、実施するには多くの課題があります。
! ビットコインセキュリティ侵害:タイムワープ攻撃
ソリューション
時間歪曲攻撃を防ぐために、提案では新しい難易度周期の開始時にシンプルなルールを追加することを提案しています:新周期の最初のブロックの時間が前の周期の最後のブロックの特定の時間間隔よりも早くないことを要求します。現在議論されている時間間隔は10分から2時間までさまざまです。
最新の大共通認識のクリーンアップ提案では、この時間枠が2時間に設定されています。この制限は難易度調整周期の目標時間の0.6%に過ぎず、難易度を下げる能力を効果的に制限しています。
この方法は、直接的な難易度調整アルゴリズムの変更に比べてより簡単で、ハードフォークを必要としません。それは時間の歪み攻撃を効果的に防ぎ、意図しない無効なブロックのリスクを最小限に抑えることができ、さらに既存の将来のブロックのタイムスタンプルールと一致しています。
この修正を実施することで、ビットコインネットワークは潜在的な時間操作攻撃に対してより強固に耐えることができ、安全性と安定性がさらに強化されます。
! ビットコインセキュリティの脆弱性:タイムワープ攻撃