ブロックチェーンに隠れた3つの課題とは?

DXの有望技術として期待されるブロックチェーン。分散型台帳とも呼ばれるこの技術が普及するためには克服すべき3つの課題「スケーラビリティ」「ファイナリティ」「セキュリティ」があります。

本記事では、これら3つの課題の概要と解決策を解説します。

    ブロックチェーンのおさらい

    ブロックチェーンの課題について解説する前に、まずはブロックチェーンとはそもそもどのような技術であるのかについて簡単におさらいしていきましょう。

    ブロックチェーン=管理者不要でデータを安全に記録・共有する技術

    出典:shutterstock

    ブロックチェーンは、サトシ・ナカモトと名乗る人物が2008年に発表した暗号資産「ビットコイン」の中核技術として誕生しました。取引データを暗号技術によってブロックという単位にまとめ、それらを鎖のようにつなげることで正確な取引履歴を維持しようとする技術です。

    ブロックチェーンはデータベースの一種ですが、そのデータ管理方法は従来のデータベースとは大きく異なります。従来の中央集権的なデータベースでは、全てのデータが中央のサーバーに保存されるため、サーバー障害やハッキングに弱いという課題がありました。一方、ブロックチェーンは各ノード(ネットワークに参加するデバイスやコンピュータ)がデータのコピーを持ち、分散して保存します。そのため、サーバー障害が起こりにくく、ハッキングにも強いシステムといえます。

    また、ブロックチェーンでは、ハッシュ値と呼ばれる関数によっても高いセキュリティ性能を実現しています。ハッシュ値とは、あるデータをハッシュ関数というアルゴリズムによって変換された不規則な文字列のことで、データが少しでも変わると全く異なるハッシュ値が生成されます。新しいブロックを生成する際には必ず前のブロックのハッシュ値が記録されるため、誰かが改ざんを試みると、それ以降のブロックのハッシュ値を全て再計算する必要があり、改ざんが非常に困難な仕組みとなっています。

    さらに、ブロックチェーンでは、マイニングという作業を通じて、取引情報のチェックと承認を行う仕組み(コンセンサスアルゴリズム)を持っています。マイニングとは、コンピュータを使ってハッシュ関数にランダムな値を代入する計算を繰り返し、ある特定の条件を満たす正しい値(ナンス)を見つけ出す作業のことで、最初にマイニングに成功した人に新しいブロックを追加する権利が与えられます。

    このように、ブロックチェーンは分散管理、ハッシュ値、マイニングなどの技術を組み合わせることで、データの改ざんや消失に対する高い耐性を持ち、管理者不在でもデータが共有できる仕組みを実現しています。

    詳しくは以下の記事でも解説しています。

    高まるブロックチェーン市場への期待

    ブロックチェーンは、「AI」「IoT」と並んで、DX(デジタルトランスフォーメーション)分野で期待されている有望技術の一つです。DXとは、「情報テクノロジーの力を用いて既存産業の仕組みや構造を変革すること、あるいはその手段」のことで、産業全体のバリューチェーンやサプライチェーンにおけるイノベーションから開発企業におけるエンジニアの就労環境改善や、社内コミュニケーションツールの変更といった自社の変革まで大小問わずにビジネス全体を変革する可能性を秘めています。

    元々はFintech(フィンテック、金融領域におけるDX)の一分野である仮想通貨の実現を可能にした一要素技術、つまりビットコインを支えるだけの存在に過ぎなかったブロックチェーンですが、近年、データの透明性や耐障害性、分散的な組織構造などが注目され、あらゆる既存産業・ビジネスで応用できる可能性を秘めた技術であることが明らかになってきました

    海外では行政や地域福祉レベルでもブロックチェーンが実用化されるケースがあり、国内でも大手企業を中心に、実証実験や一部サービスへの導入が始まっています。欧州での規制や度重なる企業の不祥事などにより、データの正確性や業務の自動化が求められる今後のビジネスでは、ブロックチェーンの需要はさらに拡大していくことでしょう。

    そんなブロックチェーンも万能薬ではない!?

    上述のように、ブロックチェーンは様々な社会課題を解決する可能性を秘めた素晴らしい技術です。しかし、その割には私達が普段触れているサービスに適用されている事例は多くはなく、社会へ浸透しているとはいえない状況です。

    これは一体なぜなのでしょうか。もちろん既存のデータベースから乗り換えるだけのメリットを感じない、新たなシステムを導入するだけの資金がないといったビジネス的な理由もあるでしょう。

    しかし、それ以前にブロックチェーンには技術的な課題が大きく分けて三つ存在します。いずれの課題も単純に対策をすれば良いというものではなく、メリットと引き換えに生じているものもあるため、その理由や背景を知ることはブロックチェーンを語る上で欠かせないでしょう。

    ここからはそれぞれの課題について、概要と解決策を紹介していきます。

    ブロックチェーンの課題①:スケーラビリティ

    point of sale scalability
    出典:National Computer Corp

    課題の概要

    ブロックチェーンの課題の一つ目は、「スケーラビリティ」です。スケーラビリティとは、「トランザクションの処理量の拡張性」つまり、どれだけ多くの取引記録を同時に処理できるかの限界値のことを指します。

    ブロックチェーンは、従来のデータベースよりもスケーラビリティが低くならざるを得ないという課題を抱えています。これはビットコインやイーサリアム、リップルといった各ネットワークごとに予め定められた「コンセンサスアルゴリズム」と呼ばれる合意形成のルールに基づいて、一定量のトランザクション(取引データ)群をブロック化することで取引記録を保存する、というブロックチェーンの性質によるものです。

    したがって、ある単位時間にどの程度の量のトランザクションをブロック化して処理できるかは、そのルールであるコンセンサスアルゴリズムに依存することになります。例えば、ビットコインでは「PoW(Proof of Work、プルーフオブワーク)」というコンセンサスアルゴリズムを採用していますが、これはネットワーク参加者(=「ノード」)に、自身のコンピュータのマシンパワーを利用した計算問題を解くことがブロック生成の条件となっており、ビットコインネットワークにおけるスケーラビリティはノードのマシンパワーに依存することになります。

    ビットコインの場合、新しいブロックが平均して10分に1回生成され、各ブロックでは1MBのデータしか処理がされません。ブロックチェーンには、未処理のトランザクションが待機しておくメモプールという空間が存在しますが、処理するトランザクションが増えて記録可能な取引の上限を超過してしまうと、メモプールに大量のトランザクションが留まってしまいます。こうなると、次回以降のブロック生成時まで放置されて取引が完了しなくなってしまいます。このような取引増加に伴ってネットワーク処理速度が低下することをスケーラビリティ問題といいます。

    また、マイナーと呼ばれるトランザクションの承認者は、ガス代(手数料)という経済的なインセンティブによって動いているため、手数料が多いものから処理を行います。すると、自らの取引を優先的にブロックに記録させるために相場より多くの手数料を支払うユーザーが現れ、手数料のインフレが起きてしまうという副次的な弊害もあります。

    一般に、スケーラビリティは「tps(transaction per second、1秒あたりのトランザクション処理量)」で定義することができますが、実際に、代表的なブロックチェーンネットワークは、次のように不十分なスケーラビリティだと言われています。

    • 一般的なクレジットカード:数万tps
    • ビットコイン(コンセンサスアルゴリズムがPoW):3~7tps
    • イーサリアム(コンセンサスアルゴリズムがPoS):15~25tps
    • コンソーシアム型ブロックチェーンネットワーク(PoAコンセンサスアルゴリズム):数千tps

    このように、ブロックチェーンは、ープンで分散的なデータベースとして期待を集めている一方で、ネットワーク参加者が増えるとスケーラビリティが担保できなくなるという課題を抱えています。

    課題の解決策

    この課題に対しては様々なアプローチが試みられています。最も安直な最善策は、メインチェーンのブロック容量と生成スピードの制約を緩和させることです。

    このアプローチでは、ブロックの容量を増やしたり、生成までの間隔を短縮することで、一回のトランザクションで処理できるデータ量を増加させて待機のトランザクションを減らすことができます。しかし、これによってブロックチェーン本来の分散性が低下する可能性や、システム自体の安定性やセキュリティに影響を及ぼす可能性もあります。

    また、金融領域では、「ライトニングネットワーク(Lightning Network)」という新しい概念に注目が集まっています。ライトニングネットワークは、小規模ながら高頻度で行われる取引をオフチェーン(ブロックチェーンの外部)で処理するペイメントチャネルという仕組みによって、最初と最後の取引だけをブロックチェーンに反映できるネットワークのことです。

    ペイメントチャネルでは、複数の秘密鍵でビットコインを管理するマルチシグという技術を背景にオフチェーン取引が可能になるため、最初の取引でビットコインを送金し、その金額内で自由に送金ができます。したがって、ブロックチェーンのように途中の取引も全て検証する必要がなく、中間の処理を省くことでトレーサビリティ問題に対応しています。

    このようなアプローチにより、決済の迅速化や高いトランザクション容量の実現が期待されています。たとえば、大手暗号資産取引所のバイナンスはビットコインの取引をライトニングネットワークで実行できるようになったと発表しています。

    Binance Completes Integration of Bitcoin (BTC) on Lightning Network, Opens Deposits and Withdrawals

    しかし、非金融領域においてはいまだ効果的な解決策は確立していません。こうした原理的な課題は、ブロックチェーンが社会基盤となれるかどうかを左右する、重要な論点だと言えるでしょう。

    ブロックチェーンの課題②:ファイナリティ

    出典:ぱくたそ

    課題の概要

    ブロックチェーン、とくにその代表格であるビットコインの課題として知られるのが、「ファイナリティ(finality)」の問題です。ファイナリティは決済にまつわる概念で、日本銀行によって、次のように説明されています。

    • (ファイナリティーのある決済とは)「それによって期待どおりの金額が確実に手に入るような決済」のことを言います。
    • 具体的には、まず、用いられる決済手段について(1)受け取ったおかねが後になって紙くずになったり消えてしまったりしない、また決済方法について(2)行われた決済が後から絶対に取り消されない――そういう決済が「ファイナリティーのある決済」と呼ばれます。

    ビットコインの仕組みでは、このファイナリティを十分に担保できないとして、特に金融領域における活用が懸念視されることがあります。

    「スケーラビリティ」の項目でも触れたように、ビットコインではPoWと呼ばれる、ノードのマシンパワーを利用した計算競争によるコンセンサスアルゴリズムが採用されていますが、実はこのPoWがファイナリティの担保を邪魔しているのです。そもそも、PoWは、次のような仕組みです。

    出典:Web3総合研究所
    1. ある時、あるノードが、トランザクションプールから一定量(1MB)のトランザクションを任意でとりまとめて、ブロック化を開始する。
    2. ブロック化を行うために、ノードはビットコインネットワークから与えられた計算課題を解くことを試みる。
    3. 同様に、世界同時多発的に複数のノードが計算を行い、計算に成功したノードが生成したブロックが他のノードに伝播されていく。
    4. 伝播された先のノードがブロック生成に用いた計算の「暗算」を行い、計算が正しいと認められたら、ブロック化に成功する。

    ここで、ある問題が起こります。それは、ある一時点でネットワーク内に複数のノードがつくった異なる複数のブロックが同時に存在し、さらにそれらの異なるブロックの中には同じトランザクションが入っているという事象です。

    PoWでは、複数のノードによる計算競争の結果を一旦すべて正規のブロックとして認めてしまうことになります。すると、ある取引記録が正しいかどうかを確認するにあたって、複数の異なるブロックのうちどのブロックを正しいものとして参照すべきかわからなくなってしまいます

    これが、ビットコインにおける「フォーク(チェーンの分岐)」と呼ばれる問題です。ブロックチェーンの課題に立ち返ってみると、このフォークの可能性が、ビットコイン決済におけるファイナリティの担保を邪魔していることがみえてきます。

    PoWを原理として採用するビットコインでは、常に同時多発的に複数のブロックが生成され、その度ごとにチェーンの分岐(フォーク)が発生する可能性があるため、取引内容が覆る可能性を完全にゼロとすることができず、ファイナリティを担保することができないのです。

    実は、ビットコインではチェーンの分岐が問題にならないように、PoWを補完するもう一つのコンセンサスアルゴリズムである「ナカモト・コンセンサス」を採用しています。ナカモト・コンセンサスは、複数のブロックが同時生成された場合、ブロックの集積が最も多い(つまり長い)チェーンに含まれるブロックを正規のものとみなすという考え方です。一見、この考え方によって、ファイナリティが担保されなくもなさそうではあります。しかし、残念ながら事態はそう簡単ではありません。

    ナカモト・コンセンサスはあくまで合意形成に至る考え方の一つであって、実際には、運営側による仕様の変更など大きく賛否の分かれる問題が生じた際、全員での合意形成には至らず、複数の異なるチェーンを正統とみなす派閥に分派してしまうことがあります(ちなみに、こうした運営側による仕様変更等でチェーンがはっきりと分派してしまうことを「ハードフォーク」と呼びます)。

    実際に2017年には、ビットコイン(BTC)からのハードフォークによってビットコインキャッシュ(BCH)が生まれました。ハードフォークの理由は、スケーラビリティ問題の解決を目指した仕様変更でブロックの容量を8MBに拡張するというものでした。

    こうしたハードフォークはハッカーによる「リプレイアタック」の対象になります。リプレイアタックとは、ある台帳上(旧台帳)で有効なトランザクションを他の台帳上(新台帳)でも実行することにより、送金者の意図しない台帳上で資産移動させてしまうことです。

    これは「旧仕様」と「新仕様」のブロックチェーンがどちらも同じ「秘密鍵」を用いていることが原因です。仮想通貨の記録の管理に用いるキーを変えずに新通貨を作るため、知らぬ間にデータがコピーされて所有権を奪われてしまいます。

    そういった意味で、PoWを採用しているビットコインにおいて、「信用」を扱う決済領域で最も重視されるファイナリティを完全に担保することは原理的に困難なのです。

    課題の解決策

    実は、このファイナリティの問題は、ビットコインに限った課題ではなく、イーサリアムなど他のブロックチェーンネットワークでも同様に抱えている課題です。しかし、全てのブロックチェーンでファイナリティの問題が生じるわけではありません。

    ファイナリティの担保が難しいのは、PoWやPoSといった不特定多数の参加者での合意形成に至るためのコンセンサスアルゴリズムを採用しているネットワーク、つまり、「パブリックブロックチェーン」に限った話です。

    そのため、ファイナリティを必ず担保する必要のある金融機関では、「コンソーシアム型」や「プライベート型」と呼ばれる参加者を限定したブロックチェーンネットワークを採用することで、この問題に対応するケースがあります。

    「コンソーシアム型」や「プライベート型」のブロックチェーンでは、ネットワーク内に決められた数の人しか参加を許可していません。多くの場合、参加するためには管理者による本人確認等があり、簡単には参加できない仕様になっています。

    このようなチェーンにおいては、ファイナリティが実現しており、主にエンタープライズ向けのシステムでビジネス採用されています。

    ブロックチェーンの課題③:セキュリティ

    出典:Pexels

    課題の概要

    ブロックチェーンが原理的に抱える課題の3つ目が、「セキュリティ」の問題です。これには驚かれる方も少なくないかもしれません。冒頭でもブロックチェーンは「データに対する耐改ざん性が高い」と説明したばかりです。

    これは、トランザクションと呼ばれる個々のデータの塊のそれぞれに鍵がかけられている(公開鍵暗号方式)ことに加え、トランザクションの塊であるブロックの生成時にもコンセンサスアルゴリズムと呼ばれる合意形成のルールが適用されることで、データを書き換えることのハードルが非常に高くなっていることを意味しています。

    こうした背景から、「ブロックチェーン=セキュリティを高める技術」であると考えている方も少なくありません。しかし、残念ながら、ブロックチェーンはセキュリティの万能薬というわけではないのです。

    ブロックチェーンは「強いAI」というわけではなく、あくまで人間が稼働させる一つのシステムです。そのため、ブロックチェーンが社会実装される過程のヒューマンエラーによって(コーディングのバグ等)、あるいは組織的な恣意性によって適切に効果が発揮されず、結果としてセキュリティが脅かされることも十分にありえます。

    こうした事情からブロックチェーン、とりわけビットコインにつきまとうセキュリティ課題として、次の2つの問題が存在しています。

    • 51%問題
    • 秘密鍵流出問題

    51%問題とは、「ある特定のノード(ネットワークの参加者)が、ネットワーク内のマシンパワーの総量を超えるパワーでマイニングを行うと、そのノードの恣意性にネットワーク全体が左右される」という問題のことで、平たく言えば、「ネットワークの乗っ取り(牛耳り)」問題といったところでしょうか。

    先ほど説明したように、ビットコインではPoWおよびナカモト・コンセンサスと呼ばれるコンセンサスアルゴリズムのもと、複数のノードによる計算競争の結果、最も長いチェーンに含まれたブロックを正統なデータとしてみなす、という仕組みがとられています。

    そして、この計算のスピードは、計算を行うノードのマシンパワーに依存しています。したがって、この仕組みを逆手にとると、他のどのノードよりも強いマシンパワーを手に入れ、その結果、他のどのノードよりも速いスピードで計算を行うことができれば、そのノードは自分にとって有利な、恣意的な取引記録を正統にすることができます。これが、51%問題と呼ばれるセキュリティ上の課題です。

    もう一つのセキュリティ課題が、秘密鍵流出問題です。これは、いわゆる「なりすまし」攻撃で、各ノードが保有するアカウントに付与された「秘密鍵」を盗まれることで起こります

    ブロックチェーンの仕組みでは、前述した「ブロック化」の過程でトランザクションがプールから取り出される際に、「秘密鍵暗号方式」と呼ばれる方法でトランザクションへの「署名(秘密鍵で暗号化する)」が行われることで、トランザクション自体のセキュリティが担保されています。

    通常、この秘密鍵は、各アカウントごとに一つだけ付与されるもので、この鍵を使うことでアカウントに紐づいた様々な権限を利用することができます。そのため、この鍵自体が盗まれてしまうと、個人アカウント内の権限を第三者が悪用できてしまうことになります。これが、秘密鍵流出問題です。

    課題の解決策

    51%問題と秘密鍵流出問題は、それぞれに、解決策が異なります。順に、説明していきます。

    51%問題への対応

    51%問題の対策方針は、コンセンサスアルゴリズムを変更することです。先ほど説明したように、51%問題は原理的なセキュリティリスクであり、PoWおよびナカモト・コンセンサスが合意形成のルールである以上、完全な対策は不可能です。

    もちろん、ネットワークの規模が大きくなればなるほど、ネットワーク総量の過半数を占めるマシンパワーを用意することは難しくなっていくので、51%問題を利用した攻撃のハードルも上がってはいきます。しかし、あくまで難易度が上がるだけの話であるため、リスクがなくなるわけではありません。したがって、51%問題のリスクをなくすためには、ルールそのものを変更する必要があるのです。

    これは、ビットコイン以外のブロックチェーンネットワークにおいて実際に行われていることで、例えば、イーサリアムで採用されている「PoS(Proof of Stake)」は、51%攻撃のリスクを限りなく低くすることを目的に定められたルールとされています。

    PoSは、「ネイティブ通貨の保有量に比例して、新たにブロックを生成・承認する権利を得ることができるようになる仕組み」であるため、あるノードが51%攻撃を行うためには、ネットワーク全体の過半数のコインを獲得しなければならず、これは過半数のマシンパワーを一時的に利用することと比べて、はるかに難易度が上がります。

    また、コンセンサスアルゴリズムだけではなく、ネットワーク参加者自体を許可制にすることも、51%問題に対する一つの対策方法です。先述した「コンソーシアム型」と呼ばれるブロックチェーンネットワークでは、「PoA(Proof of Autority)」というコンセンサスアルゴリズムのもと、閉じられたネットワーク内で一部のノードに合意形成の権限を与えるという形をとっています。

    秘密鍵流出問題への対応

    秘密鍵流出問題への対応策の一つとされているのが、マルチシグです。マルチシグとは、トランザクションの署名に複数の秘密鍵を必要とする技術のことで、マルチシグを利用する際には企業の役員陣で鍵を一つずつ持ち合うなどの対応がとられます。

    また、マルチシグは秘密鍵流出問題へのリスクヘッジ方法であると同時に、 一つの秘密鍵で署名を行う通常のシングルシグに比べてセキュリティレベルも高くなることから、取引所やマルチシグウォレットなどで採用されています

    ただし、上述のコインチェック事件のように、個人レベルでマルチシグを利用していたとしても、取引所そのもののセキュリティが破られてしまった場合には被害を食い止めることはできません。セキュリティへの攻撃は複数階層に対して行われうるものであることを理解して、単一の技術のみに頼るのではなく、本質的な対応をとるように心がけましょう。

    まとめ

    ブロックチェーンを自社ビジネスに導入するには、本記事で紹介した3つの課題を無視することはできません。イメージ先行で場当たり的なDXではかえって様々なトラブルを誘発させかねません。そのため、まずはブロックチェーンの長所だけではなく短所も理解したうえで、適用先やユースケースの洗い出しをおこなうのが良いでしょう。

    トレードログ株式会社では、非金融領域におけるビジネスへのブロックチェーン導入を支援しています。新規事業のアイデア創出から現状のビジネス課題の解決に至るまで、包括的な支援が可能です。少しでもお悩みやご関心がございましたら、是非オンライン上で30〜60分程度の面談をさせていただければと思いますので、お問い合わせください。