仮想通貨

ブロックチェーンの仕組みをわかりやすく図解!!

 

※この記事では、仮想通貨の代表としてビットコインを扱っています。

こんにちは、シスイ(@shisui_1234)です。

 

2017年に日本で爆発的に盛り上がったビットコイン。

そのビットコインと切っても切り離せない関係にあるのが、ブロックチェーンです。

 

ブロックチェーンは『裏方』としてこんなにも頑張っているのに、ほとんどの人は『表方』のビットコインのことしか知らないと思います。

 

この記事では、『ブロックチェーンをわかりやすく解説する』というテーマでブロックチェーンについて解説していきます。

 

みなさん、もっとブロックチェーンのことにも注目してあげてください。


ブロックチェーンとは?

 

「そもそもブロックチェーンって何なのでしょうか?」

 


ブロックチェーンとは『分散型台帳技術』です。

これではなんのことかさっぱりわからないので、もっと砕いて説明すると、一定時間内(およそ10分)の取引データの集まり『ブロック』『チェーン』で繋いでいって保管する技術のこと。このことから『ブロックチェーン』と名付けられたのですね。

 

皆さんご存知のビットコインに使われている技術としてブロックチェーンは『サトシ・ナカモト』という謎の人物により発表されました。つまり、ビットコインとブロックチェーンは双子なのです。

そのため、ビットコインとブロックチェーンを同一視している人が時々いますが、全く別のものだということを覚えておいてくださいね。

 

図1. ブロックチェーンのイメージ

 

※図1では、わかりやすさを重視するためブロック内を取引データしか書いていませんが、本当は『前のブロックのハッシュ値』や『ナンス値』なども持っています。ブロックの構造については後から記述します。

 

また、ブロックチェーンは一方通行です。古いブロックから新しいブロックへと順々にチェーンで結んでいきます。

チェーンが枝分かれしたりはしません。

最も古いブロックから最も新しいブロックまでたった1つのチェーンで繋がっています。

P2Pネットワーク

 

主な通信方式に『クライアント・サーバー』『P2P』があります。

ブロックチェーンは『P2Pネットワーク』で成り立っています。

 

まずは、普段使う機会の多いクライアント・サーバーから説明していきます。

クライアント・サーバーは中央集権型のネットワークで、その名の通り『クライアント』『サーバー』が存在します。

クライアント・サーバー方式は中央のサーバーがデータを一括管理しています。そのため、何かの不具合でサーバーがダウンしたり、クラッカーのハッキングによりダウンしたりするとネットワーク全体が影響を受け、使えなくなります。

 

図2. クライアント・サーバー

 

このクライアント・サーバー方式に相反するものとして『P2P』があります。

P2Pとは『Peer to Peer』の略称で、Peerは『同等なもの』という意味です。

読み方はピアツーピア。

P2Pはクライアントのみで形成され、サーバーは存在しません。

つまり、クライアント・サーバー方式では、サーバーがデータを一括管理していましたが、『P2P』はクライアント両者にデータを保持するのです。

P2Pの例としは、LINEやSkypeの通話が挙げられます。

図3. P2P

 

そして、P2Pが無数に集まって『P2Pネットワーク』が形成されます。

 

図4. P2Pネットワーク

 

P2Pネットワークはクライアントサーバーのように一括してデータをもっていないため、たとえどこかの端末がダウンしたとしても全体には影響がありません。

このように、多くの人が取引データを保持することでどこかで取引データが改ざんされたとしても、多数決でどのデータが正しいかがすぐにわかります。

取引データをみんなで監視しているようなイメージですね。


ブロックのデータ構造 

図5. ブロックのデータ構造

 

ブロックのデータ構造は図5のように『前ブロックのハッシュ値』『ナンス値』『一定時間内の取引データ』が含まれています。

それぞれについて簡単に説明していきます。

前ブロックのハッシュ値

「ハッシュ値ってなに?」

という方も多いのではないでしょうか?

 

ハッシュ値とは、ある値をハッシュ関数という複雑な計算式にかけたときに返ってくる値です。

 

図6. ハッシュ値

 

ハッシュ値には、

 

・ある値が少しでも変化するとハッシュ値は全く違うものとなる。

・異なる値から同じハッシュ値がとれることはほとんどない。

・ハッシュ値からもとの値に戻すのは不可能

 

という特徴がある。

 

この特徴のおかげで、改ざんの検知がしやすくなるのです。

 

ブロック内に前ブロックのハッシュ値を持つ理由は、そのブロックのハッシュ値の計算に前のブロックのハッシュ値を使うから。

ちなみに、ブロックチェーンで用いられるハッシュ値は、64ケタです。

ナンス値

ナンス値は新たなブロックを生成するために必要な32ビットの値です。

 

ブロックチェーンでは新たなブロックを生成するために、『前ブロックのハッシュ値+今回のブロックに含まれる全取引データ+ナンス値』を64ケタのハッシュ値に置き換えたうえで、その最初の16、ないし17ケタがすべて0になるようなナンス値を見つけなければいけないと決まっています。

 

このハッシュ値を見つける作業のことを『マイニング』といいます。

そしてビットコインでは、一番最初にマイニングした人に報酬として12.5BTCを付与しています。

 

2018年2月21日現在の1BTCは約115万なので12.5BTCは1437万5千円ですね…。(笑)

 

マイニングには超高機能なコンピュータを複数で稼働させる必要があるらしいので、私たち一般人にはできたものではありませんね。それにコンピュータを冷却するための電気代もバカにならないだろうし。1437万5千円は果たして元が取れているのでしょうか?

取引データ

これは読んで字のごとく取引データです。

取引データもハッシュ関数により64ケタのハッシュ値に置き換えられています。

また、ブロックは約10分毎に1つ生成されます。

そのため、取引データは約10分間に発生した分だけブロック内に存在します。

ブロックチェーンの可能性

ブロックチェーンは2009年にビットコインの技術としてスタートしてから今までずっと稼働し続けています。

 

スタートから約10年間走り続けているということは、とても安定していると言えるのではないでしょうか。

 

ビットコインに用いられているブロックチェーン技術はまだ第1形態でしかありません。ビットコインなどの仮想通貨以外の応用をブロックチェーン2.0と呼びます。

 

今後は決済の分野だけでなく、流通や医療などとさまざまな分野で活躍することでしょう。

まとめ

さいごまで読んでいただき、ありがとうございます。

 

ブロックチェーンについて簡単にまとめると、『改ざんされにくい、みんなの台帳』ですね。

 

まあ最低限、多くの取引データが入ったブロックがチェーンで繋がれているということだけは覚えていってください。そしてチェーンが鋼鉄なため、取れなくて改ざんできないと。

 

にゃむ
にゃむ
またきてにゃ ♪

スポンサードリンク
ブロックチェーンゲーマー根本さんのブログ
ABOUT ME
シスイ
シスイ
ゲームと猫と仮想通貨が誰よりも大好き。本ブログは2018年1月に脱サラを目標として運営を始めました。Twitterもやってますのでどんどん絡んでください!フォローしていただけると嬉しいです☟