ビットコインのセキュリティーモデル — 攻撃面、信頼前提、防御層

はじめに

本ページは設計文書シリーズL2 #11 — セキュリティーモデル である。3 つの L2 横断的深掘りの 2 番目。L1 ドメインページが各サブシステムの動作を説明するのに対し、本ページは何がうまくいかなくなりうるか — そしてそれを何が止めるかを問う。

ビットコインのセキュリティーは単一の機構ではなく、暗号技術、経済的インセンティブ、ネットワークアーキテクチャーの相互作用に基づく。フルノードのオペレーターは機関やアイデンティティーではなく、数学とエネルギー消費を信頼する。本ページでは信頼の境界を図示し、既知の攻撃面を分類し、各攻撃に対処する防御層を追跡し、残存するリスクを特定する。

サトシ時代の実装(v0.1、2009 年 1 月)と現行の Bitcoin Core(v27 以降基準)で挙動が異なる場合は、両方を記す。

1. 信頼モデル

ビットコインはいくつかのカテゴリーの信頼を完全に排除し、他のカテゴリーを検証可能な計算に置き換えている。以下の表はプロトコルが信頼するものとしないものを分離する。

ビットコインが信頼するもの

仮定なぜ必要か
SHA-256 の原像耐性攻撃者が SHA-256 を反転できれば、プルーフオブワークが偽造可能になる。チェーン選択機構全体がハッシュ反転の計算困難性に依存する。
ECDLP の困難性(secp256k1資金の所有権は秘密鍵の保持によって定義される。楕円曲線離散対数問題が解けるようになれば、露出したあらゆる公開鍵から秘密鍵が漏洩する。
正直な多数派のハッシュレート最多ワークチェーンは正直なマイナーによって生成されていると仮定する。単一主体がハッシュレートの 50% を超えて支配すると、履歴を書き換えることができ、セキュリティーモデルは確率的耐性に低下する。
ネットワーク接続性ノードは少なくとも 1 つの正直なピアに到達できなければならない。完全なネットワーク隔離(成功した日食攻撃)は、攻撃者がノードに偽造チェーンを送り込むことを可能にする。
正確なソフトウェアノードは自身の検証コードが正しいことを信頼する。ソフトウェアのコンセンサスバグは有効なチェーンと区別がつかない — ノードは検査できないものを検出できない。

ビットコインが信頼しないもの

従来の信頼要件ビットコインがそれを排除する方法
発行のための中央機関発行はすべてのノードが強制する決定論的な半減スケジュールに従う。ルール外でコインを作成できる主体は存在しない
二重支払い防止のための銀行すべてのノードが各入力が未使用であることを独立に検証してからトランザクションを受け入れる
参加者のアイデンティティーマイナーは匿名。その作業は SHA-256d ハッシュによって検証され、生成者のアイデンティティーによって検証されるのではない
いかなる単一ピアの誠実さノードは受信するすべてを検証する。嘘をつくピアは信頼されるのではなく、検出されてペナルティーを受ける
いかなる単一サーバーの稼働時間ゴシップネットワークに単一障害点はない。ノードの一部が接続を維持する限りプロトコルは動作し続ける

信頼境界図

プロトコルが信頼する

信頼を排除

中央発行者なし

二重支払い防止の

権威機関なし

参加者の

アイデンティティー不要

単一障害点なし

暗号学的困難性

(SHA-256, ECDLP)

正直な多数派の

ハッシュレート

ネットワーク接続性

(1 つ以上の正直なピア)

正確な検証

ソフトウェア

有効な

チェーン状態

2. 攻撃の分類

以下の攻撃はビットコインプロトコルの既知の脅威面を代表する。各攻撃はコンセンサス、ネットワーク、暗号の異なる層で動作し、異なるコストと影響のプロファイルを持つ。

2.1 多数派ハッシュレート攻撃(51% 攻撃)

ネットワーク総ハッシュレートの 50% 超を支配する攻撃者は、正直なネットワークより速く秘密のチェーンをマイニングし、それを公開して再編成を引き起こし、以前に確認されたトランザクションを覆すことができる。

攻撃者(50% 超)正直なネットワーク攻撃者(50% 超)正直なネットワーク攻撃者が商人に支払いを送る再編成: 正直ブロック N、N+1、N+2 が置換される商人への支払いが消失ブロック N でトランザクション承認ブロック N+1、N+2... を延長ブロック N-1 から秘密チェーンをマイニング秘密チェーンに支払いを含めない秘密チェーンが正直チェーンを追い越す秘密チェーンを公開

コストモデル。 攻撃者は攻撃の期間中、ネットワークの 50% を超えるハッシュレートを維持しなければならない。2024 年時点の難易度レベルでは、ハードウェアだけで数十億ドル規模の資本支出が必要であり、加えて 1 日あたり数千万ドルのエネルギーコストがかかる。攻撃はまた、ネットワークへの信頼を損なうことで攻撃者自身のマイニング投資の価値も毀損する。

緩和策。 高い累積プルーフオブワークが再編成の深さを実質的に制限する。商人と取引所は複数の確認(6 回が慣習的; 高額決済ではそれ以上を要求する場合がある)を待つ。大規模マイナーの経済的自己利益 — BTC 建てで大量の資産を保有している — がハッシュレートコストを超える抑止力として機能する。

2.2 二重支払い攻撃

二重支払いは、受取人が後に覆される支払いを受け入れてしまうあらゆる攻撃である。51% 攻撃が最も強力な形態だが、より低コストの変種が存在する。

変種必要なハッシュレート仕組み
レース攻撃任意(0 確認)攻撃者が 2 つの競合するトランザクションを同時にブロードキャスト; 商人は最初に到着したものを受け入れるが、2 番目がマイニングされる
フィニー攻撃マイナー(任意 %)攻撃者が競合するトランザクションを含むブロックを事前にマイニングし、商人で支払った直後に事前マイニングしたブロックを公開する
ベクター 76 攻撃マイナー(任意 %)レースとフィニーの手法を組み合わせ: 攻撃者が被害者に直接接続して一方のトランザクションを配信し、もう一方を含む事前マイニング済みブロックをネットワークの残りに公開する
多数派攻撃50% 超対象トランザクションを除外した秘密チェーンをマイニングし、公開して再編成を引き起こす

緩和策。 不可逆な商品に対して未確認(0 確認)トランザクションを受け入れない。追加の確認ごとに二重支払い成功の確率は指数関数的に低下する。コンセンサス設計ページのファイナリティー分析で示されている通りである。

2.3 日食攻撃

日食攻撃は、ターゲットノードのすべてのピア接続を攻撃者が制御するノードで独占することで、正直なネットワークからターゲットノードを隔離する。隔離されたノードは攻撃者が見せるブロックチェーンの姿しか見えなくなる。

攻撃者が addr メッセージで

フラッドし接続スロットを

すべて占有

日食状態

対象ノード

(隔離)

攻撃者

攻撃者

攻撃者

攻撃者

通常運用

対象ノード

正直なピア

正直なピア

正直なピア

攻撃者ピア

影響。 日食状態のノードは低ワークチェーンを送り込まれたり、そのノードに対して特定的に二重支払いに使われたり、新しくマイニングされたブロックを見ることを妨げられて正直なチェーン先端から取り残される可能性がある。

緩和策(v27 以降基準)。 アウトバウンドピアの多様性(IP 範囲をまたぐランダム選択)、再起動間で保持されるアンカー接続、ブロックリレー専用ピア(メモリープール情報を明かさない追加の 2 つのアウトバウンド接続)、ネットワークグループの多様性を保つインバウンド追い出し、そして通信の識別と傍受を困難にする BIP 324 暗号化トランスポート。

2.4 シビル攻撃

シビル攻撃は、多数の偽のノードアイデンティティーを作成してネットワークに対する不均衡な影響力を得る。日食攻撃(1 ノードをターゲットにする)とは異なり、シビル攻撃はグローバルにネットワークの認識に影響を与えることを目的とする。

影響。 シビル攻撃者はピア発見を偏らせたり、トランザクション伝搬を遅延させたり、複数のノードに対する日食攻撃の成功確率を高めたりできる。

緩和策。 ビットコインのコンセンサスはノード数ではなくプルーフオブワークで重み付けされる。ハッシュレートゼロの 100 万のシビルノードは有効なブロックを 1 つも生成できない。プルーフオブワークはビットコインの根本的なシビル耐性機構であり、サトシがホワイトペーパーの第 5 節で説明した通り、ノードは IP アドレスではなく CPU パワーで投票する。ネットワーク層では、ピア選択アルゴリズムが IP 範囲と自律システムをまたいで多様化し、攻撃者が接続を集中させる能力を制限する。

2.5 タイムジャッキング

タイムジャッキング攻撃は、攻撃者のピアが報告するタイムスタンプを操作してターゲットノードのネットワーク時間の認識を歪める。ビットコインノードは接続されたピアの報告時間の中央値オフセットとして「ネットワーク時間」を計算する。

影響。 成功したタイムジャッキングは、ターゲットノードに有効なブロック(タイムスタンプが未来に見えすぎる)を拒否させたり、無効なブロック(歪んだ時計に対してタイムスタンプが有効に見える)を受け入れさせたりする可能性がある。極端な場合、多数派ハッシュレート攻撃と組み合わせて難易度調整のタイムスタンプベースの計算を悪用できる。

緩和策。 Bitcoin Core はネットワーク時間のオフセットをノードのローカルシステム時計から最大 70 分に制限する。中央値のピアオフセットがこのしきい値を超えると、ノードは自身の時計にフォールバックする。ホストシステムの正確な NTP 同期がさらに露出を制限する。

2.6 利己的マイニング

利己的マイナーは発見したブロックを即座にブロードキャストせず保留する。保留ブロックの公開タイミングを戦略的に操ることで、攻撃者は正直なマイナーに陳腐化するブロックに対して作業を浪費させ、ハッシュレートの割合に対して不均衡なブロック報酬シェアを得ることができる。

利己的マイナーの挙動

いいえ

(攻撃者がリードを延長)

はい

(正直ブロック発見)

ブロック発見

ブロックを保留

正直なネットワークが

ブロックを発見?

秘密チェーン上で

マイニング継続

保留ブロックを公開し

フォーク誘発 +

正直作業を孤立化

正直なマイナーの挙動

ブロック発見

即座に

配信

しきい値。 アイアルとシーラー(2014)による理論的分析は、利己的マイニングがネットワークハッシュレートの約 25–33% を超えると利益が出ることを示した。しきい値は攻撃者のネットワーク接続性(競合する正直なブロックが伝搬する前に大部分のノードに到達する能力)に依存する。このしきい値以下では、攻撃者は正直なマイニングと比較して収入を失う。

緩和策。 高速なブロック伝搬(コンパクトブロックBIP 152)が、保留ブロックが正直な作業を陳腐化できるウィンドウを狭めることで攻撃者の優位性を低下させる。コンセンサスレベルの修正は展開されていないが、先着ブロックを優遇するタイブレーキングの提案が存在する。

3. 防御層

ビットコインのセキュリティーは単一の壁ではなく、一連の同心円状の層である。攻撃者は意味のある成果を得るために複数の独立した防御を突破しなければならない。

層 4: 経済的インセンティブ

ブロック報酬

(正直マイニングが採算)

ハッシュレートコスト

(攻撃は高価)

攻撃者自身の BTC が

価値を失う

層 3: ネットワークアーキテクチャー

ゴシップ中継

(単一障害点なし)

ピア多様性

(日食攻撃耐性)

BIP 324

暗号化トランスポート

層 2: コンセンサスルール

決定論的ブロック

検証

最多ワークチェーン

選択

難易度調整

(ブロック速度を規制)

層 1: 暗号学的保証

SHA-256d プルーフオブワーク

(ブロック生成コスト)

ECDSA / Schnorr 署名

(支出認可)

マークルツリー

コミットメント

(改竄検出)

何を保護するか何に対して保護できないか
暗号偽造トランザクション(署名)、偽造ブロック(プルーフオブワーク)、改竄された履歴(マークルコミットメント)ECDLP を破る量子コンピューター; 暗号ライブラリーの実装バグ
コンセンサス無効なブロック、競合するチェーン、ルール違反すべてのルールに従うが履歴を書き換える有効なブロックを生成する 50% 超の攻撃者
ネットワーク日食攻撃、シビルの影響、通信監視物理的なネットワークインフラストラクチャーを支配する国家レベルの敵対者
経済合理的攻撃者の抑止(攻撃コストが利得を上回る)非経済的な動機を持つ不合理または国家支援の攻撃者

4. 暗号学的仮定

ビットコインのセキュリティーは 3 つの具体的な計算困難性の仮定に基づいている。いずれも数学的な意味で困難であることが証明されていない — 数十年にわたる暗号解析の努力に基づく経験的な仮定である。

仮定プリミティブ仮定が崩れた場合に何が壊れるか
SHA-256 の原像耐性プルーフオブワーク、トランザクション ID、マークルツリー攻撃者がエネルギー消費なしにプルーフオブワークを偽造でき、チェーン選択機構全体が崩壊する
SHA-256 の衝突耐性マークルツリーの結合、コミットメント方式攻撃者が同じマークルルートを生成する 2 つの異なるトランザクションセットを構築でき、有効なブロックヘッダー内でトランザクションの隠れた差し替えが可能になる
楕円曲線離散対数の困難性(secp256k1)ECDSAシュノア署名攻撃者が公開鍵から秘密鍵を導出でき、公開鍵がオンチェーンで露出しているあらゆる資金を使用できる

防御の深さ。 ビットコインのアドレス方式(Hash160: 公開鍵の SHA-256 の RIPEMD-160)は未使用出力に第二の障壁を提供する。ECDLP が崩壊しても、未公開の公開鍵ハッシュ背後の資金はハッシュ関数の破壊も必要とする — 独立した別の計算問題である。この防御は一度も支払いを行っていないアドレスにのみ適用される。トランザクションが Witness または scriptSig で公開鍵を公開すると、ハッシュの障壁は消滅する。

5. ネットワーク層の防御

P2P ネットワーク設計ページがネットワーク層を詳述する。本節ではセキュリティーに関連する機構を要約する。

ネットワーク層の防御(v27 以降基準)

アンカー接続

(再起動をまたいで保持)

ブロック中継専用ピア

(追加 2 出方向、

メモリープール漏洩なし)

多様性保持型

退去アルゴリズム

フィーラー接続

(アドレス到達性を

プローブ)

BIP 324

暗号化トランスポート

addrv2

(Tor、I2P、CJDNS

アドレス対応)

目標:

日食耐性 +

監視耐性 +

正直な接続性

を維持

防御導入時期対抗する攻撃
ランダムなアウトバウンドピア選択v0.1(反復的に改善)予測可能なピア選択による日食攻撃
アンカー接続v0.21ノード再起動時の日食攻撃(攻撃者が peers.dat を汚染して再起動を待つ)
ブロックリレー専用ピアv0.19すべてのブロックソースの制御を必要とする日食攻撃; メモリープールタイミングによる匿名化解除も防止
多様性保持の追い出しv0.12 以降(反復的に改善)シビルベースのインバウンドフラッディング(攻撃者が全インバウンドスロットを埋める)
フィーラー接続v0.14ピアデータベースに陳腐化または到達不能アドレスが蓄積
BIP 324 暗号化トランスポートv26.0(v27 以降でデフォルト)受動的通信監視、標的型検閲、ブロック遅延の中間者攻撃
addrv2(BIP 155)v22.0単一ネットワーク層の検閲(Tor、I2P、CJDNS がルーティングの多様性を提供)

6. 経済的セキュリティー

セキュリティー予算は、攻撃者がネットワークを侵害するために負担しなければならない総経済コストである。ハッシュレート取得の資本コストとその運用にかかる継続的エネルギーコストの 2 つの構成要素を持つ。

ハッシュレートコストモデル

ブロック新規発行分

(現状 3.125 BTC)

ブロック報酬

= 新規発行分 + 手数料

トランザクション手数料

マイナー日次収入

= 144 ブロック × 報酬

ハードウェア

投資を支える

エネルギー消費を

支える

ネットワーク

ハッシュレート

攻撃コスト

= このハッシュレートの

50% 超を取得・運用する

コスト

パラメーターおおよその値(2024 年)意味
ネットワークハッシュレート約 600 EH/s(エクサハッシュ/秒、2024 年半ば時点)攻撃者が超えなければならない総計算能力
マイナーの日次収入約 3,000–4,000 万ドル(新規発行分 + 手数料、典型的な価格で)現在のハッシュレートを維持する経済的フロー
ASIC 単価約 15–30 ドル/TH/s(最新世代)攻撃者のハードウェアの資本支出
エネルギーコスト約 0.05 ドル/kWh(業界平均)継続的な運用支出
推定 51% 攻撃コスト(1 時間)数千万ドル約 6 ブロックにわたる持続的な多数派ハッシュレートのためのハードウェア償却 + エネルギー

半減問題。 新規発行分が 210,000 ブロックごとに半減するにつれて、セキュリティー予算はトランザクション手数料への依存を増す。手数料収入が低下する新規発行分を補うだけ成長しなければ、51% 攻撃の経済コストは低下する — プロトコルルールは変わらなくても、購買力ベースではネットワークのセキュリティーが低下する可能性がある。この移行はマイニング報酬枯渇分析で詳細に分析されている。

経済的抑止と物理的セキュリティー。 上記のコストモデルは期待利得と期待コストを比較衡量する合理的攻撃者を仮定している。非経済的な動機(検閲、破壊)を持つ国家レベルの敵対者は、直接的な金銭的リターンを超えるコストを負担する意思がありうる。この種の攻撃者に対するビットコインの防御は経済的ではなく構造的である。ネットワークは地理的に分散し、マイニングハードウェアは物理的に分散しており、プロトコルは正直な参加者の一部が接続を維持する限り動作し続ける。

7. 量子脅威

量子コンピューティングはビットコインの暗号層に対する将来の潜在的脅威を表す。完全な分析は量子脅威分析にある。本節ではセキュリティーモデルへの影響を要約する。

プリミティブ古典的セキュリティー量子攻撃耐量子状況
ECDSA / シュノア署名(secp256k1)約 128 ビットショアのアルゴリズムが ECDLP を多項式時間で解く暗号学的に意味のある量子コンピューターが存在するとき破られる
SHA-256(プルーフオブワーク)256 ビットの原像グローバーのアルゴリズム: 2²⁵⁶ → 2¹²⁸ の実効耐性128 ビットは実用的な脅威しきい値を大きく上回る
RIPEMD-160(アドレスハッシュ)160 ビットの原像グローバーのアルゴリズム: 2¹⁶⁰ → 2⁸⁰境界的 — 2⁸⁰ は快適な長期マージンを下回る
HMAC-SHA512(HD 導出)256 ビットの鍵グローバーが約 128 ビットに半減実用上の脅威なし

露出ウィンドウ。 資金が量子 ECDLP 攻撃に対して脆弱になるのは公開鍵がオンチェーンに露出しているときのみである。一度も公開鍵が公開されていない公開鍵ハッシュ背後の未使用出力(受け取ったが送金したことのないアドレス)は、署名方式ではなくハッシュ関数によって保護される。送金済みアドレス — およびサトシ時代初期の Pay-to-Public-Key (P2PK) 出力 — は公開鍵がオンチェーンに恒久的に可視であり、最初のターゲットとなる。

移行パス。 BIP 360(P2MR / QuBit)は耐量子アドレスタイプを提案している。いかなる移行もネットワーク全体のソフトフォークと、ユーザーが量子脆弱なアドレスから量子耐性アドレスへ資金を移す移行期間を必要とする。タイムラインは量子ハードウェアの進歩に依存する — 暗号学的に意味のある量子コンピューターの推定は 20 年から 40 年(アダム・バック、2025 年 11 月) — が、プロトコルは脅威が顕在化するかなり前に移行機構を設計しなければならない。

8. 攻撃と防御の比較

主たる防御

攻撃面

51% 攻撃

二重支払い

各種

日食攻撃

シビル攻撃

タイムジャッキング

利己的マイニング

量子

(将来)

プルーフオブワーク

コスト + 承認

ネットワーク多様性

+ ピア管理

PoW 重み付けコンセンサス

(ノード数ではない)

タイムスタンプクランプ

+ MTP ルール

高速ブロック伝播

(BIP 152)

耐量子移行

(将来)

攻撃必要なリソース主要な防御緩和状況
51% 攻撃コンセンサスネットワークハッシュレートの 50% 超累積プルーフオブワークコスト; 確認の深さ現在のハッシュレートでは経済的に禁止的; プロトコルレベルの防止策はない
二重支払い(0 確認)トランザクション最小限(2 つの競合するトランザクション)確認を待つ; 不可逆な商品に 0 確認を受け入れないポリシー(1 回以上の確認)で完全に緩和
二重支払い(確認済み)コンセンサス確認の深さに比例したハッシュレート確認ごとに指数関数的に増大する覆転コスト確率的; 深さとともにセキュリティーが向上
日食攻撃ネットワークすべてのピア接続の支配アンカーピア、ブロックリレー専用ピア、多様な追い出し、BIP 324v27 以降で大幅に堅牢化; 接続の乏しいノードに残存リスク
シビル攻撃ネットワーク大量の偽ノードアイデンティティーシビル耐性としてのプルーフオブワーク; IP 範囲の多様化コンセンサス層は免疫; ネットワーク層は漸進的に堅牢化
タイムジャッキングネットワーク / コンセンサス複数ピア接続の制御70 分のオフセット制限; NTP 同期制限で緩和; 極端な時計のずれでは残余事例あり
利己的マイニングコンセンサスハッシュレートの約 25–33%(接続性に依存)コンパクトブロックリレー(BIP 152)が伝搬優位性を低減部分的に緩和; コンセンサスレベルの修正は未展開
量子(ECDLP)暗号暗号学的に意味のある量子コンピューター耐量子署名への移行(BIP 360 / P2MR 提案)未緩和; 脅威のタイムラインは 20–40 年と推定(アダム・バック、2025 年 11 月)

9. 本ページの範囲

本ページではセキュリティーモデルを横断的分析として解説した。以下のトピックは設計文書シリーズ内のそれぞれのドメインページで扱う:

  • トランザクション展性SegWit 以前の展性ベクトルと BIP 141 による解決。トランザクション設計ページで解説。
  • プルーフオブワークの仕組み — SHA-256d ハッシュパズル、難易度調整アルゴリズム、オフバイワン / タイムワープのバグ。コンセンサス設計ページで解説。
  • 暗号プリミティブの詳細 — 鍵生成、署名方式、ハッシュ構成、HD 導出。暗号設計ページで解説。
  • ネットワークアーキテクチャー — ピア発見、接続管理、メッセージプロトコル、トランスポート暗号化。P2P ネットワーク設計ページで解説。
  • 手数料のみのセキュリティー予算 — 新規発行分主体からの手数料主体のマイナー収入への長期的移行とチェーンセキュリティーへの影響。マイニング報酬枯渇分析で解説。
  • 量子脅威の深掘り — タイムライン推定、脆弱な UTXO の全数調査、BIP 360 の仕組み、他システムの耐量子移行との比較。量子脅威分析で解説。