Proof of Work
概要
Proof of Work (PoW) は何らかの作業を行ったことを証明することで目的の行為を行う許可が与えられるスキームである。サービス要求者に何らかの作業を強制することで、DoS 攻撃やスパムメールの送信といった短時間で大量の要求を繰り返して発行する悪意的なコンピューティング能力を利用を防止するための実用上の対策である。"Work" とは一般にコンピュータの計算資源を使った処理時間を指しており、サービス要求者がその作業を達成することが極めて困難、かつ、達成したことを第三者が検証するのは容易という非対称性をもつ。
- チャレンジ-レスポンスプロトコル
- クライアントからの要求を受けたサーバがチャレンジ (問題) を返信し、要求者はその解答をサーバに送信することで目的のサービスを得られるプロトコル。チャレンジの難解さをサービス提供側の負荷要求に合わせて都度調節ができる。
- 解法検証プロトコル
この概念は 1993 年に Cynthia Dwork と Moni Naor がスパムメールの問題を解決するために開発し、1999 年に Markus Jokobsson と Ari Juels の論文で Proof of Work という言葉で形式化された。さらに 2004 年に Hal Fanney によって "reusable proof of work" というアイディアに基づいて通貨に適用された。2009 に導入された Bitcoin はこのアイディアの広く採用させた適用例となった。現在では Proof of Work は他の多くの暗号通貨の基礎技術となっている。
参考文献
- Fabien Coelho (2005) Exponential Memory-Bound Functions for Proof of Work Protocols