マイニングの概要
マイニングとは、日本語に訳すと採掘という意味です。
ビットコインなどの仮想通貨は、全ての取引がブロックチェーンに記録されており、日々新しい取引が次々と追記されていきます。その追記の処理をおこなうときに、現在までのデータと、追記の対象期間に発生した全ての取引データの整合性を取りながら正確に記録することが求められます。
ブロックチェーンの台帳への記録が書き込み待機中となっている取引を承認させるときに「マイニング」という処理がおこなわれます。
マイニングとはブロックチェーンの安全性を高めるためにおなこう処理で、膨大な数学的計算を繰り返し「ナンス(Nonce)」と呼ばれる数値を探すことを指します。ある単純な計算をパラメーターを変更しながら総当たりで繰り返し、一定の条件を満たしたパラメーターである「ナンス」を求めます。そして、この計算を行うためには、大量のコンピュータハードウェアと電気代が必要となります。よって、運良くナンスを見つけた場合には、その対価として、マイニングの成功報酬と、承認した取引に設定された手数料を受け取ることができます。例えばビットコインでは、その報酬は2017年1月現在で12.5BTCです。これが、膨大な採掘の結果わずかな金(Gold)が見つかるさまに似ていることから、「マイニング(採掘)」と呼ばれています。
マイニングを行う理由
マイニングを行う最大の理由は、データの改ざんを防ぐことです。取引記録は、ネットワークによって承認される厳密な暗号学的ルールに適合した一つのブロックに収められなければなりません。
新しい取引が承認されるためには、既存の取引記録を要約した情報に加えて、新しい取引情報をマイニングによって確定し、ブロックがチェーン状に次々と追加されるように設計されています。これにより、以前の取引を改ざんすることが非常に難しくなります。なぜなら、取引を改ざんするには改ざん以降全てのブロックを再計算することが必要となり、それは数学的に事実上不可能であるからです。
したがってマイニングという行為は、ブロックチェーンの安全性を担保する重要な仕組みであると言えます。
また一般ユーザーは、マイニングによってブロックチェーンをネットワーク上で安心して使用できるという恩恵を受けています。
マイニングを行なっているのは誰か?
マイニングは、計算パワーを提供し、その見返りによる収入を得ているマイナー(採掘者)によっておこなわれています。理論的にはPCを用意すれば、誰もがマイナーになることができます。
マイニングではナンスを総当たりで探索することなので、より計算能力の高いコンピュータを使用するほど採掘が有利になります。
現在ではマイニング専用ハードウェアの高性能化が進んでおり、さらにマイニング専用のハードウェアを何千台も使用している「ファーム」と呼ばれる組織でもないと、ほぼマイニングすることはできません。
ビットコインにおけるマイニング・ファームは10社程度でシェアの90%以上を占めており、多くは電気代や初期投資の安い中国企業となっています。その総投資額は数千億円とも言われています。
またそのような背景から、複数のマイナーで協力してマイニングを行う「マイニングプール」という仕組みも出てきています。彼らはマイニングの結果、得られた採掘報酬を各マイナーの貢献度に応じて分配します。
従って協力することによって一度に得られる報酬は低いが、安定的に収入を得ることができるというメリットがあります。
マイニングを必要とするブロックチェーンは、安全性を支えられている一方、サーバーや電力など大量に使い効率の悪さも指摘されています。既にこの問題の解決手段は幾つか登場していますが、今後もより効率的にブロックチェーンを動かしていく技術の発達進んでいくでしょう。今後の発展に目が離せません。