マイニング

プルーフオブワーク(仕事の証明)のアルゴリズムを用いてブロックチェーン台帳をノード間で共有し、維持し、新しい取引データを書き加えるための作業をマイニングと呼びます。マイニング作業を行うノードをマイナーと呼び、マイナーは、他のマイナーよりも早く特定のナンス(ハッシュ値)を見つけることで、新しいブロックを生成し、手数料と生成報酬を受取る権利を得ることができます。
この作業が、金鉱から金を採掘するさまに似ていることから、マイナー(採掘者)と呼ばれています。マイナーが探すナンス値は、例えるならば砂浜から条件に合う砂粒を探すようなものです。砂粒は確かに存在しているものの、目星をつけて探すことができないため総当りで一粒ずつ検査するしかなく、それゆえにマイニングの参加者は平等なルールのもとで競争することになります。ビットコインでは、おおよそ10分おきに見つかるように難易度が設定されており、マイナーの作業量に応じて、約2週間ごとに調整されています。この作業量を「ハッシュレート」と呼び、ハッシュレートが低い時は見つける砂粒の条件が緩いのですが、ハッシュレートが高くなると条件が厳しくなっていきます。
2016年時点でハッシュレートは1.5EH/s(エクサハッシュ毎秒)まで上昇しており、これはおよそ9垓(10^20)回ほど計算すると、条件に合うナンスが見つかる確率となります。こうして見つけられたナンス値は、「前のブロックに続くブロックに適合する値を見つけた」と他のノードに伝達すること以外に使い道はなく、膨大な計算を行うために電気代が消費され、無駄のようにも思えますが、「誰も管理していない非中央集権型の通貨ネットワーク」というコンセプトを実現するため、ビットコインにおいて極めて重要な役割を担っているのです。
ビットコインにおけるトランザクション(取引)は、電子署名でそのコインの「実在性」を保証しており、ブロックチェーンは、そのコインの取引履歴を常にひとつに保つことで「二重支払いがない」ことを保証しています。しかし、もしブロックチェーンの維持管理に加わるノードが嘘をついたり、談合したりして、嘘の報告ができてしまえば、ブロックチェーンの歴史が捻じ曲げられてしまいます。これでは、通貨のような価値の情報を流通させることはできません。そこで、ビットコインではマイニング作業を行わせ、報酬を与えることによってその行為に加わる動機を与え、経済原理による競争を行わせているのです。こうすることで、嘘をついたり、談合したりして嘘の報告をして新しいブロックを生成しようとしたり、過去の履歴を改ざんするために、ブロックチェーンの書き換えを行おうとしたりすることを非常に困難にしています。

関連用語