近年、世界中で仮想通貨がブームになっており今現在、保有している方も多いと思います。今回はマイニングについて、どのような仕組みなのか、などの疑問を解消します。
そもそもビットコインとは?
まず、マイニングを理解する前にビットコインとは何なのか理解しておく必要があります。
ビットコインは世界で初めてできた仮想通貨と言われており、『サトシ・ナカモト』とい人物が作ったとされているP2P(Peer to Peer)の電子決済システムです。ビットコイン(BTC)などの仮想通貨は、インターネット上で利用できる通貨で、コインや紙幣などの実態がないという特徴があります。実態がない分、ネット上で簡単に送金できる点などがメリットです。
取引のデータはブロックに格納される
ビットコインに代表される仮想通貨の取引データは、一定の時間で生成されるブロックと呼ばれるものに格納されます。このブロックは、時系列でつながることでチェーン状に伸びていくことが特徴です。
ただし、ブロック内の取引データの正当性が確認されないと、ブロックはつながらないことになっています。そしてブロックが連なったものは、ブロックチェーンと呼ばれています。
ビットコインのマイニングとは?
マイニングには、採掘という意味があります。
ビットコインなどの仮想通貨における取引検証の方法が鉱物採掘に似ているため、マイニングと呼ばれるようになりました。マイニングとは、仮想通貨の取引データが格納されているブロックに、正しく取引が記録されているかを検証する行為です。
マイニング作業は、検証行為を行うブロック内のデータと、取引検証完了済の証である1つ前のブロックのハッシュ値と呼ばれる値、さらに、正解を導くことになる数値(ノンス)の3つのデータをハッシュ関数に入れます。
その結果、最初にゼロがたくさん並ぶ数値(ハッシュ値)が得られると、検証対象ブロックの取引正当性が確認できる仕組みです。
ハッシュ関数
ハッシュ関数は、ある数値を入れると入力値とはまったく無関係の値を出力してくれる関数です。ハッシュとは細かく砕くことを意味しています。
マイニング作業は、ノンスの候補値をハッシュ関数に入力して確認する作業を何度も試すことで、最初にゼロが並ぶハッシュ値を探し出します。ハッシュ値の先頭にゼロが並ぶ確率は低いため、繰り返し何度もノンスの候補を関数に入力して試す必要があります。
取引検証には膨大な計算が必要
ハッシュ値からノンス値を逆算することはできないため、入力するノンスを総当り的に何度も変えて試すしかありません。そのため、効率的に取引検証を行うためには、コンピュータによる膨大な計算能力が求められます。
ゼロが並ぶ正解となるハッシュ値が得られるノンスがみつかると、検証作業は終了です。そして検証を終えたブロックは、過去のブロックにつながりブロックチェーンが伸びていきます。
マイニングで報酬はビットコイン⁉
基本的にマイニングは誰でも参加できます。
マイニングに参加するメリットは、報酬をもらえる可能性があることです。マイニングは作業をいち早く終えた者が報酬を総取りします。なので莫大な量の計算を、1番最初に正解となるハッシュ値が得られるノンスの値を見つけた者だけが、報酬を受け取れるということです。
そのため、多くの高性能なマシンを用意して、そのマシンを販売することで稼ぐことを狙っている業者も存在します。
※マイニング工場