プルーフオブワーク(PoW)

ビットコインのプルーフオブワーク(PoW)は、1997年にアダムバックによりメールスパム防止のために考案されたハッシュキャッシュ(Hashcash)を元にしたアルゴリズムです。プルーフオブワークで行われているのは、CPUなどの計算リソースを使い、「0と1からなるハッシュ値の頭から n ケタが0である数(ナンスという)」を総当りでマイナー(採掘者)に計算させることです。半導体資源や電力の浪費という観点で言えば非常に非効率な仕組みですが、なぜビットコインにこの仕組みが必要だったのでしょうか? その理由は簡単です。要するに、誰でも参加できるネットワークには、嘘をついたり利己的な行動をする参加者が紛れ込むということです。プルーフオブワークでは、この問題へのアプローチとして「次のブロックを他の競争者よりも早く見つけたら新しいBTCを発行する権利を与える」というルールを定めました。ブロックチェーンの仕組み上、過去のデータ改ざんや発行益の独占など参加者が敵対的な行動をしようとすれば、攻撃者だけでブロックを見つけていく必要があります。プルーフオブワークを採用すると、このように個人vs全体の計算リソースで競争することになるため、個人の勝ち目は殆どないことがわかると思います。したがって、このルールの上では、マイナーは敵対的な行動をするよりも協調する方が収益が期待できるため、協力的な参加者として振る舞う動機が生まれるわけです。このような仕組みを総称してナカモトコンセンサス(Nakamoto Consensus)とも言い、またこの他にプルーフオブステーク(PoS)や、信頼のおける参加者のみが参加することを前提にしたPBFTアルゴリズム(Practical Byzantine Fault Tolerance)と呼ばれるものもあります。

関連用語