ブロックチェーンとは?今更聞けない基礎知識

トア
トア

ねえGG

GG
GG

なんじゃ

トア
トア

ブロックチェーンって何…?

GG
GG

…え?

トア
トア

いや、知ってて当たり前なものらしいんだけど、私いまいちわかってなくってw

GG
GG

なん…じゃと…

トア
トア

でもGGがいればわかりやすく教えてもらえるしなってw

GG
GG

はぁ…わかったぞい…今日はブロックチェーンの事を教えてやるぞい…

暗号資産を扱っているとブロックチェーンという言葉をよく耳にすると思います。
これは暗号資産に使われているシステムの事を指しますが、細かいところまで把握していない方は少なからずいらっしゃるのではないでしょうか?
本記事ではいまさら聞けないブロックチェーンについて解説していきます。

ブロックチェーンとは

まずはブロックチェーンがどのようにして誕生したのか、また、どのような仕組みであるかについて解説していきます。

【ブロックチェーンの誕生】

1991年
ブロックチェーンの元となったアイデアが、Stuart HaberとW. Scott Stornettaという研究者によって編み出されました。
このアイディアは、デジタルドキュメントにタイムスタンプを付けることによって日付を遡ったり、改竄されたりすることを防ぐという、計算上の実用的なソリューションとして紹介されています。

1992年
マークルツリーが設計に組み込まれた形で、暗号化され鎖のように繋がったブロックを使用したタイムスタンプの付いた文書を保存し、複数の文書を1つのブロックにまとめることを実現しています。
しかしながら、このシステムは使われず、2004年には特許が切れてしまっています。

2008年
サトシ・ナカモトという名の人物(またはグループ)が、暗号資産ビットコインの公開取引台帳としての役割を果たすためにブロックチェーンが組み込まれました。
ビットコインのブロックチェーンの発明によって、ビットコインは信頼できる中央サーバーなどを要さない、二重取引問題を解決する初の暗号資産となります。
ビットコインは各方面に影響を与え、一般に公開されているブロックチェーンは暗号資産として広く利用されることとなり現在に至っています。

【ブロックチェーンとは】

ブロックチェーンとは、取引データの運用技術のことを言います。
取引のデータをトランザクションと呼び、そして、このトランザクションをまとめたものをブロックと言います。
このブロックを繋げて保存したもののことをブロックチェーンと呼びます。
ブロックチェーンは分散管理をしているのが特徴で、分散型ネットワークを構成する複数のコンピューターを用いて、取引情報などのデータを同期して記録するビットコインなどを利用しているあらゆるユーザーのコンピューターに保存されます。
銀行のような特定の管理機関はなく、一か所に権限が集まってしまうということがありません。
そのためシステム障害への耐性が強いのも利点になっています。
ブロックチェーンシステムは、「改ざん不可能な分散型台帳」ともいわれビットコインをはじめとしたあらゆる暗号資産に使われています。

【ブロック】

ブロックには3つのデータがはいっています。

①ハッシュ値
入力データを変換して得られる、規則性のない固定長の数値を算出する計算手順をハッシュ関数と言いますが、ハッシュ関数を出力した結果の値をハッシュ値と呼びます。

ハッシュ関数は、入力データに相違がなければ出力されるハッシュ値は常に同じになりますが、入力データに相違があると全く異なるハッシュ値で出力されてしまいます。
また、ハッシュ関数はデータを一方向にしか計算できないため、データからハッシュを逆算することはできないといわれています。

☆出力した値から入力されたデータを逆算することができない(1方向性)
☆入力したデータが同じであれば出力される値が変わることがない、入力が1字でも違えば出力は変わる

②取引データ
取引データとは文字通り、ある特定の取引に関するデータのことを指します。
ビットコインブロックチェーンで見ると、取引データには送金額などの取引に関する情報が含まれます。ブロックは約10分に1回のペースで生成され、この間の取引データがブロックに格納されます。
☆取引の主体となるデータであり一定時間内のデータが1つのブロックに格納されている。

例えばchainFlyerでは、現在行われているビットコインの取引を視覚的にリアルタイムで確認することができます。
※文字をクリックするとchainFlyerのページに遷移します、音声が再生されるので音量にご注意ください。
リアルタイムでどれほどの取引が行われているか気になったことがある方は是非確認してみてください♪

③ナンス値
ナンス値(number used once)は使い捨ての数字のことを意味します。
ナンス値自体には特段意味はないものの、ブロックチェーンの場合は、ナンス値により次のブロックで使用するハッシュ値が変化します。
ブロック全体のデータ構造は、【取引データ】【前ブロックのハッシュ値】【ナンス値】で構成されていますが、【取引データ】【前ブロックのハッシュ値】の2つは既に決定しているため、後に続くブロックで使用するハッシュ値を決定する為に変化させることができるのは、このナンス値のみということになります。
☆ナンス値自体に特別意味はないが、次のブロックでのハッシュ値を出すために入っているデータ

またこのナンス値によるハッシュ値の変化は前述で「改ざん不可能」と記載した理由の一つとも言えます。
ビットコインの場合、新規のブロックを作成するルールとして、「ハッシュ値が一定の条件を満たすものになることが必要」です。
新規のブロックを追加するためにこのルールに則った場合、ナンス値を見つけ出す必要があります。
もし過去に生成したブロックの情報を改ざんしようとした場合、変更したブロックから出てくるハッシュ値は元のハッシュ値と異なる為、そこから続く全ブロックのハッシュ値も改ざんする必要があり、改ざん自体極めて困難です。
その為ブロックチェーンは改ざん耐性に優れたデータ構造だと言えるでしょう。

トア
トア

ブロックチェーンって改ざんされにくいってこと?

GG
GG

そうじゃ、現実的に改ざんはできないといわれておるぞい

トア
トア

じゃあブロックチェーンは完璧なシステムなんだね!

GG
GG

セキュリティ面ではかなり評価が高いのは間違いないんじゃがのう…

トア
トア

他に何か問題があるってこと?

GG
GG

51%攻撃は聞いたことあるじゃろ?

トア
トア

51%攻撃…?

GG
GG

なかったか…そこも説明していくとするかのう

51%攻撃

ブロックチェーンは非中央集権化されたシステムでセキュリティ面にて非常に信頼されているとされる一方、様々な問題も存在しています。
その中のひとつに51%攻撃があげられます。
まずは51%がどういったものなのかを解説していきます。

【51%攻撃とは】

51%攻撃とは、全体の51%以上の計算能力を悪意のあるマイナーに占められてしまうことを指します。
言い換えれば51%を特定のマイナーに占められるということは、ブロックチェーンネットワークのコントロールが可能になってしまう可能性があるという事です。

もう少し詳しく解説をしていくと、51%攻撃はブロックチェーンのシステムを逆手にとった手法と言われています。

ブロックチェーンでは、大量のトランザクションデータを
【一つのブロックにまとめて保存】→【次のブロックを作成】
といった流れでブロック同士が連なっていくように並んで保存されていく、という仕組みになっています。
また、この一つにまとまった取引履歴が、本当に正しいものなのかを検証していく承認作業をマイニングと呼びます。
マイニングではブロックのハッシュ値を求めるために「ナンス」の計算を行なっています。この計算を最初に行えたマイナーがブロックを生成できマイニング報酬を得ることができるのです。

しかし、稀に複数のマイナーが同時にナンスの計算を終えるということが発生します。
この場合ブロックチェーンのルールに則り、同時に作成されたブロックチェーンはどちらも一旦正式なブロックとして承認されます。
その後、どちらもブロックをつなげていき、最終的に長い方のブロックチェーンが正式なブロックチェーンとして採用、短い方のブロックチェーンはブロック自体がなかったことにされてしまうのです。
ブロック生成後は、取引情報が本当に正しいのか確認が行われますが、この確認作業にはネットワーク参加者の計算量の過半数が必要になります。
悪意のあるノードが51%以上の計算力を持っていた場合は、理論上そのノードのどちらかのブロックチェーンを故意に伸ばしてしまうことができるということです。
これが51%攻撃です。

本来正しいブロックのチェーンが伸びていくはずのところを、悪意ある何者かがハッシュレート全体の50%以上の力を持つことで不正な方のブロックにチェーンを伸すことができます。
こうなると、正しい取引の否認や不正な取引の承認が可能ということになってしまいます。
正しい取引が否認されてしまうということは、お店で客がビットコインで支払いを行った際、承認されるはずの取引が取り消されてしまい、お店側が損害を被ることになりかねません。
二重払いについても同様です。
一度送金した暗号資産をもう一度別のアドレスに送金することが二重支払いになります。
通常、ブロックチェーンには二重支払いが行われた際、より早く行われた方の取引を採用し、あとに行われた取引は無効とされます。
51%攻撃が可能になってしまうと、後に行われた取引を承認し二重支払いをしてしまうということです。

【過去に起こった51%攻撃】

実際に51%攻撃が可能かどうか、過去の51%攻撃の事例を挙げていきましょう。

モナコイン–2018年5月–
51%攻撃とされる事例が発生しました。
悪意を持ったマイナーが不正なブロックチェーンを仕込み、最も長いブロックチェーンまで伸ばしました。
その間にモナコインを取引所へ入金・売却し別の暗号資産に換えたのちに出金したとのことです。
最後に不正なブロックチェーンを公開し、正常なブロックチェーンを削除・不正取引の履歴も削除しマイナーは逃亡を図ったそうですが、
この時の被害としては取引所側で出金履歴のみを残された形になり、結果的に損失を発生させられた形になりました。

バージ–2018年4月・5月–
バージは2度の51%攻撃を受けています。
1度目は、不正な取引承認を行った後2000万XVG(約1億2000万円相当)のバージが盗難、
そして2度目は3500万XVG(約2億円相当)の盗難被害に遭いました。
運営によると、暗号資産バージのコード変更時にセキュリティ上脆弱な部分が存在し、他の暗号資産よりも不正ハッキングされやすい状況だったと説明しています。

ビットコインゴールド–2018年5月–
この事件の手法はモナコインと同様のケースといわれていますが、結末が少し変わってきます。
ビットコインゴールドのケースでは、39万BTG(約20億円相当)が盗難被害にあっています。
51%攻撃の後に二重支払いを実行、不正に取引額を引き上げられたことにより盗難の被害にあっています。
また、システムの履歴が残っており、大規模なハッシュパワーの痕跡が残っていたことが、51%攻撃の手法だったと言われています。

例に挙げたように過去複数回に渡る51%攻撃が確認されています。
51%攻撃は理論上だけでなく事実として今後も起こりうるということですね。

トア
トア

そんな事件があったんだね…

GG
GG

そうなんじゃよ…ブロックチェーンという仕組み自体はセキュリティがしっかりしているといえるんじゃが、人間による攻撃がされているという可能性も0ではないんじゃよ

トア
トア

100%安全だっていえるものはないんだね…

GG
GG

とはいえブロックチェーンという仕組み自体は優秀なものじゃからの、後はマイナーの良心と運営の問題になってくるんじゃ!

トア
トア

私は良心に満ち溢れているよ!(キラキラ)

GG
GG

…。ここらでブロックチェーンについてまとめていくぞい!

ブロックチェーンの解説、まとめ

ブロックチェーンのまとめ

・1991年Stuart HaberとW. Scott Stornettaという研究者によって編み出され2008年にサトシ・ナカモトによってビットコインでの運用に至った
・ブロックチェーンとは、取引データの運用技術で「非中央集権型システム」であり「改ざん不可能な分散型台帳」と言われている
・ブロックチェーン自体のセキュリティ面は強いがマイニングの過程で51%攻撃のような事件が起こりうる

いかがでしたでしょうか。
ブロックチェーンという言葉自体は暗号資産に関わっているとよく耳にするものだったと思いますが、意外と詳しい内容はわからずじまいという方もいらっしゃったのではないでしょうか?
本記事ではブロックチェーンについてまとめていますが、他にも様々なシステムやテクノロジーが存在します。
そういった記事もこれからどんどん増やしていきますので気になった方はぜひご覧いただければと思います。

タイトルとURLをコピーしました