ブロックチェーンとは、「分散型台帳」とも呼ばれ、データのやり取りの信頼性を確保するための新しい技術です。最近仮想通貨に関するニュースが報じられた際に耳にした方も多いと思います。なにかと話題のブロックチェーンですが、正しく仕組みを理解している人は少ないかもしれません。本格的に活用の場が拡がりつつあるブロックチェーンについて、正しく仕組みを理解しておきましょう。

ITトレンド最終更新日: 20181219

ブロックチェーンの仕組みと応用事例

  • このエントリーをはてなブックマークに追加

ブロックチェーンとは、「分散型台帳」とも呼ばれ、データのやり取りの信頼性を確保するための新しい技術です。最近仮想通貨に関するニュースが報じられた際に耳にした方も多いと思います。なにかと話題のブロックチェーンですが、正しく仕組みを理解している人は少ないかもしれません。本格的に活用の場が拡がりつつあるブロックチェーンについて、正しく仕組みを理解しておきましょう。

ブロックチェーンとは

分散型台帳とも呼ばれるとおり、すべての取引を台帳に記録させ、取引に参加しているすべてのユーザ―が同じ台帳を保持していることを条件に取引の正当性を確認する仕組みです。

すべての取引は時系列順に記録されていくため、紙の台帳と同じように、最新の取引が最後に記録されます。

紙の台帳と同様に最新の取引が最後に記録される紙の台帳と同様に最新の取引が最後に記録される

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

ブロックチェーンの取引は、任意の数ごと(数MB)ごとにまとめられてブロックという単位で保存され、「ブロックチェーン」という名の通り、ブロックは下記のプロセスを経て、過去のブロックとチェーンのようにつながります。

1. 過去の取引に遡って、取引が成立しているか確認する
2. 特定条件に合うように、ひとつ前のブロックの要約(ハッシュ値※)を作る
※ハッシュ化: データを一定の長さの文字列に変換(要約)する技術

過去の取引が成立しているか確認の上ハッシュ値を作る過去の取引が成立しているか確認の上ハッシュ値を作る

上記1、2を満たしていれば、新たなブロックがつなげられます。

ハッシュ値が作られ、新たなブロックがつなげられる条件を満たすと、新たなブロックがつなげられる

各ブロックは、ひとつ前のブロックのハッシュ値を持っているため、途中のブロックを改ざんしようとすると、それ以降のすべてのブロックのハッシュ値との整合性をとらなければなりません。しかし、ブロックのハッシュ値は、特定の条件に当てはまっていなければならず、その条件は世界中のコンピュータが計算して、数分に一度見つかるかどうかの難易度に設定されています。そのため、改ざん者が他のすべてのコンピュータよりも早くブロックのハッシュ値の整合性をとるのは非常に難しく、それがデータを書き換えることができないという担保になっています(このような仕組みのことは「プルーフ・オブ・ワーク」と呼ばれています)。

途中のブロックを改ざんすることは非常に難しい途中のブロックを改ざんすることは非常に難しい

また取引データは取引に参加しているユーザー全員がそれぞれ全てのデータを保持しているため、全員のデータが消失しない限り、取引データが失われることはありません。

取引の参加者1人のデータが消失しても取引データは失われない取引の参加者1人のデータが消失しても取引データは失われない

ブロックチェーンの弱点

上記のように取引情報の改ざんが難しい仕組みになっているブロックチェーンですが、仮に改ざんしようとする者がブロックチェーンのネットワークに参加しているユーザーの過半数以上の計算力を持つと、本来のブロックチェーン側よりも早くハッシュ値の整合性を取ることが可能になり、正常な取引のチェーンとは別に、不正なブロックをつなげたチェーンを作ることができるようになります。

不正なチェーンが正常なチェーンより長くつながっていくと、システム上長いチェーンの方が正しい取引であると判断されてしまうため、取引情報の改ざんが可能になってしまいます(「51%攻撃」と呼ばれます)。

長い方のブロックチェーンが正しいと判断されてしまう長い方のブロックチェーンが正しいと判断されてしまう

ただし実際に上記プロセスを行うには高い計算力を備えるために多くのコストがかかること、仮に成功しても過去の取引の改ざんはできないことなどから攻撃者が得られるメリットも限定的であるために、51%攻撃が起こる可能性は低いと言われています。

また、取引が成立するまでに時間がかかることが挙げられます。
ブロックの接続(承認)は約10分間隔、自分の取引の後に数個のブロックの接続(承認)があると信頼性が担保されると言われるので、取引成立までに約数十分を必要とする計算になります。

自分の後に数個のブロックがあると信頼性が担保される自分の後に数個のブロックがあると信頼性が担保される

ブロックチェーン=分散データベースではない

ブロックチェーンは、分散してデータが保存されるため、分散データベースのように見えますが、分散台帳とも呼ばれるように、性質が若干異なります。ブロックチェーンのデータ管理は、前述の説明の通り、データをブロックにまとめて、時系列的に末尾につなげていく形で行います。そのため、現在のデータベースと異なり、ランダム・アクセス(任意の条件に当てはまるデータを検索すること)に対する性能はあまり高くありません。

分散データベースとブロックチェーンの違い分散データベース(左)とブロックチェーン(右)の違い

ブロックチェーンの特徴と活用事例

ブロックチェーンの特徴として、
・データが分散化されるためシステムトラブルに強い
・データの改ざんに強い
・変更履歴が自動的に残され、ユーザ全体で共有されるという透明性
が挙げられます。

上記のいずれかの特徴を活かせる分野において、ブロックチェーンを採用するほうが良いです。仮想通貨以外に、ブロックチェーンを活用することはスマートコントラクトと呼ばれます。現在では、スマートコントラクト用のブロックチェーンプラットフォームも登場しています。

下記に、ブロックチェーンの特性を活かしたサービスの事例についてご紹介します。

1.食品流通のトレーサビリティ(追跡可能性)

「変更履歴が自動的に残されること」「データの改竄が行われにくいこと」を活かして、食品業界等の流通経路に重要な意味を持つ分野において活用が始まっています。

例えば野菜があらかじめ定められた農法で生産されているかどうかを証明にするために、農産物の植え付け、収穫、肥料や農薬の使用等の各工程を、ブロックに時系列順に記録し管理する取組みが行われています。
取り組みの対象を輸送から加工過程、販売・提供等までの工程まで広げ、すべてブロックチェーンに記録・管理する仕組みを構築することによるトレーサビリティシステムの確立が期待されています。

農作物の生産〜消費までを取引記録としてブロックチェーン化農作物の生産〜消費までを取引記録としてブロックチェーン化

2.災害時の安否確認サービス

データが分散的に保存され、システムダウンに対して耐性があることを活かして、災害時の安否確認サービスへの活用が始まっています。ユーザが安否情報を入力すると、時系列順にブロックに記録されていき、最新の情報を参照することで、そのユーザの安否を確認することができます。

安否情報を時系列順にブロックへ記録安否情報を時系列順にブロックへ記録

3.電子カルテ共有サービス

電子カルテを、複数の病院間で共有するシステムが考案されています。
これまで医療機関ごとに分散されていたユーザの病歴、服用している薬などのデータをクラウド上に格納しておき、そのアクセス許可をブロックチェーンを利用して、管理・記録します。

従来、セキュアなアクセスコントロールを行う場合、その構築・維持に多くのコストがかかりましたが、ブロックチェーンであれば全体で管理する仕組みが最初から備わっているため、従来の方法よりもコストを抑えた構築・維持が可能になっています。

カルテ閲覧者の権限付与・閲覧・編集履歴を記録カルテ閲覧者の権限付与・閲覧・編集履歴を記録

まとめ

上記のとおり、今後ブロックチェーンを活用したサービスがいろいろと登場してくると見込まれますが、ブロックチェーンの安全性、信頼性を理解した上でサービスを利用すれば、より安心して、適切にサービスを利用することができると思います。聞き慣れない言葉や技術は敬遠しがちですが、仕組みを正しく理解して、有用と思われるサービスを見極めていくことが、この時代に求められていると思います。

ライタープロフィール 合同会社 4D Pocket
石郷祐介

大学卒業後、公設研究機関勤務を経て、「情報科学芸術大学院大学[IAMAS]」に入学。
専門学校講師を経て、企業の研究開発をコンセプトから開発まで支援する「合同会社4D Pocket」代表、エンジニアを養成するフリースクール「一般社団法人HOPTER TECH SCHOOL」代表理事、「名古屋文理大学」及び「名古屋造形大学」非常勤講師。

記事を
シェア