ビットコイン&イーサリアムブロックチェーンの仕組み PoWの特徴と課題

目次

    近年ブロックチェーンは革新的な技術だと騒がれ、そんなブロックチェーン技術をベースにした仮想通貨が大きなトレンドになっています。なんとなく多くの人が認知しているブロックチェーンですが、その仕組など技術的な部分を調べてみるとなかなか難しく理解しずらいと感じている方が多いのではないでしょうか。

    そこでこの2回の連載では、ブロックチェーンの基本的な仕組みとその核となる考え方 ”コンセンサスアルゴリズム”  について簡単に解説します。第一回目の本記事のテーマは「 ビットコイン&イーサリアムブロックチェーンの仕組み PoWの特徴と課題」です。第二回目の記事「イーサリアムブロックチェーンの仕組み PoSが解決すること」はこちら

    ブロックチェーン

    ブロックチェーンとはその名前の通り、ビットコインなどの取引のデータの塊、つまり “ブロック””チェーン状” に連ねたものです。新しい取引データは新しいブロックとなりブロックチェーンに繋がれていきます。

    ビットコインやイーサリアム等の仮想通貨のブロックチェーンはインターネット上で世界中に公開されており、誰でも同じ一つのブロックチェーンを信用して取引内容を確認することができます。

    ここで、誰でも ”同じ一つのブロックチェーンを信用して” 取引できる仕組みがブロックチェーン技術の革新的な所です。この仕組みが無いと人によって異なるブロックチェーンを信用したり、そもそもブロックチェーンの内容を信用できなくなったりしててしまい、そのデータを信用した仮想通貨の取引等は行なえなくなってしまいます。

    ここからどのようにして同じ一つのブロックチェーンを信用するのかを解説します。

    ブロックチェーンに新しいブロックを繋げる方法はとてもシンプルです。手順は、まず新しいブロックを作りその中に取引の情報を入れます。チェーンを繋げる際には、一個前のブロックの情報と、ある計算問題の答えをブロックの中に一緒に入れなければなりません。

    この計算問題は答えを見つける事はとても難しく、答えが合っているかどうかはとても簡単に確かめられるという特徴を持っています。数独がとても良い例になります。

    数独は3x3のマス、縦、横の列全てで1~9までの数字を1回づつ使ってマス目を全て埋めるゲームです。答えを探すには色々なパターンの数字を入れてみるので時間がかかる一方で答えを見ればそれが合っているかどうかはとても簡単に確かめられます。

    またあるブロックでの計算問題は”一つ前のブロックの情報の一部を使って問題が作られている” という仕組みがあります。例えば新しい数独の問題に前のブロックの数独の答えの一部を持ってくるような感じです。(但し実際には数独ではなくハッシュ関数という暗号理論が用いられています。)

    このように問題が順番に解かれることで繋がっているブロックチェーンは、それぞれのブロックの中の数独の答えが合っているか確認することで、正しく繋がっているチェーンなのかを確認できます。

    正しいブロックかを確認するのは簡単ですが、内容を自分に有利な様に書き換えようとすると、書き換えたブロックの次のブロックの計算問題が変わってしまうので問題の答えも書き換えなければなりません。更に、この問題の答えが変わるということは、その次のブロックの問題も変わるので…と言った具合に、既に繋がっているブロックの情報を改ざんするには途方もない計算問題を解き直す必要が出てきます。これは内容を改ざんする事は事実上不可能だということです。

    このようにブロックチェーンの内容は改ざんが途方もなく難しいので、あるブロックチェーンに記録された取引情報は信頼することができます。

    そしてブロックチェーンでは、更に”幾つかの正しいブロックチェーンがある時は、一番長く繋がれた物が正しいので皆で信頼する” というルールがあります。これに皆が従うことで「同じ一つのブロックチェーンを信用して」取引できることになります。

    ブロックチェーンの世界では、世界中の至る所にブロックを繋げる計算に挑戦する人がいますが、その半分以上が悪巧みを考えていない正直な協力者だと考えています。もしこれが本当であれば、いつでも悪巧みを考えている人より正直な人たちの集団が作ったブロックチェーンが一番長くなることになります。

    コンセンサスアルゴリズム

    ブロックチェーンに新しいブロックを追加する作業を通称 ”マイニング” 、それを行う人を ”マイナー” と呼びます。仮想通貨ではマイニングをすることによって、新しい取引の記録をブロックチェーンに記録し有効にし、またマイニングに成功した人(計算問題の答えを見つけた人)はその時に報酬として新しく発行された仮想通貨を貰うことができます。

    コンセンサスアルゴリズムとはこのマイニングをする際に、誰がどうやって問題の答えを見つけるのかを決めているルールです。

    実際のコンセンサスアルゴリズムには代表的なものとしてビットコインが採用しているProof of Work (PoW)やイーサリアム(現在はPoWを採用)が今後採用予定のProof of Stake (PoS)があります。

    Proof of Work(PoW)とは?

    Proof of Workでは世界中のマイナーが同じ計算問題を解きます。計算問題には特に攻略法は存在しないので、ただ繰り返し適当に数字を入れてみて合ってるか検算するしかありません。この繰り返しをより多くするほど答えを見つける可能性が上がるので、マイニングはどれだけ多くの繰り返し計算ができるかの競争になります。

    Proof of Workの問題点

    Proof of Workは計算の競争を続けることでブロックチェーンの信頼性を上げる革新的な方法としてビットコインの発明者 ”サトシ・ナカモト” によって提唱されました。(Bitocoinのホワイトペーパーでは半ページ程でPoWについて説明されています。)

    しかしPoWには幾つかの問題があると言われています。

    51%攻撃

    ブロックチェーンでは、マイナーの半分以上(50%以上)が悪巧みを考えていない正直な協力者だと考えました。しかし、もしそうでなかったら、つまり誰かが全体の50%以上の計算量を持つことができた場合、彼らは自分たちにビットコインの支払いが行われるような不正な取引にブロックの情報を書き換えて、誰よりも早く計算結果を見つけてブロックに繋げてしまうことが可能になります。

    これは通称 ”51%攻撃” と呼ばれており、Proof of Work の根本的な問題点だとされています。CoinDeskによると過去には、Ghashという当時最大規模のマイニング業者のマイニング量が全体の50%を超えそうになり、ビットコインの価値(信頼)が大きく下がるという事が発生しました。

    マイニングに掛かるコストの増加

    ビットコイン等のマイニングに掛かる電気代は急激に上昇しています。当初ビットコインは研究者やエンジニアの研究や実験として2009年に始まりました。しかし、それが通貨として認知され始めると、一気にビットコインを使おうとする人や、マイニングに参加して利益を得ようとする人が増えました。

    ビットコインは計算問題の難しさが自動でコントロールされる設計になっています。よって、もしより沢山のマイナーがビットコインを得る為に計算してブロックを繋ごうとすると、自動的に計算問題が難しくなります。数独で言うと、最初のマス目の空白が増えることになります。

    問題が難しくなるにつれて、マイナーはより高性能なコンピューターを用意したり、沢山のコンピューターを用意したりする必要が出てきます。一般的に沢山のコンピューターを繋げたり性能を上げたりすることで消費電力は高くなります。

    事実、ビットコインマイニングにかかる電力は急上昇しており、Expressによる記事では既にデンマーク一国分の消費電力に相当し、このペースで上昇を続けると2020年までに全世界の消費電力に追いついてしまうとも言われています。

    これはマイナーが高い電気料金の支払いを強いられるだけでなく、環境面でも非常に深刻な問題です。

    限られたマイナーによる寡占

    計算の難しさが上がるに連れて、かつては家庭用のコンピューターでも出来たマイニングが、普段では使用しない様な高性能なコンピューターが必要になり、しまいにはASICと呼ばれるビットコインの計算問題だけに特化した装置を使わないと利益が上がらなくなりました。

    計算装置がより専門的になったこと、マイニングにかかる電気代が上昇したことによって、一般の人がマイニングを続けることは困難になりつつあります。

    その代わり、中国など世界的に電気代が安い地域にある大手のマイニング業者がその大部分を行うようになりました。更にこの様な業者同士の中でも熾烈な効率化競争が進み、淘汰が進んでいます。結果としてビットコインのマイニングでは、ほんの数社の企業がマイニング量の半分以上を占めています。(このシェアはリアルタイムでBlockchain.infoで確認できます。)BBCの記事によれば地域別でも、中国内でのマイニングが世界全体の7割以上を占めています。

    2017年8月1日にビットコイン(BTC)からハードフォークしてできたビットコインキャッシュ(BCC)は、中国のマイナー達に強く後押しされて作られた仮想通貨だとされています。このような一部の強力なマイニング能力を持つ集団によって彼らに有利な形で中央集権的に物事が進むということも実際に起きたのです。

    これは本来何者にも管理されない世界中に分散された取引システムを目指すビットコインの考え方と矛盾していると言えます。

    スケーラビリティ問題

    PoWを採用するシステムでは一定の時間で処理できる取引量に限界があり、大量の取引が行われた時に、ブロックチェーンへの取引情報の追加に時間がかかる”詰まり”という現象が発生します。このあるシステムの利用者が増えた時に発生する問題は一般に ”スケーラビリティ問題” と呼ばれています。

    この問題については本メディアの以下の記事で詳細に説明しています。

    イーサリアムのスケーラビリティ問題とその解決策

    Proof of Stake(PoS)とは?

    これらPoWの問題点の解決策としてPoSを始めとした新たなコンセンサスアルゴリズムが開発されました。そこで次の記事ではPoSがどのようにこれらの問題点を解決するのかを解説します。

    第二回目の記事「イーサリアムブロックチェーンの仕組み PoSが解決すること」はこちら

    コメントする

    メールアドレスが公開されることはありません。