ブロックチェーンのセキュリティリスクとは?次世代の社会基盤が抱える問題を解説!

Web3.0は、その分散型の特性などから近年ますます注目を集めています。特に、Web3.0の基盤として期待されているブロックチェーンは、金融や供給チェーンなどの様々な業界で大きな変革をもたらす可能性を秘めています。しかし、この革新的な技術にもセキュリティ上のリスクが潜んでいます。

本記事では、そんな次世代技術であるブロックチェーンのセキュリティ上の課題について詳しく解説していきます。

  1. ブロックチェーンの重要性とセキュリティ
  2. ブロックチェーンのセキュリティリスク①:51%攻撃
  3. ブロックチェーンのセキュリティリスク②:秘密鍵の流出
  4. まとめ:ブロックチェーンは適切な運用でセキュリティ対策が可能

ブロックチェーンの重要性とセキュリティ

ブロックチェーンとは?

出典:shutterstock

ブロックチェーンは、2008年にサトシ・ナカモトと呼ばれる謎の人物によって提唱された暗号資産「ビットコイン」の中核技術として誕生しました。

ブロックチェーンの定義には様々なものがありますが、噛み砕いていうと「取引データを暗号技術によってブロックという単位でまとめ、それらを1本の鎖のようにつなげることで正確な取引履歴を維持しようとする技術のこと」です。

取引データを集積・保管し、必要に応じて取り出せるようなシステムのことを一般に「データベース」といいますが、ブロックチェーンはそんなデータベースの一種です。その中でもとくにデータ管理手法に関する新しい形式やルールをもった技術となっています。

ブロックチェーンにおけるデータの保存・管理方法は、従来のデータベースとは大きく異なります。これまでの中央集権的なデータベースでは、全てのデータが中央のサーバーに保存される構造を持っています。したがって、サーバー障害や通信障害によるサービス停止に弱く、ハッキングにあった場合に、大量のデータ流出やデータの整合性がとれなくなる可能性があります。

これに対し、ブロックチェーンは各ノード(ネットワークに参加するデバイスやコンピュータ)がデータのコピーを持ち、分散して保存します。そのため、サーバー障害が起こりにくく、通信障害が発生したとしても正常に稼働しているノードだけでトランザクション(取引)が進むので、システム全体が停止することがありません

また、データを管理している特定の機関が存在せず、権限が一箇所に集中していないので、ハッキングする場合には分散されたすべてのノードのデータにアクセスしなければいけません。そのため、外部からのハッキングに強いシステムといえます。

ブロックチェーンでは分散管理の他にも、ハッシュ値と呼ばれる関数によっても高いセキュリティ性能を実現しています。

ハッシュ値は、ハッシュ関数というアルゴリズムによって元のデータから求められる、一方向にしか変換できない不規則な文字列です。あるデータを何度ハッシュ化しても同じハッシュ値しか得られず、少しでもデータが変われば、それまでにあった値とは異なるハッシュ値が生成されるようになっています。

新しいブロックを生成する際には必ず前のブロックのハッシュ値が記録されるため、誰かが改ざんを試みてハッシュ値が変わると、それ以降のブロックのハッシュ値も再計算して辻褄を合わせる必要があります。その再計算の最中も新しいブロックはどんどん追加されていくため、データを書き換えたり削除するのには、強力なマシンパワーやそれを支える電力が必要となり、現実的にはとても難しい仕組みとなっています

また、ナンスは「number used once」の略で、特定のハッシュ値を生成するために使われる使い捨ての数値です。ブロックチェーンでは使い捨ての32ビットのナンス値に応じて、後続するブロックで使用するハッシュ値が変化します。

コンピュータを使ってハッシュ関数にランダムなナンスを代入する計算を繰り返し、ある特定の条件を満たす正しいナンスを見つけ出します。この行為を「マイニング」といい、最初に正しいナンスを発見したマイナー(マイニングをする人)に新しいブロックを追加する権利が与えられます。ブロックチェーンではデータベースのような管理者を持たない代わりに、ノード間で取引情報をチェックして承認するメカニズム(コンセンサスアルゴリズム)を持っています。

このように中央的な管理者を介在せずに、データが共有できるので参加者の立場がフラット(=非中央集権)であるため、ブロックチェーンは別名「分散型台帳」とも呼ばれています。

こうしたブロックチェーンの「非中央集権性」によって、データの不正な書き換えや災害によるサーバーダウンなどに対する耐性が高く、安価なシステム利用コストやビザンチン耐性(欠陥のあるコンピュータがネットワーク上に一定数存在していてもシステム全体が正常に動き続ける)といったメリットが実現しています。

データの安全性や安価なコストは、様々な分野でブロックチェーンが注目・活用されている理由だといえるでしょう。

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

世界のGDPの10%がブロックチェーン基盤上に蓄積される?

「ブロックチェーン=ビットコイン」という認識は、すでに過去のものとなっていることはご存知でしょうか?一昔前(といっても2010年代ですが)までは、ブロックチェーンといえば、ビットコインを始めとする暗号資産(仮想通貨)を支える基幹技術の一つに過ぎませんでした。

それもそのはず、もともとブロックチェーンは、2008年に生まれたビットコインネットワークの副産物でしかなく、多くのビジネスパーソンからはFintechの一領域として認識されていました。しかし、ブロックチェーンの技術に対する理解が徐々に深まるにつれ、金融のみならず、物流・不動産・医療など、多種多様な産業での応用が進み始めました。

ブロックチェーンが単なるビットコインの補助技術ではなく、世界経済の重要な基盤として位置付けられるようになっている背景には、その技術の特性と多様な応用が挙げられます。

ブロックチェーンは分散型台帳技術であり、中央集権的な管理者が不在であるため、データの改ざんや不正アクセスを防ぐことができます。この特性は、金融だけでなく、物流、不動産、医療などのさまざまな産業で信頼性の高い取引や情報管理が求められる場面で大きな価値を持ちます。

そして、世界経済フォーラムによると、2025年までに世界のGDPの10%までがブロックチェーン上に蓄積されるようになるとの予測もなされるほどに、ブロックチェーンがこれまで以上に多くの産業で利用されるようになっています。たとえば、物流業界では製品の追跡や流通経路の透明化により、偽造品や盗難のリスクを減らすことができます。不動産業界では、不正な取引や不動産の二重売買を防止するために、土地登記や資産管理にブロックチェーンが活用されます。

これらの応用によって、ブロックチェーン技術は単なる金融の枠を超え、社会基盤の一部として不可欠な存在となっています。ブロックチェーンを単なる投機的な金融の一手法に過ぎないと見るか、それを次世代の社会基盤として位置付けるかによって、私たちの未来が大きく異なる可能性があります。

ブロックチェーンはセキュリティの万能薬ではない?

出典:Unsplash

ブロックチェーンは前述の通りデータの耐改ざん性が高い技術です。こうした背景から、ブロックチェーンセキュリティの万能薬であるかのような認識が広がりました。しかし、実際にはブロックチェーンも完璧なセキュリティを提供するわけではありません。

確かに、ブロックチェーンは、時系列順に取引履歴を追えること(トレーサビリティ)やネットワーク参加者間でのデータ同時共有という概念(データの耐喪失性)も相まって、物流業界における偽造品対策の効果的手法として活用されるなど、そのセキュリティレベルの高さに大きな期待がされています。

実際にブロックチェーンは、理論的には非常に堅牢なセキュリティ技術として働くことが可能で、従来のデータベースからブロックチェーン基盤へと切り替えることは、セキュリティ対策の一環としても効果がもたらされうることでしょう。

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

では、これらの問題は一体どのようなもので、どういった対策を取ればよいのでしょうか?それぞれの問題について説明していきます。

ブロックチェーンのセキュリティリスク①:51%攻撃

出典:shutterstock

51%攻撃とは?

ブロックチェーンの原理的なセキュリティリスクといわれているのが「51%攻撃」です。51%攻撃とは、「ブロックチェーンネットワークにおいて、ある特定の参加者またはグループがネットワーク全体の過半数(51%)以上の計算能力を持つことで、ブロックの生成やトランザクションの承認など、ネットワーク上での支配的な役割を果たすことができる」という問題のことで、平たく言えば「ネットワークの乗っ取り」といったところでしょうか。

ブロックチェーンは分散型のシステムで中央管理者がいないため、取引の正当性を決定するにはネットワーク全体で合意を取る必要があります。たとえば、AさんがBさんに10トークンを送ったと主張しているにも関わらず、Bさんは5トークンしか受け取っていないと主張する場合、どの取引が正しいかを決めるためには、事前に決められたルールに基づいて判断しなければなりません。

このルールのことを「コンセンサスアルゴリズム」といい、ブロックチェーン基盤ごとにそれぞれのコンセンサスアルゴリズムが定められています。暗号資産で有名なビットコインでは、取引の正当性を決めるために「PoW(Proof of Work)」というコンセンサスアルゴリズムが使われています。

PoWでは、マイニングと呼ばれる複雑な計算問題を解くことで新しいブロックを生成する権利を獲得する仕組みを通じてネットワーク全体の合意形成を実現します。このシステムは、誰でも参加できるオープンな仕組みである一方、 他のチェーンよりも多くの計算力を持てば自分のチェーンを伸ばすことができます。

マイニングにおける計算処理は「パズル (puzzle)」と表現されることがありますが、ジグソーパズルのように推理力が役に立つわけではありません。高速な計算処理をするマシンパワーこそがマイニングに最も必要なツールです。また、ビットコインではより長いチェーンを多くの人達が支持している正当なチェーンと考える(ナカモト・コンセンサス)ため、悪意のある参加者がネットワーク全体の計算力の過半数を手に入れれば、不正な取引のチェーンを生成することができます。これがビットコインにおける重要なセキュリティリスクとされる「51%攻撃」です。

51%攻撃が発生すると、ネットワークの支配者が二重支払い(既に支払ったコインを再度消費する)やトランザクションの改ざん、特定のブロック生成の妨害などを行えることとなり、ブロックチェーンネットワークのセキュリティが損なわれてしまいます。結果として、本来の目的である「安全で透明性の高い取引プラットフォーム」からは程遠いシステムとなってしまいます。

51%攻撃によってセキュリティが脅かされた事例

51%攻撃による暗号資産(仮想通貨)へのセキュリティ攻撃として話題になったのが2018年に発生したモナコインの事例です。被害総額は約1,500万円とあまり高額ではありませんが、モナコインが日本発祥であること、犯人が18歳少年であったことなどから大きな話題となりました。

モナコインへの51%攻撃では、攻撃者が自らのハッシュレート(コンピューターが1秒間に行うことのできるハッシュ計算の回数を表す指標)を利用してブロックチェーンを操作し、不正な取引を行いました。

出典:Blockchain Biz

具体的には、攻撃者はマイニングに成功したブロックをネットワークに伝えずに隠し、その後隠し持っていたブロックチェーンを伸ばすという手法です。この「セルフィッシュ・マイニング」という手法により、正しいチェーンよりも長くなったタイミングで攻撃者の改ざんされたチェーンをネットワークに送り込むことで、攻撃を成功させました。

また、攻撃者は事前に取引所にモナコインを入金し、換金処理をした後に改ざんされたチェーンを公開したため、取引所に入金したモナコインと取引所からの出金の両方を手に入れました。

このような攻撃は、ビットコインなどの大規模なブロックチェーンネットワークに比べてモナコインのブロック承認間隔が短く、ハッシュレートが比較的小さいために可能となりました。

ブロック承認間隔が短いと、攻撃者が改ざんしたブロックをネットワークに早く送り込むことができます。攻撃者は自分のブロックが最も長くなるように早くブロックを生成し、他の正規のブロックを追い抜くことがしやすくなります。

また、ハッシュレートが小さいと、攻撃者は比較的少ないコストで必要なハッシュレートを集めることができます。実際にEthereumなどの主要ブロックチェーンに比べると、モナコインは100分の1程度のコストで51%攻撃ができてしまいました。

この事件を受けて、多くの仮想通貨取引所ではブロック承認数を増やすなどの対策が取られており、モナコイン側においても、専用のASIC(特定の用途のために作られるハードウェア)を開発するなどしてハッシュアルゴリズムの見直しを行っており、ハッシュレートは数十倍に増加しています。

こうした51%攻撃の被害は、モナコインの他にも、「Bitcoin Gold(ビットコインゴールド)」や「Litecoin Cash(ライトコインキャッシュ)」といった銘柄でも確認できます。

51%攻撃を防ぐ方法はある?

出典:Pexels

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

もちろん、ネットワークの規模が大きくなればなるほど、マイニングやノードの所有者が多様であればあるほど、単一のエンティティが51%以上の計算力を獲得することは難しくなります。分散化を促進することである程度の抑止力にはなるでしょう。

しかし、これはあくまで難易度が多少上がるだけの話に過ぎません。したがって、51%攻撃のリスクをなくすためには、ルールそのものを変更する必要があるのです。これは、ビットコイン以外のブロックチェーンネットワークにおいて実際に行われています。

たとえば、イーサリアムで採用されている「PoS(Proof of Stake)」は、51%攻撃のリスクを限りなく低くすることを目的に定められたルールといわれています。PoSとは、保有するコイン量や保有期間に基づいて、ブロック生成の権利を獲得するコンセンサスアルゴリズムです。

そのため、あるノードが51%攻撃を行うためには、ネットワーク全体の51%以上のトークンを保有する必要があり、攻撃に必要なコストは非常に高くなります。また、保有期間によってもブロック生成の権利が当選する確率が変わるため、PoWに比べるとはるかに51%問題の難易度が上がります。

また、ネットワークの参加者が許可制になっている「プライベートチェーン」や「コンソーシアムチェーン」で用いられている「PoA(Proof of Autority)」も51%問題に対する対抗手段の一つとなっています。PoAとは権限を持つノードによってブロックが生成されるコンセンサスアルゴリズムのことで、ネットワークの分散性は劣るものの、そもそも悪意のある参加者などは事前にシャットアウトすることが出来ます

なお、プライベート型やコンソーシアム型といったブロックチェーンの種類や個々のチェーンの特徴についてはこちらの記事で解説しています。

ブロックチェーンの種類とそれぞれの特徴とは?パブリック・プライベート・コンソーシアムの違いを解説!

ブロックチェーンのセキュリティリスク②:秘密鍵の流出

出典:Unsplash

秘密鍵の流出とは?

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

ブロックチェーンの仕組みでは、ネットワーク基盤上で行われた取引記録が「トランザクション」と呼ばれる塊として大量にプールされており、そのプールから1MB(メガバイト)分のトランザクションを取り出して「ブロック」としてまとめています。

このトランザクションが取り出される際に「秘密鍵暗号方式」と呼ばれる方法でトランザクションへの「署名(秘密鍵で暗号化する)」が行われることで、トランザクション自体のセキュリティが担保されています。

秘密鍵暗号方式とは?

公開鍵暗号方式とは、情報を通信する際に、送信者が誰でも利用可能な公開鍵を使用して暗号化を行い、受信者が秘密鍵を用いて暗号化されたデータを復号化するという手法のこと。

図1:公開鍵暗号方式における鍵のやり取り出典:サイバーセキュリティ情報局「キーワード事典」

秘密鍵は特定のユーザーのみが保有する鍵で、この秘密鍵から公開鍵を生成することは可能。しかし、公開鍵から秘密鍵を特定することは現実的には不可能。公開鍵で暗号化されたデータは対応する秘密鍵でしか復号化できないため、秘密鍵さえ厳重に管理していれば、データの保護と情報漏洩の防止が可能となる。

通常、この秘密鍵は各アカウントごとに一つだけ付与されるもので、この鍵を使うことでアカウントに紐づいた様々な権限を利用することができます。暗号化技術において、秘密鍵は暗号化されたデータを復号したり、デジタル署名を作成したりするために使用される重要な情報です。そのため、この鍵自体が盗まれてしまうと、個人アカウント内の権限を第三者が悪用できてしまうことになります。これが、秘密鍵流出問題です。

秘密鍵の流出によってセキュリティが脅かされた事例

秘密鍵の流出問題として世間を大いに騒がせたのが、2018年1月に起きた日本の暗号資産取引所コインチェックの秘密鍵流出問題です。この事件では、コインチェックが取り扱っていたNEM(ネム)という仮想通貨が約580億円相当も盗まれ、当時としては世界最大級の暗号資産窃盗事件となりました。

この事件は、コインチェックがNEMをインターネットに接続された状態で管理していたことが原因とされています。こうしたホットウォレットは利便性が高い反面、セキュリティリスクも高いため、本来は大量の仮想通貨を保管するのに適していません。

さらに、当時のコインチェックでは運用上の負担やコストの負担などから、取引を行うために1つの秘密鍵で取引を承認するシングルシグ方式が用いられていました。これが、ハッカーが1つの秘密鍵を盗むだけで、大量のNEMを盗むことができた原因の一つです。

また、当時の日本の仮想通貨業界がまだまだ発展途上であり、セキュリティに対する十分な意識や法整備が追いついていなかったことも事件の背景にあります。仮想通貨取引所の運営やセキュリティ対策が未熟だった時期でもあったため、日本の仮想通貨取引所に対する信頼を大きく損なう騒動となりました。

一方で、この事件を機に多くの暗号資産取引所がコールドウォレットと呼ばれるインターネットに接続されていない状態で仮想通貨を保管する方式を導入したり、適切な監視体制が構築されるなど様々なセキュリティ対策がなされることになります。良くも悪くもセキュリティ上の「教訓」が業界全体に浸透したといえるでしょう。

また、個人単位でも秘密鍵の管理には細心の注意を払う必要があります。2023年9月には、ブラジルの仮想通貨系配信者であるIvan Bianco氏が自身の秘密鍵をYouTubeのライブ配信上で誤って公開してしまい、数千ドルを失うという出来事がありました。

今やインフルエンサーやコンテンツクリエイターは決して珍しい存在ではなく、誰もがコンテンツの発信者になりうる時代です。したがって、こうした予期せぬヒューマンエラーがブロックチェーンシステムの運用課題になりえることでしょう。

秘密鍵の流出を防ぐ方法はある?

出典:Pexels

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

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

ただし、上述のコインチェック事件のように、個人レベルでマルチシグを利用していたとしても、取引所そのもののセキュリティが破られてしまった場合には被害を食い止めることはできません。

通常のデータベースにおけるセキュリティ対策(セキュリティソフトウェアの導入、二要素認証の活用)をうまく活用しながら、セキュリティへの攻撃は複数階層に対して行われうるものであることを理解して、本質的な対応をとるように心がけましょう。

まとめ:ブロックチェーンは適切な運用でセキュリティ対策が可能

本記事ではブロックチェーンが抱えるセキュリティリスクについて解説しました。ブロックチェーン自体は優れたセキュリティ性能を備えているものの、コンセンサスアルゴリズムや秘密鍵の管理体制によっては攻撃の対象となりうることをご確認いただけたかと思います。しかし、これらを適切に運用しさえすれば安定したエコシステムの実現も可能です。

ブロックチェーンをビジネスに導入する際には、そのサービスや目的に合ったブロックチェーンを選別することが非常に重要です。しかしながら、プラットフォームごとに「スピードが優れている基盤」「安定性に優れている基盤」「カスタマイズ性に優れている基盤」など様々な特色があり、またその同一のチェーンでも設計次第では異なる性能になります。当然、セキュリティも然りですが、これらを比較検討するのには多大な労力やコストがかかります

トレードログ株式会社では、非金融分野のブロックチェーンに特化したサービスを展開しております。ブロックチェーンシステムの開発・運用だけでなく、上流工程である要件定義や設計フェーズから貴社のニーズに合わせた導入支援をおこなっております。

ブロックチェーン開発で課題をお持ちの企業様やDX化について何から効率化していけば良いのかお悩みの企業様は、ぜひ弊社にご相談ください。貴社に最適なソリューションをご提案いたします。