プルーフ・オブ・ワーク / proof of work

  • 日:プルーフ・オブ・ワーク
  • 英:proof of work, PoW

通常、カタカナでそのまま表記されますが、あえて訳すなら「仕事量による証明」。悪意のあるハッキング等によるコイン偽造を防ぐためのもので、偽造するためにはより多くの「仕事量」を費やさなければなりません。

プルーフ・オブ・ワークとは、各取引を認証するために算出しなければならないデータまたはそのようなシステムのことです。ビットコインをはじめとするほとんどの暗号通貨では、プルーフ・オブ・ワークを計算する手段としてハッシュ関数が用いられています。

実際の取引の承認作業を説明しましょう。まず、ビットコインの各取引単位(ブロック)には送金額や送信者等の取引情報のほかに、nonceと呼ばれるランダムな変数が含まれなければなりません。ビットコインにおけるプルーフ・オブ・ワークは、一定回数の「0」の連続から始まるハッシュ値(0が一定の回数続けば残りのデータは任意)であり、取引の承認とは、総当たり式にnonceを増加させることによりハッシュ計算からプルーフ・オブ・ワークを求めることです。正しいnonceを見つけること、とも言えます。ハッシュ値から元の値を計算することはできないので、総当たりに計算する必要があるのです。

なお、承認者はこのnonceの発見の報酬としてコインがもらえるため、承認者のことを採掘者(マイナー)、承認作業のことを採掘(マイニング)とも呼びます。

ビットコインでは、コインの偽造を防ぐため、この計算に約10分かかるように設定されています。ビットコインにおけるコインの偽造とは、つまり取引データを改ざんすることなので、求めなければならないプルーフ・オブ・ワークも変わり、再計算が必要になります。ここで重要なのが、ブロックに過去の取引データも含まれているということとブロックチェーンの考え方です。つまり、仮に取引データを改ざんしようとすると、その後行われた取引データ(ブロック)も再計算しなければなりません。現実的には「悪意のある」攻撃者、偽造者の他に多数の「善良な」計算者がいるため、再計算速度が新たな取引承認の計算速度においつけないため、偽造は非常に難しくなります。

このようにプルーフ・オブ・ワークはビットコインにおけるセキュリティの根幹ともいえる役割を果たしています。

最終更新日: 2014年05月04日

コメント欄

コメントシステムを試験的に変更し、メールアドレスの入力やSNSからのログインを廃止しました。投稿後5分以内であれば編集や削除が可能です。その後に削除したいコメントがあれば依頼していただければこちらで削除いたします。

質問については出来る限りお答えしていますが、個人が運営している関係上対応の遅れや見逃し等限界もあるのでご了承ください。