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月末、ビットコイン開発コミュニティは、ビットコインプロトコルに長年存在しているいくつかの脆弱性と弱点を修正するための新しいソフトフォーク提案を提出しました。この「大共識クリーンアップ」と呼ばれる提案は、私たちが以前に議論した繰り返し取引の問題だけでなく、より深刻なセキュリティリスクである「時間歪み攻撃」にも対処しています。
! ビットコインセキュリティ侵害:タイムワープ攻撃
ビットコインのタイムスタンプ保護メカニズム
ビットコインネットワークは現在、タイムスタンプの操作を防ぐために2つの主要なルールを採用しています:
中位過去時間(MPT)ルール:新しいブロックのタイムスタンプは、前の11ブロックのタイムスタンプの中央値よりも遅くなければなりません。
未来のブロック時間ルール:ブロックのタイムスタンプは、ネットワークノードの中央値時間を2時間以上超えてはならない。ノードの時間とローカルシステム時間の最大許容差は90分である。
これらのルールは、ブロックのタイムスタンプが実際の時間から大きく外れることを防ぐことを目的としています。しかし、既存のメカニズムでは、タイムスタンプが過去に操作されるのを完全には防げません。これは初期のブロックチェーンの同期プロセスに影響を与える可能性があります。
! ビットコインセキュリティ侵害:タイムワープ攻撃
中本聡の小さなミス
ビットコインの難易度調整周期は2016ブロックで、理論上約2週間の時間です。難易度調整を計算する際、プロトコルは2016ブロックのウィンドウ内で最初と最後の2つのブロックのタイムスタンプの差を比較します。しかし、この2016ブロックには実際には2015ブロックの間隔が含まれています。したがって、正しい目標時間は60秒 × 10分 × 2015 = 1,209,000秒です。しかし、ビットコインプロトコルは2016という数字を使用しており、その結果計算は1,209,600秒になります。
この0.05%の誤差は、ビットコインの実際の目標ブロック生成時間が10分0.3秒であり、10分整ではないことを意味します。この誤差は微々たるものに見えますが、別のより深刻な問題に関連しています。
! ビットコインセキュリティ侵害:タイムワープ攻撃
タイムワープアタックの仕組み
時間歪曲攻撃は、ビットコインの難易度計算における1つの脆弱性を利用します。この攻撃では、悪意のあるマイナーがブロックのタイムスタンプを操作することでネットワークの難易度に影響を与えることができます。攻撃者は、ほとんどのブロックのタイムスタンプを前のブロックよりも1秒だけ遅く設定し、MPTルールを遵守します。難易度調整サイクルの最後のブロックでは、タイムスタンプが実際の時間に設定されます。
この操作はブロックチェーンの時間が実際の時間に対して徐々に遅れ、難易度計算に影響を与える可能性があります。攻撃が数サイクル続くと、ネットワークの難易度が大幅に低下し、攻撃者は非常に速い速度でブロックを生成し、大量のビットコインを取得できるようになります。
! ビットコインセキュリティ侵害:タイムワープ攻撃
攻撃の実際的な実現可能性
理論的にはこの攻撃が深刻な結果をもたらす可能性がありますが、実際の実行には多くの課題が伴います。
ソリューション
この脆弱性を修正するために、開発者はいくつかの提案をしました:
現在、大共識クリアリング提案は2時間の時間制限を採用することを提案しています。この方案は、時間の歪み攻撃を効果的に防ぎ、予期しない無効ブロックのリスクを最小限に抑えることができます。
これらの改善を実施することにより、ビットコインネットワークは潜在的な時間操作攻撃に対してより効果的に耐えることができ、さらにその安全性と安定性を向上させることができます。
! ビットコインセキュリティの脆弱性:タイムワープ攻撃