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

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

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

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

ビットコインでは、コインの偽造を防ぐため、この計算に約10分かかるように設定されています。
ビットコインにおけるコインの偽造とは、つまり取引データを改ざんすることなので、求めなければならないプルーフ・オブ・ワークも変わり、再計算が必要になります。

ここで重要なのが、ブロックに過去の取引データも含まれているということと、ブロックチェーンの考え方です。
仮に取引データを改ざんしようとすると、その後行われた取引データ(ブロック)も再計算しなければなりません。現実的には「悪意のある」攻撃者、偽造者の他に多数の「善良な」計算者がいるため、再計算速度が新たな取引承認の計算速度においつけないため、偽造は非常に難しくなります。

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