ブロックチェーンとは?仕組みやメリットをわかりやすく解説!
今回は、「ブロックチェーン」について解説します!
「AI」「IoT」「クラウド」などと並び、今話題の技術の一つですね!
今回は仕組みもしっかりと解説できたらと思います。
それでは気合を入れて、解説していきます。
ブロックチェーンとは?
ブロックチェーンの定義
ここでは、ブロックチェーン協会におけるブロックチェーンの定義を引用します。
定義1
ビザンチン障害を含む不特定多数のノードを用い、時間の経過とともにその時点の合意が覆る確率が0へ収束するプロトコル、またはその実装をブロックチェーンと呼ぶ。定義2
電子署名とハッシュポインタを使用し改竄検出が容易なデータ構造を持ち、且つ、当該データをネットワーク上に分散する多数のノードに保持させることで、高可用性及びデータ同一性等を実現する技術を広義のブロックチェーンと呼ぶ。引用元:日本ブロックチェーン協会
少し難しい言葉が使われていて、分かりにくいと感じるかもしれません。
ざっくり言えば、定義1は「悪さをする奴がいても正常に機能する仕組み」のこと。
定義2は「改ざんしたのがすぐばれるデータ構造で管理&みんなで管理する技術」のことです。
ちょっと砕きすぎた感がありますが、定義自体はこういうことです。
結局ブロックチェーンって何?
結局、ブロックチェーンとは「データの管理方法の技術」です。それも、
「信頼できる」「同じデータを」「みんなで共有し管理する」
という技術です。
よく「分散型台帳」とも言われたりします。
もう一度言いますが、結局は「データの管理方法の技術」なのです。
ブロックチェーンの歴史
ブロックチェーンとは、仮想通貨「ビットコイン」を実現させるために生まれた技術です。
2008年に「サトシ・ナカモト」という正体不明の人物が書いた論文がきっかけとなり、生まれました。
これが、仮想通貨の誕生と、それに用いられたブロックチェーンという技術の誕生でした。
その内容は、仮想通貨ビットコインを実現するための仕組みでした。
その仕組みに使われていた技術が「ブロックチェーン」だったのです。
翌年の2009年には、ビットコインのソフトウェアが発表され、運用が開始されました。
今後、仮想通貨だけでなく、様々な分野に応用されていくことが予想されています。
中央集権型から自律分散型のシステムへ
これまでの、金融システムは「中央集権型」と呼ばれるモデルを採用していました。
これは、「特定のサーバーに取引データをすべて格納する」といった、特定の誰かがデータの管理権をもつ構造のことです。
「クライアントサーバ型のシステム」
これは、いってしまえば「管理者が何でもできちゃう」構造なので、一部では批判の声がありました、
その点で、ブロックチェーン技術は根本的に違う構造をしています。
ブロックチェーン技術に採用されているネットワークの構造は「P2P」(ピアツーピア)と呼ばれます。
「ブロックチェーン(P2P型)のシステム」
この「P2P」には、サーバーとクライアントというような役割の違いや立場の差はなく、だれもが対等な関係にあります。
これが、ブロックチェーン技術が「非中央集権型」「自律分散型」だといわれる理由です。
そうすると、「だれがデータ管理するの?」って話になりますよね。
ブロックチェーンの世界でデータ管理を担うのは、「参加しているみんな」になります。
つまり、「自分たちの取引データを自分たちで管理しよう!」というのがブロックチェーン技術の根本的な考え方なのです。
ブロックの生成とブロックチェーンに連結される流れ
ブロックチェーンは発生した取引をブロック単位で承認し、それをチェーン状に繋げていく技術です。
ここでは、その流れを3STEPに分けて解説します。
ブロックの生成とブロックチェーンに連結する流れ
取引データはすぐにブロックに入れられるのではなく、トランザクションプールと呼ばれる一時保存庫に入れられます。
トランザクションプールにある複数の取引データを使い、新しいブロックが生成されます。
この際に、マイナーによる「マイニング」という処理が行われます。
完成したブロックは、今あるブロックチェーンの一番後ろに繋がれます。
このようにしてブロックチェーンは伸びていき、取引が承認されていきます。
※「ナンス」「マイニング」といった用語が出てきますが、詳しくは「仕組み」の部分で解説しますので、読み進めてください。
では見ていきましょう。
STEP1 取引が発生するとトランザクションプールに入る
まず初めに、「取引が発生したらどうなるのか?」について考えてみます。
発生した取引は、すぐにブロックに入るわけではありません。
一度「トランザクションプール」と呼ばれる、一時保存場所に保存されます
※BTCとはビットコインの略
取引のことを英語で「トランザクション」と呼びますので一緒に覚えておきましょう。
STEP2 複数の取引データを使った新しいブロックが生成される
次は、ブロックの生成です。
ブロックの生成は一定時間に一回というペースで行われます。
その時間間隔はシステムによって様々ですが、ビットコインの場合は10分に一度となります。
ブロックには、先ほどのトランザクションプールから複数の取引データが選ばれて入れられます。
そして、ここで「マイニング」という作業がここで行われます。(マイニングの仕組みは下で詳しく解説します)
この「マイニング」で、魔法の値である「ナンス」を見つけたコンピュータには賞金が与えられ、ナンスはブロックに入れられ梱包されます。
これで新しいブロックが生成されました。
STEP3 新しいブロックがブロックチェーンの最後尾に付け加えられる
最後に、完成したブロックは、すでにできているブロックチェーンの最後尾に付け足されます。
このようにして、複数の取引がブロック単位で承認されていきます。
そして、この一連の流れを一定間隔で繰り返し行うことにより、ブロックチェーンが伸びていくのです。
ブロックチェーンの仕組みと構造
ブロックチェーンのデータ構造は改ざんに強いという特徴を持っています。
その仕組みを深く理解するためには、ブロックチェーンのデータ構造を知り、どのように動作しているのか知る必要があります。
以下の記事では、「なぜ改ざんに強いのか」に焦点を当て、より技術的な話に踏み込んでいきます。
ブロックチェーンの構造や仕組みを理解したい人におすすめです。
ブロックチェーンの特徴やメリット
データの改ざんが非常に困難
ブロックチェーン技術の特徴として、データの改ざんが非常に困難であるということが挙げられます。
これがいま一番注目されている特徴ではないでしょうか。
その理由は二つありました。
一つ目が、「改ざんしたブロックとそれ以降のすべてのブロックについてマイニングを行う必要があるから」です。
これは処理能力の壁が立ちふさがるでしょう。
二つ目が、「自分一人のデータを変えたところで多数決でつぶされるから」です。
これは、過半数の味方をつけるという方法しか勝ち目がないのではないでしょうか。
システムダウンが起きない
ブロックチェーンを利用したシステムは、基本的にシステムダウンを起こしません。
それは、システムが分散的だからです。
つまり、どこか一つのコンピュータが落ちたぐらいでは、かすり傷にもならないということです。
ブロックチェーン(P2P型)のシステム
対するクライアントサーバ型では、中央にあるサーバがダウンしてしまうと、システムが利用不可能な時間が発生します。
サーバクライアント型のシステム
このようにシステムが利用不可能な時間をダウンタイムと呼びます。
ブロックチェーン型のシステムは、ダウンタイムが実質0なので「ゼロダウンタイム」と呼んだりもします。
取引の記録を消すことができない
ブロックチェーンでは、基本的に一度承認された取引データは消すことができません。
これは、いいことでもあり危険なことでもあります。
特定の権力者によってもみ消せないというとらえ方ではよいことのように思えますが、いざとなったときに消せないというとらえ方では危険なにおいがしますね。
ブロックチェーンの問題点
合意形成に時間がかかる
ブロックチェーンは、取引データの承認を行う必要があります。
その際の合意形成のアルゴリズムを「コンセンサスアルゴリズム」と呼びます。
ビットコインのPoWというコンセンサスアルゴリズムでは、一回の承認に10分といった時間がかかるため、送金が遅いという問題点があります。
その点、リップルという仮想通貨は、PoCというコンセンサスアルゴリズムを使い、3秒で送金を終えるといったことが可能になっています。
※「コンセンサスアルゴリズムとは?種類と特徴などを解説!」近日公開
取引データの巨大化
ブロックチェーンの問題点の二つ目が、「取引データの巨大化」です。
ブロックチェーンのブロックは、最大の容量が1MBや8MBといったように決まっていて、それを超えるデータは入り切りません。
取引量に対して十分な容量を確保できなければ、トランザクションプールにどんどん取引データが溜まっていき、手数料の低い取引が一向に承認されないという事態が起こります。
この問題を解決するために、「ハードフォーク」「ソフトフォーク」といったソフトウェアのアップデートを行うことがあります。
※「ソフト/ハードフォークとは?」近日公開
最後に
今回は、今話題の技術「ブロックチェーン」について解説しました。
この記事を書こうと思ったのは、第一に自分がブロックチェーンについて興味を持ったからです。
まだまだ、勉強不足の部分もあると思いますので、「この説明ってどういうこと?」「ここは違うんじゃないか?」等のご意見があれば、ぜひ私のTwitterのほうまでリプライをください。
また、わかりやすかったと思ったらぜひ拡散のほうもよろしくお願いします!
以上「ブロックチェーンとは?仕組みやメリットをわかりやすく解説!」でした!