2017年9月6日

ブロックチェーンとBitcoinにまつわる6つの通説を覆す

テクノロジー

ブロックチェーンは素晴らしい。画期的な技術だ。間もなくすべてがブロックチェーンの技術を中心に回るようになるだろう。こうした主張に全面的に賛成な人は、今回の記事を読むとがっかりするかもしれません。

この記事では、ブロックチェーン技術の中でも、暗号通貨Bitcoinに使用されているバージョンを取り上げます。これ以外の実装形態も存在しており、そちらでは「旧来のブロックチェーン」の弱点がいくつか解消されているかもしれませんが、基本的にどれも同じ原則に基づいて構築されています。

Bitcoinとは

Bitcoinそのものは革新的な技術であると、私は考えています。ただ、残念なことにBitcoinは犯罪行為に利用されることがあまりにも多く、情報セキュリティのスペシャリストとしては、そのような状況に強い反感を覚えています。それでも、技術的な観点から見て、Bitcoinが画期的であることは明らかです。

Bitcoinプロトコルの構成要素と基本となるアイデアは目新しいものではなく、以前からおおむね知られていました。Bitcoinの発案者たちが各要素をつなぎ合わせ、機能する仕組みを作り上げたのが2009年のことでした。それ以来9年近くの間、Bitcoinに見つかった深刻な脆弱性はただ1つ、ある悪質な犯罪者が920億BTCの不正入手に成功したときだけです。この問題を解決するには、24時間分の全取引記録を書き換えねばなりませんでした。それでも、9年間で脆弱性がたった1つというのは、大したものです。考案者に敬意を表してしかるべきでしょう。

Bitcoinの考案者たちは、中央管理システムを持たず互いに誰も信用しなくても機能する仕組みを作る、という課題をクリアしなければなりませんでした。彼らはこの挑戦を受けて立ち、克服し、電子マネーを実用可能な通貨にしました。それでもなお、考案者たちが下した判断には問題が残されています。

私はブロックチェーンを貶めるつもりでこの記事を書いているのではありません。ブロックチェーンは素晴らしい用途をいくつも示してきた有用な技術であり、短所はありながらも、他にはない優れた長所を持ち合わせています。ただ、話題性と革新性を追い求めるあまり、多くの人が利点だけに注目し、全体像を冷静に見ることを忘れ、不都合な点に目をつむっています。そこで、さまざまな意見に触れるという意味で、この技術の短所を取り上げることが有益だと考えた次第です。

ブロックチェーンに大きな期待を寄せる論調の書籍。今回の記事で紹介する引用は同書からのもの(日本語訳はKaspersky Lab)

通説その1:ブロックチェーンは巨大な分散型コンピューターである

引用1:「ブロックチェーンはオッカムの剃刀なのかもしれない。人間と機械のあらゆる活動を統合する、効率的で、直接的で、自然な手段であるという意味で。これは、自然な効率のプロセスだ」

ブロックチェーンの仕組みの原理を詳しく調べたことがなく、この技術に関する意見だけを目(耳)にしてきた人は、ブロックチェーンとは分散型の計算を実行するある種の分散型コンピューターである、という印象を持っているかもしれません。世界中に散らばったノードが少しずつ何かを持ち寄って何か大きなものを作っている、というイメージです。

ブロックチェーン入門

それはまったく違います。ブロックチェーンを支えているノードはすべて、まったく同じことをしているのです。膨大な数のコンピューターが行っているのは、次のような処理です。

  1. 同じルールに従って同じ取引を検証し、同じ演算を実行する。
  2. 同じものを1つのブロックチェーンに記録する(幸運にも記録することが許された場合に限りますが)。
  3. 全履歴を保存する(この履歴はどのノードでも常に同じ内容)。

並行処理、共同作業、相互支援などというものは一切ありません。瞬時に数百万の複製が行われるだけです。効率とは正反対です。そして、この点が重要なのです(詳しくは後ほど説明します)。

通説その2:ブロックチェーンは永続的なもの。ブロックチェーンに記録された内容は永遠にそこに残る

引用2:「DApp、DAO、DAC、DASがある現状から考えて、AIに似た複雑なふるまいをする興味深い新たな種が数多く出現してもおかしくない」

Bitcoinネットワークの高い計算能力を持つノードは、それぞれ全取引履歴を保管していますが、この記録はすでに100 GBもの大きさに達しています。安価なノートPCや最新のスマートフォンの最大ストレージ容量に匹敵するサイズです。Bitcoinネットワークで処理される取引の数が増えるほど、ブロックチェーンのサイズが拡大するスピードも速くなります。ここ2年ほどの間、過去最大級のブロックチェーンが次々に登場しています。

ブロックチェーンのサイズの推移。出典

Bitcoinのブロックチェーンの拡大ぶりを超える勢いのものもあります。Bitcoinと競合する通貨であるEthereumのネットワークでは、立ち上げからわずか2年、本格稼働から半年しか経っていないにもかかわらず、ブロックチェーンの履歴データが200 GBに達しています。したがって現状では、ブロックチェーンの寿命は10年に制限されています。ハードディスク容量の拡大スピードの方が、間違いなく遅いのですから。

サイズの大きなデータを保管する必要があるだけでなく、そのデータをダウンロード可能でなければなりません。ローカルに保存した暗号通貨のウォレットを使おうとしたことがある人なら、ダウンロードと検証の処理が完了するまで決済や支払の受け取りができないと知って驚き、がっかりした経験があるでしょう。処理が完了するまで、よくても2、3日かかるのです。

あなたはこう思うかもしれません。「データがまったく同じなら、すべてのネットワークノードに保管するのをやめればいいのでは?」。そうです。その方が効率的です。しかしそれでは、ピアツーピア方式のブロックチェーンではなく、従来型のクライアント/サーバー型アーキテクチャになってしまいます。さらに、クライアントがサーバーを信用する必要が出てきます。先に述べたように、ブロックチェーンの基本原則の1つは「誰も信用しない」ことです。

Bitcoinの利用者は、長い時間をかけて二分化してきました。「身銭を切って」何もかもダウンロードし、ブロックチェーン全体を自分のコンピューターに保存する熱心な支持者。そして、オンラインウォレットを使い、サーバーを信用して全体の仕組みには無関心な一般の利用者です。

通説その3:ブロックチェーンは極めて有効で拡張性にも優れている。従来型の通貨はやがて消えてなくなるだろう

引用3:「コンセプトは、『ブロックチェーン技術 + 個人的な生体コネクトーム』。人間の思考をすべてコード化して標準の圧縮データフォーマットで利用できるようにする。データの入手は、大脳皮質内の情報の記録、一般消費者向け脳波測定装置、ブレイン/コンピューターインターフェース、認知機能を持つナノロボットなどの手段を介して行うことができるのではないか。このようにして、思考をブロックチェーン内でインスタンス化できるかもしれない。やがては個人の主観的な体験も、あるいは(可能であれば)意識も含めて、インスタンス化しうるかもしれない。こういったものをブロックチェーンに記録すれば、さまざまな要素の管理や取引が可能になる。たとえば、脳卒中後の記憶回復に用いることができるのではないか」

各ネットワークノードが同じ処理をするのであれば、ネットワーク全体のデータ処理能力は1つのネットワークノードのデータ処理能力と同じであるはずです。では具体的にどれほどのものか、想像がつきますか?Bitcoinネットワークは、1秒あたり最大7件の取引を処理可能です。世界各地の膨大な数の利用者に対して、この程度です。

加えて、Bitcoinブロックチェーンの取引は10分に1回しか記録されません。さらに、決済の安全性を高めるため、新しい取引が記録されてから50分以上待つのが一般的です。というのは、記録が定期的にロールバックするためです。では、Bitcoinでスナック菓子を買おうとしているところを想像してみてください。1時間並んで待つくらい、大した問題ではありませんね。どうでしょう?

現時点で世界中の1,000人に1人しかBitcoinを利用していないことを考えると、もう十分にばかばかしい話に聞こえます。それにこの取引処理スピードでは、アクティブユーザーの数を大幅に増やすことなど、どう考えても不可能です。比較のために例に挙げると、Visaは1秒間に数千件の取引を処理しており、必要に応じて簡単に処理量を増やすことができます。結局のところ、従来型のバンキング技術は拡張性に優れているのです。

従来型のお金がいずれ消えてなくなるとしても、ブロックチェーンのソリューションのせいではないでしょう。

通説その4:マイナーの存在がネットワークセキュリティを担保する

引用4:「クラウドとブロックチェーンを導入し、スマートコントラクトを介して運営される自律的事業体は、政府などの法規制機関と電子契約を結び、事業を展開する司法地域で自動的に登記できるようになる」

マイナー(採掘者)や、発電所の隣に建つ巨大マイニングファームのことは、聞いたことがあるのではと思います。マイナーやマイニングファームは、具体的にはどのようなことをしているのでしょうか?実は10分間、大量の電力を無駄遣いしてブロックを「美しく」し、ブロックチェーンに追加される条件を満たすまで「計算」しています(このプロセスについて詳しくはこちらの記事で説明しています)。基本的にその目的はただ1つ、取引履歴の書き換えに要する時間と、履歴を最初から書き起こす時間が同じ(計算能力が同じであれば)であるようにすることです。

この目的を達成するために消費される電力は、人口10万人の都市で消費される電力量に相当します。それに加えて、Bitcoinのマイニング以外にほとんど使い道のない、特別仕様の高額なマイニング機器の費用もかかります。

Bitcoinのマイニング

ブロックチェーンの未来を楽観視する人々が好んで口にするのは、「マイナーは無用な演算をするだけでなく、Bitcoinネットワークの安定性と安全性を担保する存在でもある」という言葉です。それは正しいのですが、問題は、マイナーは他のマイナーからBitcoinを守っているという点です。

仮にマイナーの数が現在の1,000分の1で、消費電力も1,000分の1であっても、Bitcoinの効率は現在と変わらないでしょう。その場合でも10分に1個の頻度でブロックが生成され、同じ数の取引が処理され、同じスピードで運営されるはずです。

いわゆる「51%攻撃」のリスクは、ブロックチェーンを採用するソリューションにもあります。マイニングに使用されている計算能力の過半数を特定の人が管理することになれば、その人はひそかに取引履歴を改竄可能です。すると、その改竄後のバージョンが事実と見なされるようになります。その結果、二重送金が可能になります。従来型の決済システムは、このような攻撃を受けにくくなっています。

結局のところ、Bitcoinは自分自身の理想に囚われてしまっているのです。「度を超えた」マイナーはマイニングをやめることができず、その結果、特定の誰か1人が残りの計算能力の過半数を管理する可能性が格段に高まるでしょう。今のところマイニングからは利益が生まれ、ネットワークの安定性は保たれています。しかし、状況が変われば(たとえば、電力の価格が上がれば)、Bitcoinネットワークで「二重支払い」の事例が大量に発生する事態にもなりかねません。

通説その5:ブロックチェーンは中央管理システムがないため破壊できない

引用5:「DAppが本格的な組織になるには、もっと複雑な機能を備える必要があるだろう。たとえば規約…」

ブロックチェーンが各ネットワークノードに保存されているのであれば、特殊機関や関係当局などが恣意的にBitcoinを閉鎖することはできない。中央サーバーやそれに類するものがない以上、閉鎖しようにも相手がいないのだから。こう見る人もいるかもしれません。しかし、そのような考えは幻想にすぎません。

実際には、「個人」のマイナーはすべて、プール(専門用語で言えば「カルテル」)に組み込まれています。1,000年に1回ずつ巨額の配当を受け取る可能性に賭けるより、少額でも確実に収入を得られる方が望ましいという前提の下(自分ひとりでは、それさえも保証されません)、マイナーはプールに参加するしかない状況です。

大規模マイニングプール間の計算能力の推定分布。出典

上の円グラフは、大規模マイニングプールの上位約20グループを示していますが、全計算能力の50%以上が上位4グループに集中しています。これだけの計算能力を我が物にした人は、Bitcoinを二重支払いできることになります。そうすれば当然、Bitcoinの価値はいくぶん下落することになるでしょう。現に、そのようなことは十分にあり得ます。

しかし、事態はこれよりも深刻です。というのは、マイニングプールと計算能力の大半が、特定の国に集中しているからです。一国の中に位置していれば、計算能力を掌握してBitcoinを乗っ取ることは格段にやりやすくなります。

マイニングプールの国別分布。出典

通説6:ブロックチェーンの匿名性とオープン性は良いことである

引用6:「ブロックチェーン時代において、従来型の『ガバメント1.0』は、時代遅れのガバナンスモデルになりつつある。特に、家父長的で画一的な構造から、ひとりひとりの市民に合わせてきめ細かく調整された政府のあり方に移行していく可能性が見え始めている」

ブロックチェーンはオープンな仕組みで、誰もがすべてを見ることができます。したがって、ブロックチェーンには本当の意味での匿名性はありません。そこにあるのは「偽名性」です。悪意ある人が偽名を使うことによって生じる深刻な問題はさておき、ここでは悪意のない人にとってなぜ偽名性が良くないのか、単純な例を挙げて説明しましょう。私は数BTCを自分の母親に送金しようとしています。母は次の内容を知ることができます。

  1. 任意の時点で私がいくらお金を持っているか。
  2. 私がどれくらいお金を使っているか、さらには、何にお金を使っているか。また、何を買ったか、どんな賭けごとをしたか、どの政治家を「匿名で」支持しているか。

別の例を挙げましょう。私が友だちに立て替えてもらったレモネードの代金をBitcoinで支払ったとします。そうすると、自分のお金に関することすべてをその友だちに教えることになります。些細なこととはとても言えません。すべての知り合いに、自分のクレジットカードの使用履歴を教えたい人はいるでしょうか?過去の履歴だけでなく、将来の取引も知られてしまうことをお忘れなく。

ある程度知られても個人間では許容されるかもしれませんが、企業間ではそうはいきません。会社の取引先、売上、顧客、契約金額、その他のごく瑣末な事柄まで、すべてが公になるのです。取引履歴が丸見えになることは、おそらくBitcoinを使用する上で最も不利益な点の1つでしょう。

おわりに

引用7:「このコネクテッドな世界では、ウェアラブルコンピューティング、モノのインターネット(IoT)センサー…といったマルチデバイスコンピューティングがシームレスにつながりつつある世界に施される経済的な上張りとして、ブロックチェーン技術を有効に取り入れることができるかもしれない」

ここまで、Bitcoinと、Bitcoinで使用されるブロックチェーンの主な短所を6つ挙げました。あなたはこう言うかもしれません。「Bitcoinの弱点を今回の記事で初めて知った。これまで他の人から聞かなかったのはなぜだろう?誰もこの問題に気づいていないなどということが、あり得るだろうか?」

心酔するあまり短所が見えなくなっている人もいれば、技術の仕組みを理解していない人もいるでしょうし、また何もかも理解していながら自分にとっては有利なシステムだと考える人もいるでしょう。Bitcoinを購入した人の多くがBitcoinの良さを宣伝して広めようとしている(ネズミ講のように)理由は、一考に値します。交換レートが上がると当て込んでいるときに、わざわざ良くない面を人に教える必要があるでしょうか?

確かに、Bitcoinの競合通貨がここに挙げたような問題を解決しようとした例もあります。中にはとても良いアイデアもありますが、ブロックチェーンを基準としていることに変わりありません。そしてもちろん、ブロックチェーン技術を通貨以外の用途に使用する事例もあります。しかし、通貨以外の応用例でも、主な短所は解決されていません。

そんなわけで、ブロックチェーンの発明はインターネットの発明に匹敵するほど重要だ、と誰かに言われたら、眉に唾をつけて聞くようにしましょう。