# ビットコインのセキュリティリスク:時間歪曲攻撃## 概要2025年3月26日、ビットコイン開発者が「大共識清理」と呼ばれる新しい改善提案を提起しました。このアップグレードは、ビットコインプロトコルにおいて長期的に存在するいくつかの脆弱性や弱点を修正することを目的としています。その中でも比較的深刻な脆弱性は「時間歪み攻撃」と呼ばれ、これが本文で重点的に探討される内容です。! [ビットコインセキュリティ侵害:タイムワープ攻撃](https://img-cdn.gateio.im/social/moments-aa8abf74d491995c6a26218fdae94a29)## ビットコインブロックタイムスタンプ保護メカニズム時間の歪み攻撃について議論する前に、現在の時間操作保護ルールを振り返りましょう:1. 中位過去時間(MPT)ルール:ブロックのタイムスタンプは最後の11ブロックの中央値の時間よりも遅くなければなりません。2. 将来のブロック時間ルール:MAX_FUTURE_BLOCK_TIME定数に基づき、ブロックのタイムスタンプは、ノードのピアの中央値の時間を2時間以上先行してはならない。ノードが提供する時間とローカルシステムクロックとの間に許可される最大差は90分であり、別のセキュリティ保障として機能する。MPTルールはブロックが過去に戻りすぎないことを保証し、未来のブロックルールはそれらが未来に入りすぎるのを防ぎます。注目すべきは、初期のブロックチェーンの同期に影響を与える可能性があるため、過去のタイムスタンプを持つブロックを防ぐための未来のブロックルールに似たメカニズムを実施することはできないということです。タイムディストーション攻撃は、タイムスタンプを偽造し、それを遥かに過去に戻すことを含みます。! [ビットコインセキュリティ侵害:タイムワープ攻撃](https://img-cdn.gateio.im/social/moments-84e76f095ac839f76d2ca1240f644337)## 原始コードにおける計算誤差ビットコインプロトコルには微小ですが注目すべき計算誤差があります。マイニング難易度調整を計算する際、プロトコルは2016個のブロックを計算の基礎として使用していますが、実際には2015個のブロック間隔を使用するべきです。これにより、目標時間が本来の0.05%長くなり、ビットコインの実際の目標ブロック間隔は10分0.3秒となり、10分整ではなくなります。この0.3秒の誤差は全体的にはそれほど影響しませんが、別のより深刻な問題と関連しています。難易度の計算は、各2016ブロックウィンドウ内の最初と最後のブロックに基づいていますが、この方法には欠陥があります。より合理的なアプローチは、前の2016ブロックウィンドウの最後のブロックと現在のウィンドウの最後のブロックとの間の時間差を計算するべきです。! [ビットコインセキュリティ侵害:タイムワープ攻撃](https://img-cdn.gateio.im/social/moments-21f436beb58cee5eac9817dfd8cf127a)## タイムワープアタックの原理時間の歪み攻撃は、上記の計算誤差を利用します。理想的な状況下では、マイニングが完全に中央集権化されていると仮定し、攻撃者は以下の方法でブロックのタイムスタンプを操作することができます:1. 大多数ブロックのタイムスタンプは、前のブロックよりも1秒だけ早い。2. 6つのブロックごとにタイムスタンプを1秒進めて、MTPルールに従います。3. 各難易度調整周期の最後のブロックで、タイムスタンプを現実の時間に設定します。4. 新しい難易度周期の最初のブロックのタイムスタンプが再び過去に戻り、前の周期の倒数第二のブロックよりも1秒早くなっています。この操作は、ブロックチェーンの時間が実際の時間に対して徐々に遅れる原因となり、同時に難易度が増加し続けます。しかし、各難易度調整サイクルの終了時には、最後のブロックが実際のタイムスタンプを使用するため、難易度が下方調整されるトリガーとなります。攻撃が続くにつれて、難易度は大幅に低下し、攻撃者は非常に速い速度でブロックを生成できるようになり、大量のビットコインを潜在的に獲得することができます。## 攻撃の実現可能性と課題理論的にはこの攻撃は破壊的ですが、実施するには多くの課題があります。1. 大部分のネットワークの計算力を制御する必要があるかもしれません。2. 正直なマイナーの存在は攻撃の難易度を増加させます。3. MTPルールと誠実なタイムスタンプは、悪意のあるタイムスタンプの回溯の程度を制限します。4. 正直なマイナーが任意の難易度調整ウィンドウの最初のブロックを生成した場合、そのサイクルの攻撃は無効になります。5. 攻撃行為はブロックチェーン上で公開されており、緊急ソフトフォーク修復を引き起こす可能性があります。! [ビットコインセキュリティ侵害:タイムワープ攻撃](https://img-cdn.gateio.im/social/moments-3768d663a24114915f45612fb4754fef)## 考えられる解決策この脆弱性を修正するためには、いくつかの可能な解決策があります。1. 難易度調整アルゴリズムを変更し、異なる2016ブロックウィンドウ間の時間間隔を計算し、計算誤差を修正します。2. MTPルールをキャンセルし、各ブロックの時間を前に進める必要があります。3. 新しい制限ルールを設定する:新しい難易度サイクルの最初のブロックの時間は、前のサイクルの最後のブロックの特定の時間(10分または2時間など)より早くしてはいけません。最新の"大共識清理"提案では、2時間の時間制限を採用することが提案されています。この制限は、難易度調整周期の目標時間の約0.6%に相当し、難易度が操作される程度を効果的に制限することができます。これらの改善を実施することにより、ビットコインネットワークは時間歪み攻撃に対してより良く耐えられるようになり、その安全性と安定性がさらに強化されます。! [ビットコインセキュリティの脆弱性:タイムワープ攻撃](https://img-cdn.gateio.im/social/moments-ceb4c636ad7cdbe85d7dd25709ca2dd6)
ビットコインは時間歪み攻撃のリスクに直面している 新しい提案が安全性の懸念を解決する可能性がある
ビットコインのセキュリティリスク:時間歪曲攻撃
概要
2025年3月26日、ビットコイン開発者が「大共識清理」と呼ばれる新しい改善提案を提起しました。このアップグレードは、ビットコインプロトコルにおいて長期的に存在するいくつかの脆弱性や弱点を修正することを目的としています。その中でも比較的深刻な脆弱性は「時間歪み攻撃」と呼ばれ、これが本文で重点的に探討される内容です。
! ビットコインセキュリティ侵害:タイムワープ攻撃
ビットコインブロックタイムスタンプ保護メカニズム
時間の歪み攻撃について議論する前に、現在の時間操作保護ルールを振り返りましょう:
中位過去時間(MPT)ルール:ブロックのタイムスタンプは最後の11ブロックの中央値の時間よりも遅くなければなりません。
将来のブロック時間ルール:MAX_FUTURE_BLOCK_TIME定数に基づき、ブロックのタイムスタンプは、ノードのピアの中央値の時間を2時間以上先行してはならない。ノードが提供する時間とローカルシステムクロックとの間に許可される最大差は90分であり、別のセキュリティ保障として機能する。
MPTルールはブロックが過去に戻りすぎないことを保証し、未来のブロックルールはそれらが未来に入りすぎるのを防ぎます。注目すべきは、初期のブロックチェーンの同期に影響を与える可能性があるため、過去のタイムスタンプを持つブロックを防ぐための未来のブロックルールに似たメカニズムを実施することはできないということです。タイムディストーション攻撃は、タイムスタンプを偽造し、それを遥かに過去に戻すことを含みます。
! ビットコインセキュリティ侵害:タイムワープ攻撃
原始コードにおける計算誤差
ビットコインプロトコルには微小ですが注目すべき計算誤差があります。マイニング難易度調整を計算する際、プロトコルは2016個のブロックを計算の基礎として使用していますが、実際には2015個のブロック間隔を使用するべきです。これにより、目標時間が本来の0.05%長くなり、ビットコインの実際の目標ブロック間隔は10分0.3秒となり、10分整ではなくなります。
この0.3秒の誤差は全体的にはそれほど影響しませんが、別のより深刻な問題と関連しています。難易度の計算は、各2016ブロックウィンドウ内の最初と最後のブロックに基づいていますが、この方法には欠陥があります。より合理的なアプローチは、前の2016ブロックウィンドウの最後のブロックと現在のウィンドウの最後のブロックとの間の時間差を計算するべきです。
! ビットコインセキュリティ侵害:タイムワープ攻撃
タイムワープアタックの原理
時間の歪み攻撃は、上記の計算誤差を利用します。理想的な状況下では、マイニングが完全に中央集権化されていると仮定し、攻撃者は以下の方法でブロックのタイムスタンプを操作することができます:
この操作は、ブロックチェーンの時間が実際の時間に対して徐々に遅れる原因となり、同時に難易度が増加し続けます。しかし、各難易度調整サイクルの終了時には、最後のブロックが実際のタイムスタンプを使用するため、難易度が下方調整されるトリガーとなります。攻撃が続くにつれて、難易度は大幅に低下し、攻撃者は非常に速い速度でブロックを生成できるようになり、大量のビットコインを潜在的に獲得することができます。
攻撃の実現可能性と課題
理論的にはこの攻撃は破壊的ですが、実施するには多くの課題があります。
! ビットコインセキュリティ侵害:タイムワープ攻撃
考えられる解決策
この脆弱性を修正するためには、いくつかの可能な解決策があります。
最新の"大共識清理"提案では、2時間の時間制限を採用することが提案されています。この制限は、難易度調整周期の目標時間の約0.6%に相当し、難易度が操作される程度を効果的に制限することができます。
これらの改善を実施することにより、ビットコインネットワークは時間歪み攻撃に対してより良く耐えられるようになり、その安全性と安定性がさらに強化されます。
! ビットコインセキュリティの脆弱性:タイムワープ攻撃