ブロックチェーンの仕組みと知っておきたい基礎知識

ビットコインなどの仮想通貨の基幹技術として知られるブロックチェーンは、「インターネット以来の発明」といわれ、金融領域から非金融領域にまで活用の幅が広がろうとしています。そこで今回はブロックチェーンの仕組みと、仕組みを理解するために必要な基礎知識について解説します。

ブロックチェーンの基礎知識

まずはブロックチェーンとは何かということから説明します。

ブロックチェーンとは

ブロックチェーンとは、ネットワークに接続されたノード(コンピュータ)が取引情報を共有し、相互に監視することで、透明性を確保しながらデータの改ざんを防ぐことができる「分散型台帳技術」の一種です。

ブロックチェーンでは、ネットワーク内で発生した一定の時間・一定の量の取引データ(トランザクション)を「ブロック」と呼ばれる箱に格納してまとめます。そして生成したブロックを、その時点で存在する最も新しいブロックのうしろにつなげて蓄積していきます。その結果、ブロック同士が時系列順にチェーン(鎖)のように連結していくこととなり、このようなデータ構造からブロックチェーンと呼ばれています。

仮想通貨とブロックチェーンの関係

ブロックチェーンはもともと仮想通貨であるビットコインの基幹技術として考え出されたものです。基本的な仕組みはサトシ・ナカモト(Satoshi Nakamoto) と名乗る人物が投稿した論文に記載され、その内容に基づいて2009年にビットコインが運用開始されました。
ビットコインの場合で表現するなら、ビットコインを送付する際の所有権移転の履歴がトランザクション、そのトランザクションを記録・保管・共有する「公開分散元帳」がブロックチェーンです。

ブロックチェーンの仕組み

ブロックチェーンはなぜ改ざんが難しいのか、また仮想通貨の基幹技術として成り立っているのか、その仕組みについても見てみましょう。

まず、ブロックチェーンの各ブロックには、取引データのほかに「ハッシュ値」と「ナンス値」が含まれています。

ハッシュ値は、ハッシュ関数というアルゴリズムによって元のデータから求められる、一方向にしか変換できない不規則な文字列です。あるデータからは同じハッシュ値しか得られません。そして新しいブロックには必ず前のブロックの取引データがハッシュ値として記録されています。

そのため、もしも誰かが過去のある時点に生成したブロック内の取引データを改ざんすると、そのブロックから求められるハッシュ値は正規のものとは異なります。それをごまかすには後続する全ブロックのハッシュ値を変更しなければなりません。そのような作業は事実上不可能に近いので、ブロックチェーンは改ざん耐性に優れた構造を持つとされています。

また、ナンス値は一度だけ使われる数字です。ブロックチェーンでは使い捨ての32ビットのナンス値に応じて、後続するブロックで使用するハッシュ値が変化します。

ところで、ビットコインには「取引の承認」と「ビットコインの新規発行」という2つの役割を担うマイニング(発掘)という行為が設定されています。マイニングを行う人=マイナーは、コンピュータを使ってハッシュ関数にランダムなナンスを代入する複雑で総当りによる計算を繰り返して、特定の条件を満たす正しいナンス値を見つけ出します。正しいナンスを最初に探し当てたマイナーは新しいブロックをブロックチェーンに書き込む権利が得られ、取引の承認を行い、報酬として一定額のビットコインを得ます。

この報酬によってビットコインは新規発行されます。ビットコインは国家や企業が管理しない通貨なので、このような分散型ネットワークを利用した仕組みが採用されています。

ブロックチェーンの種類

ブロックチェーンには、管理者やトランザクションの公開範囲などが異なる3つの種類があります。それぞれの特徴は次の通りです。

パブリック型ブロックチェーン

管理者が存在せず、取引データが公開されているブロックチェーンです。ビットコインなどの仮想通貨を支えるシステムはパブリック型ブロックチェーンに分類されます。

プライベート型ブロックチェーン

特定の組織によって管理されるブロックチェーンです。取引データは非公開で、管理者による編集や削除が可能です。金融機関における証券取引などのサービスにプライベート型ブロックチェーンが活用されます。

コンソーシアム型ブロックチェーン

複数の組織によって共同で管理されるブロックチェーンです。取引データはブロックチェーンの参加者だけに公開されます。パブリック型とプライベート型の利点を兼ね備えていることが特徴です。

これらの特徴以外にも、マイニングの必要性やデータ処理のスピード、システムのセキュリティ性などに違いがあります。ブロックチェーンの種類ごとの特徴や、より詳しい違いについては下記の記事を参考にしてください。

ブロックチェーンの種類とそれぞれの特徴

ブロックチェーンのメリット・デメリット

ブロックチェーンのメリットは、記録されたデータの正しさを、ブロックチェーンの参加者が確認できることです。この特徴により、特定の管理者がいない状態でもデータの信頼性を確保できます。

一方、ブロックチェーンのデメリットはデータの修正が難しいことや、データが増えると処理に時間がかかってしまうことなどです。

ブロックチェーンのメリットやデメリットについてさらに詳しく知りたい方は、下記の記事を参考にしてください。

ブロックチェーンのメリット・デメリット

ブロックチェーンに使われている技術

ブロックチェーンにはP2P、PoW、コンセンサスアルゴリズムなどの技術が複合的に組み合わせられています。

P2P

個々のコンピュータなどの端末(ノード)を対等かつ直接つなぐことで、全体としてネットワークを構築する通信方式をP2P(ピアツーピア)型通信と呼びます。これに対し、個々の端末(クライアント)が中央のサーバを経由してつながる仕組みの通信がクライアント・サーバ型通信です。
パブリックブロックチェーンは中央にサーバを置かず、管理者も存在しないP2P技術を利用することでデータを分散しています。そのため特定の端末が攻撃を受けたり故障したりしても支障なくデータを保持することができます。

PoW

マイニングによって必要な計算を成功させた人がそのデータを承認し、新しいブロックをブロックチェーンに書き込むという仕組みを支えているのがPoW(プルーフオブワーク)です。

コンセンサスアルゴリズム

PoWは、P2Pネットワークで採用されているコンセンサスアルゴリズムの一つです。コンセンサスアルゴリズムは、中央集権的な管理者が存在しないブロックチェーンで、ネットワーク上の参加者全員が台帳のデータを共有し、全体の合意形成を行うための仕組みです。

スマートコントラクト

スマートコントラクトは、契約の締結や履行をブロックチェーン上で自動的に実行する仕組みです。仮想通貨の一つであるイーサリアムなどで実装されています。スマートコントラクトによる履行履歴はブロックチェーンに記述され、契約の透明性が確保されます。

ブロックチェーンとIoTの関係

さまざまな機器をインターネットに接続し利便性を高めるIoTにも、ブロックチェーンの技術が活用され始めています。

ブロックチェーンの仕組みをIoTに応用すると、データ処理を各端末に分散させ、サーバに負荷が集中することを防げます。また、IoT端末で扱うデータのセキュリティ性を高め、安全に利用できるようになることも、ブロックチェーンを活用するメリットです。

ブロックチェーンとIoTを組み合わせることで得られる効果や、ブロックチェーンの技術をIoTに活用する具体的な事例については、下記の記事を参考にしてください。

ブロックチェーンで広がるIoTの可能性

以上、ブロックチェーンの仕組みを中心に、ブロックチェーンに関して知っておきたい基礎知識を紹介しました。

ブロックチェーンは、仮想通貨や金融機関の取引だけでなく、さまざまなビジネスで活用されています。食品業界における産地の追跡や、デジタルコンテンツの不正コピー防止などが、ブロックチェーンの主な活用例です。

ブロックチェーンが活用されている分野や、各分野における詳しい活用方法については下記の記事でご覧ください。

ブロックチェーンでできることとは? 活用事例を紹介