見出し画像

ブロックチェーンの「チェーン」とは

「ブロックチェーン」について「ブロック」が「チェーン状」になってそれが銀行の台帳のような役割をしている、、、ということは分かっていても「チェーン」状ってどういう事?と思われる方も多いと思います。今回はブロックチェーンの「チェーン」についてです。

ブロックチェーンについて

ブロックチェーンは皆さんご存知の通り「ブロック」が「チェーン」状に繋がれて、そこに取引などの記録が全て記載されて「台帳(記録帳)」のような役割を果たすものです。(ブロックチェーンの概要はこちら⇒ブロックチェーンの機能と仕組み)

もちろん「物」として立方体の「ブロック」があって、それが「鎖」に繋がれているものではないという事は多くの方が分かっている事だと思います。ブロックチェーンはデータベースとして存在しますのでそれらの記録は全てデータで表されております。つまり「ブロック」も「チェーン」も「イメージ」ということです。

「ブロック」は台帳のようなものですのでそこには「記録」が埋め込まれていき、記録が増えればブロックも増えていきます。データで記録を残していく、というのはパソコンを普段から利用する私達であれば「ブロック」のイメージはなんとなくつくかと思います。

では、「チェーン」とはどのようなものなのでしょうか?

「チェーン」とは

「チェーン」は一つ前のブロックのデータが次のブロックに使用されることにより「繋がれている」事の証明がなされます。

少し踏み込んで説明します。

「ブロック」には「ヘッダ(頭)」があるという事をまず覚えてください。「ヘッダ」というのはそのデータ群の一番最初の部分だと考えてOKです。「頭」=「先頭」という意味です。全てのブロックにはヘッダがあります。そのヘッダには一つ前のブロックのデータを演算した数値が埋め込まれます。そうすることで、その数値があれば前のブロックとそのブロックがつながっている事の証明になるのです。

ブロックの作成者はもちろん前のブロックとつながっている事はわかります。自身で前のブロックのデータ(演算結果)を作成したブロックに埋め込んでいるからです。しかし、ブロックを作成した人以外の人はパッと見では分かりません。ブロックが前のブロックとつながっているのかを確認する場合は、ブロックのヘッダを確認して一つ前のブロックデータを演算した結果が入っていれば「あ、このブロックはチェーンでつながれたブロックだ」と考えることができるのです。

ちなみにここで出てくる「演算」とは「ハッシュ」と呼ばれる演算方法です。ハッシュ関数はブロックチェーンにおいてかなり重要な意味を持ちます。ハッシュ関数はブロックチェーンにおいて無くてはならない技術です。「ハッシュ関数」をとても簡単に説明すると「一方通行の計算」です。ある値をハッシュ化するとある値が出ます。しかしその出てきた値から元の値に戻すことはできませんし、推測も事実上不可能です。

前のブロックデータをハッシュ化して(厳密には二回ハッシュ化します)出てきた値を次のブロックのヘッダに埋め込む。これをブロック作成ごとに繰り返されるので、ブロックがチェーン状につながり、「ブロックチェーン」になっていくのです。

また、ブロックチェーンの起源でもあるgenesisブロック(ブロックチェーンの起源である「ビットコイン」の最初のブロック)にもこのブロックハッシュ値は存在します。ハッシュ値はただの文字列ですが、興味のある方はどのようなものか調べてみても面白いかもしれません。ブロックハッシュ値の例として以下に記載します。

<genesisブロックのブロックハッシュ値>

000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f(本当にただの文字列です笑)

終わりに

少し初心者の方には踏み込んだ内容になってしまいましたが、少しでもブロックチェーンの知識を増やしていただけたらと思います。というのも一般的に「ブロックチェーンが凄い!」という話を聞くことがあるかもしれませんが、ブロックチェーン単体では正直そこまで世の中を変える力はそこまで無いと私は考えております。ブロックチェーンとAI・IoT、そして社会システムがうまく絡み合う事によって世の中は変わっていきます。その世の中を変えるテクノロジーの一つとしてブロックチェーンを学んでいただければと思います。

この記事が気に入ったらサポートをしてみませんか?