Twitter Facebook Google+ はてなブックマーク LinkedIn

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

データ構造自体に
優れた改ざん耐性を装備

ブロックチェーンでは、ネットワーク内で発生した取引の記録を「ブロック」と呼ばれる記録の塊に格納します。個々のブロックには取引の記録に加えて、1つ前に生成されたブロックの内容を示すハッシュ値と呼ばれる情報などを格納します※。生成されたブロックが、時系列に沿ってつながっていくデータ構造が、まさにブロックチェーンと呼ばれる理由です。

もし仮に、過去に生成したブロック内の情報を改ざんしようと試みた場合、変更したブロックから算出されるハッシュ値は以前と異なることから、後続するすべてのブロックのハッシュ値も変更しなければならず、そうした変更は事実上困難です。このように、ブロックチェーンは改ざん耐性に優れたデータ構造を有しているのが大きな特徴です。

※ハッシュ値とは
ハッシュ値とはアルゴリズム(ハッシュ計算)により算出された一定量の情報をコンパクトにまとめるデータのこと。情報が少しでも変更されると、計算されるハッシュ値は全く異なるものになります。
ブロックチェーンのデータ構造
ブロックチェーンのデータ構造

ブロックチェーンを支えるさまざまな技術

ブロックチェーンはデータ構造に加えて、データの管理方法にも改ざんを防ぐ仕組みを備えています。「分散型の台帳」と言われますが、ブロックチェーンはネットワーク内で発生した全ての取引を記録する「台帳」としての役割を持ち、ネットワークに参加している全てのユーザーが同一の「台帳」を共有することで、情報の信ぴょう性を確保しています。

そのほか、ブロックチェーンは「P2Pネットワーク」や「コンセンサスアルゴリズム」「スマートコントラクト」「偽造防止・暗号化技術」といった複数の技術の組み合わせで実現されます。

ブロックチェーンを構成する技術
ブロックチェーンを構成する技術

契約の自動化を実現する「スマートコントラクト」

契約行動をプログラム化し、自動的に実行しようとする仕組みが「スマートコントラクト」です。スマートコントラクトはブロックチェーン上で動くエージェント・プログラムで、特定の条件を満たした場合に契約を行うなど、さまざまな業務処理を記述することが可能です(実現性の程度はブロックチェーン基盤によります)。

偽造防止・暗号化技術

ブロックチェーンでは、公開鍵暗号技術により電子署名を用いて相手との安全な取引を実現したり、台帳情報の共有による取引の透明性とプライバシー保護を両立したりしています。

全体の合意形成で正当性を確認する「コンセンサスアルゴリズム」

中央集権的な管理者を持たないブロックチェーンでは、台帳情報をネットワーク上の全員で共有するため、全体の合意形成を行います。そうした合意を行う方法が「コンセンサスアルゴリズム」です。コンセンサスアルゴリズムには、ビットコイン等に用いられるProof of Work(PoW)やHyperledger Fabric等に用いられるByzantine Fault Tolerance(PBFT)など複数の方法があります。

分散型の台帳管理を支えるP2Pネットワーク

ブロックチェーンのデータ管理の役割を担うのが、P2Pネットワークです。P2Pネットワークはクライアント=サーバー型とは異なり、特定のサーバーやクライアントを持たずにノードと呼ばれる各端末が対等に直接通信することで、ユーザー同士の情報共有や決済のやりとりを可能にします。

既存の決済システムのようにサーバー側で情報を集約して管理する場合には、そこが障害時の弱点(単一障害点)となりますが、ブロックチェーンの場合にはユーザー全員が同じ情報を持っているため、複数のノードに障害が発生してもシステムを維持できます。