ブロックチェーンとは?? どんな仕組みでどんな強みがあるのか

 

初級編:ブロックチェーンの特徴とは

ビットコインで有名になったブロックチェーンって何??

Q君

ビット君

ブロックチェーンとは簡単に言うと「記録帳」のことだよ!

ブロックチェーンとは

ブロックチェーンの特徴は大きく分けて3つあります。

  • みんなで使える記録帳
  • 情報が細かい箱に分かれて入っている
  • みんなで情報を確認

みんなで使える記録帳

ブロックチェーンとは、金融取引などの取引記録をつける技術です。難しい言葉では「分散型台帳」をつけるといいます。この分散とは、取引記録が世界中に「分散」して保存されることから「分散型」と呼ばれます。

現在、

各会社がそれぞれ一括して取引情報を保存しています。

ブロックチェーンでは、

各会社が「共通の保存先である」ブロックチェーンに取引情報を保存します。

➡このようにブロックチェーンを用いた記録では、情報を共有された台帳に記録していきます。

なるほどね!でもなんで「ブロックチェーン」という名前なの??

Q君

ビット君

それはね、本当にブロックのように情報が記録されているからだよ!

情報が細かい箱に分かれて入っている

ブロックチェーンはその名の通り、たくさんのブロックが連なっています。各ブロックには、新たな取引データが入っていきます。

(ビットコイン取引の場合は10分間分の取引データが1ブロックに含まれます。)

新しい情報がどんどんブロックに記録されていって、「ブロックがチェーンみたいに」つながるからブロックチェーンなのか!

Q君

ビット君

そういうこと!

でも誰がその記録をつけるの??

Q君

ビット君

それはね、「みんな」だよ!

みんなで情報を確認

このブロックチェーンでは、だれでも「ブロック」を作成することができます。一番早くブロックに情報を書き込み、ブロックを完成させた人がそのブロックを「作った」ということになります。

ビットコイン取引の場合、その取引内容が「ブロック」にどんどん記録されていきます。その中で、新たなブロックを一番早く作った人に報酬としてビットコインが送られます。(これが「マイニング」と呼ばれるものです。)

このシステムでは全員で情報の管理をしています。具体的には、ブロックを作る際に世界中のマイニング用コンピューターで、作成されたブロックが正しいかどうかチェックするということです。

➡ これにより、情報を書き換えることが大変困難という利点があります。

前編まとめ

以上がビットコインの特徴です。恐らくこの記事を読んでくださった方の中には、「なんでそんな特徴があるのか」が気になった方がいらっしゃると思います。

ブロックチェーンがなぜこのような特徴をもつのか、その仕組みはこれ以降ご案内しています。

 

ブロックチェーンとセキュリティー

ビット君

後編は以下3つのポイントに絞って、ビットコインがなぜセキュリティーに強いのかお伝えします!

  • 記録の暗号化
  • 新たなブロックを作るために
  • なぜ強い改ざん耐性があるのか

前編でブロックチェーンの仕組みはなんとなくわかったよ。 でもさ、ブロックにある情報をいろんな人がチェックしてたら危なくないの??それっていろんな人がその情報にアクセスできちゃうってことだよね。。。

Q君

ビット君

実はね、そこもうまくできていて、「記録された情報は改ざんがほぼ不可能」なんだよ!

記録の暗号化

各ブロックには取引情報が記録されていますが、その情報は暗号化されていて、その仕組みがブロックチェーンのセキュリティーを強くしています。

この時に用いられるのが「ハッシュ関数」です。元のデータを、ハッシュ関数で暗号化して、ハッシュ値に変えてしまうのです。

ハッシュ値とは

このハッシュ値からは元のデータが解析できないようになっています。さらに、このハッシュ値は、元データが全く同じならば全く同じ値になりますが、少しでも違えば全く違う値になります。

なるほどね~ じゃあブロックの記録は、最終的にはハッシュ化されるんだね!

Q君

ビット君

そういうこと!

そしたらブロックにある情報はハッシュ値になってしまっているから、あとから見ることはできないのかな??

Q君

ビット君

実はそうではないんだ。ブロックを作るときにはブロック内の取引データは残しつつ、そのデータのハッシュ値を計算するんだ!

新たなブロックを作る

新たな取引記録をブロックに記録していくときには、そのブロックに加えなければならない3つの情報があります。

  • 取引データ
    ➡当然ながら取引データは記録しなければなりません。そしてこの時に具体的な取引記録はハッシュ化して、暗号化してしまいます
  • 前のブロックのハッシュ値
  • ナンス値
    ➡このナンス値は、ブロックの情報のハッシュ値を計算するにあたり使う「適当な数値」のことです。

 

ビット君

 これらの情報を計算して「ブロックのハッシュ値」を算出します。

ハッシュ値の計算の仕方

ハッシュ値を計算するには「ハッシュ関数」と呼ばれる関数を用いてコンピューターで計算します。そしてブロック内の情報をハッシュ化するときに、2段階のハッシュ計算を行います。

  • 取引データをハッシュ化(=これを「マークルルート」と言います)
  • 以下三つの値のハッシュ値を計算する
    a. ナンス値
    b. 前のブロックのハッシュ値
    c. マークルルート

➡このa b cの3つの値のハッシュ値が、このブロックのハッシュ値です。

➡以上で1ブロック分のハッシュ値が求められました。

その後、この計算されたハッシュ値が正しいかどうかを、ネットワーク参加者がそれぞれ確認し、「承認」された時点で、新たなブロックが出来上がったということです。

なるほど!こうやってブロックは作られてるんだ~

Q君

ビット君

なかなか複雑だよね

でも、ブロックチェーンはデータが改ざんされづらいって聞いたんだけどそれはどうして??

Q君

ビット君

それはね、さっきの説明にあった、「一個前のハッシュ値を、最新のブロックに加える」からなんだよ!

強いデータ改ざん耐性

ビットコインはすでにご案内した「ハッシュ化」の作業によって、データ改ざんにとても強いシステムです。

なぜでしょうか?実際にデータが改ざんされる場合を想定しましょう。

MEMO
Example

いま仮にブロックが1000個あると想定します。1個目のブロックから始まって、1000個目が最新のブロックです。

あなたは10番目のブロック内のデータを改ざんしようとします。

仮にそのブロックの情報を改ざんできました。しかしここで、あなたが情報を改ざんした10番目のブロックの「ハッシュ値」が変わってしまいます。(なぜなら10番目のブロックの情報を改ざんしたからです。)

ということは、続いて11番目のブロックに含まれる10番目のブロックのハッシュ値も変えなければいけません。

しかし、11番目のブロックの情報のハッシュ値は、同じように12番目のブロックにも含まれます。

ということは12番目の情報も変えなければいけなのか。そのためには13番目、14番目、15、16・・・やばいこれ以降全部変えなきゃだ。。。

Q君

ビット君

そう。つまりあなたが10番目の情報を改ざんするには、連鎖的に10番目以降のすべてのブロックの情報を書き換えなければいけないのです!

ビット君

 このように、ブロック内の情報の改ざんには果てしない時間と労力がかかるのです!

なるほどね。でもさ、新たな11番目のブロックを作ってしまえばいいんじゃないの?それを10番目にくっつけて…ってやっていけばごまかせそうじゃない?

Q君

ビット君

実はね、ブロックチェーンはその名の通り、「一本の」鎖でなくてはならないんだ。

常にチェーンは一本

ブロックチェーンは2本や3本に分岐することができません。もし仮に分岐が確認された場合は、「長いチェーンの方を採用する」という風に決められています。

 

先ほどの10番目のブロックの情報を改ざんする例を見てみましょう。

先ほどの条件にもあったように、今ブロックは1000個あるのですから、新たに11番目のブロックを不正に追加した場合、1000個ある元の鎖を追い抜かなければなりません。

ブロックチェーンは、たくさんのネットワーク上のコンピューターが総動員して、毎日どんどん長くなっています。ブロックチェーンの場合10分で1個のブロックですから、1日で144個ブロックが新たに出来上がっているのです。

このように、ものすごい速度で伸び続けるチェーンを追い抜くのは不可能に近いですね。

なるほど。たしかにこの仕組みだとデータの改ざんはかなり難しそうだね!

Q君

ビット君

そうだよね! このセキュリティーの強さのおかげで、このブロックチェーン技術は現在様々なところで利用されています!

まとめ

いかがでしたか?

今回はブロックチェーンの特徴とその仕組みについてご案内しました。このブロックチェーンは記録をつける台帳なので、あらゆる分野での応用が可能です。

ビット君

これからもこのブロックチェーンがどのように利用されていくのか注目ですね!