「ブロックチェーンにはどんなメリットがあるの?」
「ブロックチェーンにデメリットはないの?」
そんな疑問をお持ちの方も多いです。ブロックチェーンは、何が嬉しくて(メリット)、何が嬉しくない(デメリット)のか、イメージが湧きづらいですよね。
しかし、ブロックチェーンを理解していないと、いつまでもイノベーションの波に乗れません。
そこで今回は、ブロックチェーンのメリットやデメリットをわかりやすく説明します。
この記事を読めば、ブロックチェーンのイメージを頭の中に描くことが出来るようになり、これから本格的に到来するWeb3の波に乗れるようになります。
株式会社リッカ
<<あわせて読みたい>>
【Web3とは?】ブロックチェーンが何を実現するのか?徹底解説
ブロックチェーンとは?
ブロックチェーンとは、ひとことで言うと「非中央集権型の分散型台帳」です。
もう少しかみ砕いて言うと「取引履歴を分散型のデータベースで持ち、それを非中央集権型で管理できるようにしたもの」です。
いくつかの取引をまとめたもの(ブロック)を作り、それを時系列的に繋いで(チェーン)データベースとして持っています。ブロックの中には一つ前のブロックの情報が入っているため、それによって改ざんがしにくくなっています。
仮にあるデータを改ざん使用すると、そのデータが含まれるブロック以降のブロックのデータもすべて変更する必要があります。これには膨大な計算力が必要とされるため、現実的には不可能な状態です。これによって第三者(管理者)を介さずともデータの信頼性を保てるため、非中央集権型でありながらビットコインなどの通貨の発行や管理、トレーサビリティ、真贋証明など様々なサービスが可能になっています。
ブロックチェーンという名前は厳密に言えば仕組みの名前であって「非中央集権型の取引履歴の分散型データベース」を実現するために開発された仕組みの一つがブロックチェーンです。
ですので、ブロックチェーンをより正確に表現するなら「ブロックチェーンという仕組みを用いた非中央集権型の取引履歴の分散型データベース」となります。
ブロックチェーンで扱うデータは何でも良いのですが、概ね取引履歴を扱っています。取引履歴には「いつ」「何を」「どうした」などがあります。それらをまとめたデータベースなので、台帳という呼び方をします。
そして通常は、その台帳を扱えるのは決められた人(管理者)しか扱えないようにしているのが一般的です。誰もが見ることができて、中身を変えられるデータは信頼できないものになってしまうからです。
データの信頼性を保つためには、管理者という仕組みがこれまでは必要だったわけです。またデータベースは通常一つのマシンの中に用意して使います。
こういった管理者(=中央集権)が必要なデータベースのことを中央集権型のデータベースと呼びます。
<<あわせて読みたい>>
【トレーサビリティとは?】わかりやすく簡単に解説!その意味や必要性、メリットについて
非中央集権型の分散型台帳とは?
管理者が存在しない情報のかたまりを、非中央集権型のデータベースと呼べます。この場合、データの信頼性を担保する仕組みを管理者以外の形で持つ必要があります。
情報のかたまりを複数のマシンに分けて、それらを統括する仕組みを設けた分散型データベースというものもあります。これは同じデータを複数の箇所で持つことで負荷が集中するのをやわらげたり、いずれかのマシンが故障してもすぐさまデータの損失とはならず障害に対して強くしたりできます。
こうした仕組みを組み合わせて作られているのがブロックチェーンです。
ブロックチェーンとは非中央集権型の分散型台帳です。つまり、「取引履歴を分散型のデータベースで持ち、それを非中央集権型で管理できるようにしたもの」、それがブロックチェーンとなります。
「非中央集権型の分散型台帳」が必要でなければ、ブロックチェーンは不要と言えます。そのため、ブロックチェーンの特性(メリットとデメリット)を十分に把握しておく必要があるのです。
<<あわせて読みたい>>
【ブロックチェーン開発とは?】メリットや活用法、注意点、開発事例を紹介
ブロックチェーンの7つのメリット
ブロックチェーンにはさまざまなメリットがあります。ここでは主なメリットとして以下の7つをご紹介します。
- セキュリティが強固で改ざんされにくい
- システムダウンしにくい
- 信頼が仕組みによって担保される
- システム構築や運用のコストが安価になる
- 誰でも参加でき、情報の透明性が高い
- マイニングで収益を得られる
- 契約や支払いを自動化することもできる(スマートコントラクト)
それぞれを解説します。
セキュリティが強固で改ざんされにくい
ブロックチェーンは公開鍵暗号、デジタル署名などにより通信の信頼性を高め、コンセンサスアルゴリズム、ハッシュ関数などによりデータを改ざんしにくくしています。
ブロックチェーンはいくつかの取引をまとめたもの(ブロック)を作り、それを時系列的に繋いだ(チェーン)データベースです。
ブロックの中には一つ前のブロックの情報が入っているため、それによって改ざんがしにくくなっています。
また公開鍵暗号、デジタル署名などにより通信の信頼性を高めています。
ブロックチェーンの通信に割り込んだり、悪意のあるデータを紛れ込ませるのは現実的に非常に困難です。
新たなブロックの生成はコンセンサスアルゴリズムに従い、その条件を満たす必要があります。これによりビザンチン障害耐性(取引内容の改ざんや二重使用などの不正を防ぐ)を持ち、より安全にシステムを運用できます。
システムダウンしにくい
ブロックチェーンは分散型データベースであるため、ネットワークに参加する複数のマシンによって運用されます。
それぞれのマシンが同一のデータを保持する仕組みのため、すべてのマシンが同時にダウンしない限りシステム全体としては稼働し続けることができます。
中央集権型の仕組みでは、中央サーバーが攻撃されたり故障したりすると、すべてのサービスが停止してしまいます。一方、ブロックチェーンは分散型のため、どこかのマシンに不具合が出たとしても、他のマシンの力で動き続けることができます。
信頼が仕組みによって担保される
ブロックチェーンではデータはトランザクションとブロックに分かれています。
トランザクションがひとつひとつの取引などのデータです。
これを複数のマシンが共有します。
この時、それぞれのマシンがデータを検証しながら伝播させていきます。
そして検証された複数のトランザクションが(ネットワーク内のいずれかのマシンによって)ひとつのブロックにまとめられます。
ブロックもコンセンサスアルゴリズムによって正当性を検証され、条件をクリアしたブロックがチェーンに繋げられていきます。
こういった仕組みによってデータの信頼を担保しています。
システム構築や運用のコストが安価になる
ブロックチェーンそのものに改ざん耐性などの特性があるため、トータルでコストが安価になる傾向があります。
従来の中央集権型の仕組みでは、サーバーやネットワークの構築や維持に膨大なコストがかかりました。しかし、ブロックチェーンではサーバーを持たず、ネットワーク上のマシンでデータを分散管理するため、システム構築や運用のコストが安価にできます。
ただし、ブロックチェーンの特性と構築したいシステムが合致していることが前提条件です。ブロックチェーンを使う必然性がないと十分な恩恵を得ることは難しいでしょう。
誰でも参加でき、情報の透明性が高い
ブロックチェーンには大きく分けてパブリックチェーンとプライベートチェーンの2つがあります。
これはパブリックチェーン(利用者が不特定もしくは多数)と呼ばれるものの特徴になります。
トランザクション内のデータ(「いつ」「何を」「どうした」といった情報)はすべて公開されており参加者であれば誰でも見ることができます。
逆にプライベートチェーン(利用者が特定もしくは少数)では公開する情報に制限を設けることもできます。
その代わりプライベートチェーンは管理者を必要とします。プライベートチェーンは言うなれば管理者を復活させたパブリックチェーンです。また、複数の管理者をもつものをコンソーシアムチェーンとも呼びます。
マイニングで収益を得られる
パブリックチェーン(利用者が不特定もしくは多数)において正当なデータを検証し合意するためのコストが参加者に課せられています。これには相当程度の計算コスト(コンセンサスアルゴリズムによって変わる)を必要とします。
これをマイニングと呼びます。マイニングに成功した参加者には、報酬として新規に発行された仮想通貨が支払われます。報酬が支払われる仕組みを用意することでより多くの参加者を集め、管理者のいないシステムを保っています。
マイニングに掛ける費用を上回る収益を上げるには相応の分析力が必要であり容易ではありません。
パブリックチェーンは多くの参加者、そして長く運用されるほど信頼性が高まります。仮想通貨としての安定性も高まりますが、それだけマイニングの難度も上昇します。
仮想通貨はマイニングによって総額が増えますが、価値が短期間に大きく変動しないように難度を調整されているためです。
つまり、安定性の高いパブリックチェーンではマイニングの難度が高くなります。一方、安定性の低いパブリックチェーンではマイニングの難度も低くなります。
契約や支払いを自動化することもできる(スマートコントラクト)
スマートコントラクトという言葉には多様な解釈がありますが、広義には「契約を自動で行う仕組み」を指し、よく自動販売機でたとえられています。
ブロックチェーンにもこの自動契約処理を実装し、それをスマートコントラクトと呼称しています。
これにより取引が第三者を介さずに済むため、(ケースによっては)決済を迅速に行えるようにすることが出来ます。
より厳密に言えばブロックチェーンにおいては「ブロックチェーン上で自動的に行われる処理」を指し、行われる処理は契約に限りません。
<<あわせて読みたい>>
スマートコントラクトとは?メリットや活用事例、注意点をわかりやすく解説
ブロックチェーンの7つのデメリット
ブロックチェーンをより深く理解するためには、デメリットについても知っておくと良いでしょう。
ここではブロックチェーンの主なデメリットとして以下の7つをご紹介します。
- 記録したデータの削除・修正が難しい
- 合意形成に時間がかかるため、処理速度が遅い場合がある
- 電力消費やガス代が増大する傾向にある
- スケーラビリティ問題がある
- 51%攻撃のリスクがある
- 悪意を持った利用者が紛れ込む可能性がある
- データが巨大化し続ける
それぞれを解説します。
記録したデータの削除・修正が難しい
ブロックチェーンは新しいブロックを次々に繋げていくことしかできません。
その仕様上、過去の任意のブロックを削除するといったことは不可能です。
これがデメリットとなるようなシステム設計ではブロックチェーンを使う意味がありません。
プライベートチェーンであればそもそも合意形成が必要ない場合もあるため、新しくチェーンを作り直したりなどで、疑似的に削除することは可能です。
それでも既存のデータベースよりは手間がかかります。
合意形成に時間がかかるため、処理速度が遅い場合がある
ブロックチェーンのような分散型データベースではマシン同士でデータが正しいことを検証しあいます(合意形成)。
この合意形成の仕組みをコンセンサスアルゴリズムと呼びます。
ブロックチェーンにおいて最も基本的なコンセンサスアルゴリズムがPoW(プルーフオブワーク)と呼ばれるものです。PoW(プルーフオブワーク)は相応の計算コストを支払うことでデータの正しさを証明しているため、どうしても処理に時間がかかってしまいます。
この問題を解消しようと様々なコンセンサスアルゴリズムが作られていますが、どれも一長一短の要素があり、特性に応じて使い分けられています。
- PoW(プルーフオブワーク)
条件を満たす値を先に見つけたブロックが承認される(ブロックを作るのが難しいが、早い者勝ち) - PoS(プルーフオブステーク)
通貨の保有量・保有期間に比例してブロックが優先的に承認される(ブロックを作るのは簡単だが、優先度がある) - PoI(プルーフオブインポータンス)
通貨の保有量・取引量に比例してブロックが優先的に承認される(ブロックを作るのは簡単だが、優先度がある) - PoC(プルーフオブコンセンサス)
ブロックの承認を行うものを限定する(ブロックを作るのは簡単だが、承認者(≒管理者)が限定されている)
電力消費やガス代が増大する傾向にある
ブロックチェーンは最初、仮想通貨(ビットコイン)の実現のために作られました。その後、ブロックチェーンを仮想通貨以外にも応用できるように、イーサリアムが作られました。
PoW(プルーフオブワーク)のパブリックチェーンであったため、多数の作業者(マイナー)が高い計算力を提供し続ける必要がありました。高性能のコンピューターが膨大な計算をし続けるため、電力消費量が大きくなってしまう傾向があります。
また、イーサリアムはブロックチェーン上により複雑なアプリケーションを実装でき、これを分散アプリケーション(DApps:DecentralizedApplications)と呼びます。
分散アプリケーションでは、イーサリアムに参加するマシンが処理を代替し報酬として仮想通貨(ETH)を受け取ります。そのアプリケーションの使用者は処理を代替してもらっている手数料として仮想通貨を支払います。
この手数料をイーサリアムではガス代と呼んでいます。(計算コストがかかることを燃料としてのガスに例えています)ガス代とはイーサリアムにおける取引手数料のことで作業者(マイナー)へ支払われる報酬のことです。
また取引手数料のガス代は高いものほど優先的に処理される傾向があり、取引数の増大に従ってガス代も高くなりがちでした。
イーサリアムが抱えていた問題はPoW(プルーフオブワーク)のパブリックチェーンにおける共通の課題と言えます。
しかし、イーサリアムは2022年第3四半期にPoS(プルーフオブステーク)へ移行し、計算コストとガス代が大幅に軽減されるようになっています。
参考:イーサリアムのエネルギー消費
https://ethereum.org/ja/energy-consumption/
現在はイーサリアムのエネルギー消費量は非常に少ないですが、以前からそうだったわけではありません。イーサリアムは、2022年第3四半期にプルーフ・オブ・ステーク合意メカニズムに移行しました。2014年から2022年までは、プルーフ・オブ・ワークのメカニズムがイーサリアムで採用されていなかったため、環境コストははるかに高かったです。
スケーラビリティ問題がある
ブロックチェーン上での取引の処理能力のことをスケーラビリティと呼びます。この能力が高いほど短い時間で多くの取引を扱えることを示します。
ブロックチェーンは信頼できない他者間での取引をコンセンサスアルゴリズムによって可能なものにしました。
しかし、コンセンサスアルゴリズムに使われたPoW(プルーフオブワーク)は計算コストが高く、すべてのデータをすべてのマシンで検証するため、処理を分担して軽減する仕組みもありませんでした。
そのため取引数が多くなるとデータの検証が間に合わなくなります。これをスケーラビリティ問題と呼びます。
この問題は議論され続けており、2017年12月にイーサリアムにて実際に発生しました。
スケーラビリティ問題が起きると早く取引の処理をやってもらうために、取引手数料が高騰するという問題も起こってきます。この問題への対策として一つのブロックにまとめる取引の数を増やしたり、コンセンサスアルゴリズムに計算コストのかからないものを考案されたりしています。
51%攻撃のリスクがある
パブリックチェーンにおいては作業者(マイナー)がブロック生成と承認を行いますが、悪意のある個人またはグループが参加者全体の処理能力の51%を超える処理能力を持つとブロックチェーンに対して恣意的な操作ができてしまいます。
このことを51%攻撃と呼びます。
パブリックチェーンは多くの参加者、そして長く運用されるほど信頼性が高まり、仮想通貨としての安定性も高まります。そういった十分に成長したパブリックチェーンにおいては51%攻撃は非常に困難であり且つ攻撃者のメリットが小さくなる傾向にあるため頻繁には発生しないと言われています。
なぜなら、攻撃で得られるメリットよりも、攻撃に必要なコストが大きくなってしまうからです。
逆にまだ未成熟のパブリックチェーンでは51%攻撃の標的になりやすいと考えられます。実際に2018年5月にモナコインが51%攻撃(BlockWithholdingAttack)の被害に遭っています。
悪意を持った利用者が紛れ込む可能性がある
ブロックチェーン(パブリックチェーン)は信頼できない他者間での取引を可能にするために作られました。
オープンで管理者を必要としないシステムのため、悪意を持った利用者が紛れ込む可能性があります。
しかし、悪意を持った利用者が紛れ込んだとしても攻撃が容易ではない仕組みを持っています。公開鍵暗号、デジタル証明、ブロックの生成と承認、コンセンサスアルゴリズム、チェーンの仕組みよって(ある程度の利便性は犠牲になるものの)改ざん耐性を備え、不特定多数の間での取引を可能にしています。
ですが完全と言えるものではなく、悪意を持った利用者が多数を占めてくると攻撃される可能性があります。
(51%攻撃、シビルアタック、エクリプスアタック、BlockWithholdingAttackなどがあります。)
データが巨大化し続ける
ブロックチェーンは各マシンでデータを検証しあう仕組みのため、データが大きくなってくると扱いが難しくなってきます。
これに対処するために以下のような仕組みを持っています。
- アーカイブノード:完全なブロックチェーンのデータを保持
- 剪定ノード:一旦完全なブロックチェーンのデータをコピーするが、そこから必要な部分だけを残す
- ライトノード(軽量クライアント):ブロックのヘッダだけの情報を持つ
(元々完全なブロックチェーンのデータを保持するマシンはフルノードと呼ばれていましたが、後にアーカイブノード、剪定ノードに分かれました)
アーカイブノードは単独ですべてのデータの検証を行えるメリットがありますが、その分のデータ(数TB程度)を抱えている必要や常時ネットワークに接続している状況を維持し続けるなどのコストがかかります。
剪定ノードは直近のデータの検証であれば十分単独で行えます。
ライトノードは1/1000程度のデータに抑えることができ、必要に応じて足りない情報は問い合わせて処理します。
ネットワーク内のすべてのマシンに完全なブロックチェーンのデータを保持する必要はない為、より扱いやすくなっています。
まとめ ブロックチェーンのメリット・デメリットについて
今回は、ブロックチェーンのメリット・デメリットについて解説しました。
ブロックチェーンには多くのメリットがある反面、デメリットも多く存在します。ブロックチェーンは向き不向きのある技術といえますので、本当にシステムにブロックチェーンを採用すべきかは十分に検討が必要です。
ブロックチェーンには大きくパブリック型とプライベート型、その中間にあたるコンソーシアム型があります。大抵の文脈でブロックチェーンはパブリックチェーンを指していることが多いです。パブリックチェーンの代表としてビットコインやイーサリアムがあります。
パブリックチェーンは信頼の無い不特定多数の参加者間で信頼のおける取引を行う仕組みです。取引の証明をコンセンサスアルゴリズムで行っています。
ビットコインなどが採用するPoW(プルーフオブワーク)のパブリックチェーンはスケーラビリティ問題に悩みがち。PoW(プルーフオブワーク)以外のコンセンサスアルゴリズムはスケーラビリティ問題を解消するために考案されましたが、ブロックの承認に関して参加者が平等ではないという側面もあります。
パブリックチェーンに分散アプリケーションのプラットフォームを実装したイーサリアムにより、様々な分散アプリケーションサービスが開発されています。イーサリアムは長らくPoW(プルーフオブワーク)を用いていましたが、2022年9月にPoS(プルーフオブステーク)へ移行しました。
このように徐々に進化しているブロックチェーンもありますので、最新の動向にも目を向けながら、ビジネスへの応用を考えていく必要があります。
将来性が期待されるブロックチェーンですが、ブロックチェーン開発には独特のノウハウや注意点があります。ブロックチェーンやスマートコントラクトを活用したシステム開発は、株式会社リッカにご相談ください。
株式会社リッカ
コメント