「ビットコインの仕組みは?」
仮想通貨を代表する
ビットコインですが、
なんだかよくわからない
という人は多いと思います。
仮想通貨は間違いなく
これからの世界で
普及していきます。
ビットコインは最初に
生まれた仮想通貨です。
ビットコインの仕組みを
知っておく事は、
今後の生活で欠かせない
ものとなっていきます。
今のうちに、
ビットコインの仕組みを
理解しておきましょう。
ビットコインの仕組み
ビットコインをはじめとする
仮想通貨は、インターネット上に
しか存在しないため、なかなか
イメージしにくいですね。
ではビットコインの仕組みを
勉強していきましょう。
ビットコインは分散型台帳システム
仮想通貨であるビットコインと、
ふだん使い慣れている日本円との
大きな違いはその管理方法の違いです。
●クライアント・サーバー型(中央集権型)
日本円などの法定通貨は、
銀行などが預かって管理する
クライアント・サーバー型
(中央集権型)の管理方法です。
たとえば、AさんがBさんに
お金を送る時を考えてみましょう。
Aさん(クライアントA)は
銀行で手続きをして、
Bさん(クライアントB)に
お金を振り込みます。
この時、必ず銀行(サーバー)を
経由して、振込が行われます。
銀行は、取引台帳を管理していて、
台帳に
「AさんからBさんへいくら振り込んだ」
という情報を書き込みます。
勝手に台帳に書き込んだり、
台帳を改ざんされないように、
銀行は厳重に台帳を管理しています。
その管理には、
ばく大なお金がかかり、
かかったお金は私たちに
「手数料」
として跳ね返ってきます。
このような
「クライアント・サーバー型」
の管理方法は世の中の
いろいろな場面で使われています。
例えば、電気がそうですね。
「発電所」がサーバーとなり、
各家庭が「クライアント」になります。
●ピア・ツー・ピア型(分散型)
ビットコインなど、
仮想通貨の場合は銀行のような、
台帳を集中管理する機関がありません。
じゃあ、どうしているのかというと、
みんなで台帳を管理・監視しています。
そのため、先ほどの
「AさんからBさんへお金を送金する」
という場合でも、
まるでメールを送るように、
ビットコインを送金できます。
そして、その取引の記録は、
みんなで管理している台帳に
書き込まれ、みんなで間違いが
ないことが検証されます。
そのため、銀行のように
ばく大な管理費用が必要なくなり、
手数料もごくわずかですみます。
手数料は、
台帳を管理・監視するのに
協力した人に支払われます。
ビットコインの仕組みのキモ!ブロックチェーン技術
ビットコインの仕組みで
重要な役割を果たすのが
「ブロックチェーン技術」
です。
ビットコインは、
分散型の台帳管理システムですが、
この台帳が簡単に書き変えられたら、
通貨として使えません。
この、改ざんを防ぐための仕組みが
「ブロックチェーン技術」です。
その名の通り、
「データブロック」が
「チェーン」のように、
連鎖していくことによって、
改ざんを防いでいます。
ビットコインの場合、
10分に1回ブロックが
生成されて、つながっていきます。
このブロックがデータ的に
つながっている仕組みは
次の図のようなイメージです。
ブロックの中に、
前のブロックを要約した
「ハッシュ値」
というものを含むため、
データがつながっていくわけですね。
ハッシュ値というのは、
「ハッシュ関数」
と呼ばれている関数を使って
計算した、固定長の文字列です。
たとえば、
MD2というハッシュ関数を使うと、
あいうえお→f61ce990241d0eff615fbaf71d319f05
アいうえお→3b3792b599557035fdebf190c0ade4ea
と、一部違っただけでも、
全然違うハッシュ値に変換されます。
データブロックには、
「どのブロックも前のブロックのハッシュ値を持つ」
ために、改ざんが困難になります。
改ざんするためには、
チェーンをたどって、
すべてのブロックを
書き変えなくてはなりません。
ブロックチェーンの分岐を防ぐ決まり
頭のいい人は、
「ブロックチェーンの途中のデータを改ざんしなくても、最後のブロックからニセのブロックを継ぎ足せばいいのでは?」
と考えるかもしれません。
しかし、
ブロックチェーン技術には、
これを防ぐ決まりがあります。
「一番長いブロックチェーンを正しいものとする」
という決まりです。
実はブロックの生成には、
大きなコンピュータパワーを
必要とします。
時間がかかるわけですね。
そのため、
犯罪者がニセのブロックを
継ぎ足している間に、
世界中のコンピュータパワーが
正しいブロックを次々と
継ぎ足していきます。
つまり、ニセのブロックを
継ぎ足しても間に合わないわけです。
この決まりによって、
正しいブロックのみがチェーンに
継ぎ足されていくことになります。
条件に合うナンスを見つけるのがマイニング
ブロックの生成には
大きなコンピュータパワーが
必要という話をしました。
実はこれが、
「ビットコインのマイニング」
と関係します。
マイニングと言えば、
なにかをコンピュータで計算させると
ビットコインがもらえる仕組みという
イメージを持っている人も多いでしょう。
その通りなのですが、
より具体的に言うと、
条件に合うナンスという数値を
一番最初に見つけた人が
ビットコインをもらえます。
もう一度、
ブロックの図を見てみましょう。
「ナンス」というデータがありますね。
ナンス(nonce)とは
「Number used once(一度だけ使用される使い捨ての数字)」
の略で、
ブロックデータをハッシュ化する時に、
ある条件を満たすハッシュ値に
なるように調整するための数値です。
その条件とは、
「ハッシュ値の先頭から一定数の0が連続する」
というものです。
下の図のようにナンスの値を
変えていくことによって、
条件に合うナンスを見つけ出します。
ブロックの中の
「前のハッシュ値」と「取引データ」は
変えるわけにいかないので、
ひたすらナンスの値を変えて
計算してみるしか方法がありません。
そのため、
大きなコンピュータパワーが
必要になるわけです。
ちなみに、
コンピュータも年々進化しているので、
この条件もだんだん難しいものに
調整されていきます。
ビットコインができたばかりの頃は、
この条件も簡単だったので、
個人のパソコンでも
マイニングができました。
しかし、現在では
大規模なコンピュータ施設と、
それを動かすための大きな電力が
必要となるので、
個人ではとてもできません。
最近ではDMMが石川県で
マイニング工場を開設して
話題になりました。
なぜなら電力の高い日本で
マイニングをするのは
不利だからです。
ビットコイン以外にも優秀なアルトコインが
いかがだったでしょうか?
なるべくわかりやすく
説明したつもりですが、
ビットコインの仕組みを
知ってもらう助けになれば幸いです。
ビットコインの仕組みは
他のあとから生まれた
アルトコインの仕組みを
理解する上で欠かせません。
ビットコインの仕組みを利用して、
より高性能で、多機能な
アルトコインが次々に生まれています。
これを機会に、
いろいろなアルトコインについても、
仕組みを勉強していくことを
オススメします。
コメント