Proof of Work(PoW / プルーフ・オブ・ワーク)
ハッシュパズルと Nakamoto Consensus を基盤に、ハッシュ関数多様性・難易度調整・ASIC 化・51% 攻撃・セルフィッシュマイニング・Chainweb 並列 PoW・merged mining を体系化した PoW 全体像。
article technology ja ハッシュパズルと Nakamoto Consensus を基盤に、ハッシュ関数多様性・難易度調整・ASIC 化・51% 攻撃・セルフィッシュマイニング・Chainweb 並列 PoW・merged mining を体系化した PoW 全体像。Proof of Work(PoW / プルーフ・オブ・ワーク)
Proof of Work(PoW)は計算資源の消費を「票」とみなし、Sybil 攻撃を経済的に高価にすることで無許可型ネットワークの合意を実現するメカニズムである。Satoshi Nakamoto が Bitcoin(2008)に採用して以来、暗号資産の合意設計の起点となった。本記事は PoW の仕組み・ハッシュ関数の多様性・マイニング経済・攻撃モデル・派生技術を体系化する。合意形成の理論的基盤(BFT・FLP・Sybil 耐性の概念)は tech-203 で詳述しており、本記事はその応用として読むことを想定している。情報カットオフ ~2025-08、confidence: medium 固定(2026-06 時点での外部再検証は未実施)。
ハッシュパズルと nonce 探索
PoW の核心はハッシュパズルである。ブロック候補データとランダムな整数(nonce)をハッシュ関数にかけた結果が、あらかじめ定められた ターゲット(特定のビット数が 0 から始まる値)以下になるまで nonce を総当たりする作業がマイニングだ。
H(block_header || nonce) ≤ target
ハッシュ関数は暗号学的一方向関数であるため、ターゲットを満たす nonce を求める近道は存在しない。唯一の方法は nonce を一つずつ試すブルートフォースであり、正しい答えを見つけたマイナーは他ノードがすぐに検証できる proof(PoW)を提示できる。これが「作業の証明」の意味である。
**難易度(difficulty)**はターゲットの厳しさを示す指標で、ターゲット値が低いほど(先頭ゼロが多いほど)難易度は高い。ネットワーク全体の計算能力(ハッシュレート)が上下しても一定のブロック生成間隔(Bitcoin では約 10 分)を維持するために、難易度は定期的に自動調整される(Bitcoin は 2016 ブロック = 約 2 週間ごと)。
ハッシュパズルの設計上の特徴をまとめると以下の通りだ。
| 特性 | 内容 |
|---|---|
| 一方向性 | ハッシュ値から入力を逆算できない |
| 検証の容易さ | 解の検証は 1 回のハッシュ計算で完了(非対称コスト) |
| 調整可能な難易度 | ターゲット値を変更するだけでコストを調整可能 |
| ランダム性 | 各 nonce の試行は独立した試行(くじ引き型) |
Nakamoto Consensus — 最長鎖則と確率的ファイナリティ
Bitcoin の合意プロトコル全体は Nakamoto Consensus と呼ばれる。その中核は 2 つのルールだ。
- 最長鎖則(Longest Chain Rule):ノードは累積難易度が最大のチェーン(最長鎖)を正典として選択し、その末尾に次のブロックを追加しようとする
- 確率的ファイナリティ:ブロックが追加されるほど、そのブロックを含まない代替チェーンが正典を奪うためには圧倒的な計算資源が必要になり、確率が指数的に低下する
確率的ファイナリティの直感:ネットワークが 51% の計算資源を持つ正直なマイナー群で構成されている場合、攻撃者が過去のブロックを書き換えるためには 51% 以上のハッシュレートを継続的に確保しなければならない。N ブロック確認後に取引を「確定」とみなす慣習(Bitcoin では 6 確認 ≈ 60 分が標準)は、このリスクを実用上無視できる水準に下げるための経験則である。
Nakamoto Consensus は BFT ではなく、ビザンチン故障ノードが 50% 未満(strictly less than 50% of hashrate)という仮定に依存する。BFT が 1/3 未満の故障を前提とするのと対照的に、経済的コストで同等の安全保証を得る設計である。
ハッシュ関数の多様性
PoW を採用するチェーンは、目的に応じて異なるハッシュ関数を選択している。
SHA-256(Bitcoin, Bitcoin Cash)はアメリカ国立標準技術研究所(NIST)が標準化した 256 ビット出力の暗号学的ハッシュ関数。計算が ASIC(専用半導体)に高度に最適化されており、現在は SHA-256 ASIC の集積度が極めて高い。
Ethash(旧 Ethereum PoW 時代、Ethereum Classic 現在も使用)は DAG(Directed Acyclic Graph)と呼ばれる大容量データセット(1〜数 GB)をランダムアクセスする設計で、ASIC 化を困難にして GPU マイニングを促進することを意図した。Ethereum は 2022 年 9 月に PoS(The Merge)へ移行したため、Ethash は現在 Ethereum Classic や小規模フォークでのみ使用される。
Scrypt(Litecoin、Dogecoin)はメモリ帯域幅を多く必要とするアルゴリズムで、ASIC 耐性を目的に設計されたが、後に Scrypt 用 ASIC が開発され耐性は失われた。
RandomX(Monero)は CPU 向けに最適化された PoW アルゴリズムで、ランダムコード実行・大容量メモリ要件・難読化された命令セットを組み合わせることで、汎用 CPU が最も効率的なハードウェアとなるよう設計されている。GPU や ASIC では大幅に非効率となる。プライバシーコインである Monero はマイニングの分散化を最優先に設計思想を置く。
Equihash(Zcash、一部 Bitcoin Gold)はジェネリックな ASIC 設計よりも GPU の方が効率的になるよう設計されたメモリハードな PoW で、Wagner のアルゴリズムを応用している。
難易度調整・ハッシュレート・ディフィカルティボム
難易度調整はネットワークのハッシュレートが変動してもブロック生成間隔を一定に保つ自動制御機構である。Bitcoin は直近 2016 ブロックの実際の生成時間と目標時間(2 週間 = 20160 分)を比較し、比率に応じて次の 2016 ブロックのターゲットを上下に調整する。最大調整幅は 4 倍または 1/4 に制限されている。
ハッシュレートはネットワーク全体が 1 秒間に実行できるハッシュ計算回数であり、ネットワークのセキュリティ強度の直接指標となる。Bitcoin の場合、2025 年時点で 600–800 EH/s(エクサハッシュ)規模に達しており、これだけの計算資源を確保しなければ 51% 攻撃は経済的に不可能な水準に達している。
**ディフィカルティボム(Difficulty Bomb)**は旧 Ethereum が持っていた仕組みで、ブロック番号に応じて難易度が指数的に上昇し、最終的にブロック生成が実質的に停止(「氷河期」と呼ばれた)するよう設計されていた。PoW から PoS への移行を強制的に促すインセンティブとして機能した。Ethereum の The Merge 後は PoS 移行により廃止された。
ASIC 化・マイニングプール・エネルギー問題
ASIC 化はマイニングの競争激化によって必然的に進む。SHA-256 のような汎用的ハッシュ関数では、GPU よりも何桁もエネルギー効率の高い専用 ASIC チップが開発され、CPU や GPU によるマイニングはほぼ無意味になった。ASIC 製造コストは膨大(一世代の開発に数億ドル規模)なため、少数の大手 ASIC メーカー(Bitmain、MicroBT など)が市場を支配し、マイニング中央集権のリスクをもたらしている。
マイニングプールは個々のマイナーが確率的に低い報酬をより安定した収入に変換するための共同採掘組織である。プールがブロック発見時の報酬を参加者のハッシュレート比率に応じて分配する。問題は、少数の大規模プールが Bitcoin ハッシュレートの大部分を占める状況(2025 年時点でトップ 3 プールで 50% 超)が 51% 攻撃リスクを現実的にしうることだ。
エネルギー消費は PoW の最大の批判点である。2024 年時点の推計では、Bitcoin ネットワーク全体の年間電力消費はスウェーデン規模(130〜150 TWh 程度)に相当し、CO2 排出量も無視できない規模である。PoW 支持者は再生可能エネルギーの活用・需要応答機能(余剰電力の消費)・エネルギーの安全保障として価値があると主張するが、環境コストは PoS への移行理由の一つとなった。
攻撃モデル
51% 攻撃はネットワーク全体のハッシュレート過半数を一者が掌握した際に可能になる攻撃である。攻撃者はブロックを秘密裏に生成し(非公開チェーン)、二重支払いを実行した後で自分の秘密チェーンを公開して元のチェーンを覆す(二重支払い攻撃)。ハッシュレートの大きいネットワーク(Bitcoin)では 51% 攻撃の経済的コストが天文学的だが、小規模チェーン(Ethereum Classic は 2019〜2020 年に複数回の 51% 攻撃を受けた)では現実的な脅威となる。
セルフィッシュマイニング(Selfish Mining)(Eyal & Sirer、2013)は、マイナーが自分のブロックをすぐに公開せず秘密裏にチェーンを延ばし、他のマイナーが無駄な競合ブロックを生成するよう誘導することで、実際のハッシュレートシェア以上の報酬を得る戦略的行動である。理論上は 33% のハッシュレートがあれば有利に実行できるとされるが、実際には伝播レイテンシや検出リスクがあるため現実的な実行は難しい。
タイムジャッキング攻撃は Bitcoin のブロックタイムスタンプ検証規則(各ブロックのタイムスタンプは過去 11 ブロックの中央値より大きく、ネットワーク補正時刻から 2 時間以内)を悪用して難易度調整を歪める攻撃である。接続ノードに偽の時刻を報告し、ノードの認識する「現在時刻」を操作することで難易度計算を誤誘導する。Bitcoin ソフトウェアにはこれを緩和するピア時刻サニタイズが実装されている。
派生技術 — Chainweb 並列 PoW と Merged Mining
Chainweb 並列 PoW(Kadena)は複数の PoW チェーンを並列に走らせる設計で、各ブロックが他のチェーンのブロックヘッダーを参照することで相互セキュリティを高める。チェーン数を増やすことでスループットを線形にスケールさせながら、単一 PoW チェーン相当のセキュリティを維持することを目標とする。2025 年時点では 20 チェーンを並列動作させており、理論上は 1,250+ チェーンまで拡張可能とされる。ハッシュレートを増やさずにスループットを高める点が従来の PoW 拡張と異なる。
**Merged Mining(AuxPoW)**は 1 回のマイニング作業で複数のチェーンを同時にマイニングできる仕組みである。子チェーン(auxiliary chain)は親チェーン(parent chain)のブロックヘッダーを自分の PoW として受け入れる。マイナーは親チェーンの解を見つけた際、そのブロックヘッダーを子チェーンの証明として提出できる。Dogecoin は Litecoin との merged mining を採用しており、Litecoin マイナーが Dogecoin ブロックも同時に生成することでネットワークのハッシュレートを大幅に引き上げた。
PoS との比較・コンセンサス選択の判断軸は tech-203(合意形成の基礎)および各チェーン記事を参照のこと。
Backlinks
- has_parts Layer-1 Blockchains(L1 チェーン総覧)
- related Proof of Stake(PoS / プルーフ・オブ・ステーク)
- related PoW マイニング運用