見出し画像

ブロックチェーンは非中央集権システム――『Web3とは何か』by岡嶋裕史 第1章 ブロックチェーン②

過去の連載はこちら。
岡嶋さんの新書最新刊。早くも5刷です。

第1章 ブロックチェーン② 

非中央集権システム

2の説明に入っていこう。「非中央集権であること」だ。

ここは歴史的な説明も必要かと思う。

インターネットやパソコン文化は、もともと非権力志向である。反権力というほどとんがってはいない。権力にしばられないところで、自由気ままにやりたいといった手触りだ。

それは法や規範に頭を押さえられず、機械や技術の可能性を限界まで試してみたい研究者、開発者の気質や、ヒッピー文化、拠点になった地域の温暖な気候などから影響を受けている。カリフォルニアイデオロギーなどとも言う。

アップル創業者のスティーブ・ジョブズも電話のタダがけで腕を磨いたくちである。

だから、システム技術、特にインターネットに関連した技術の流れを見ると、ところどころで非中央集権を謳うものが現れる。ブロックチェーンもその中にある。

P2Pは非中央集権システムだ。それはそうだ。役割分担がなく、誰もが同じリソースを持ち、同じ仕事を行う。原始共産制のようなものである。作った時点で変なしかけでも埋め込まれていなければ、みんな平等だ。

日本で最も有名なP2PシステムはWinnyだろう。ファイル共有システムである。Wiinyの開発者は若くして世を去ってしまったので、どのような意図でWinnyを作ったか、正確なところはもうわからない。ただ、匿名でファイルを交換できる画期的なP2Pシステムではあった。これを突き詰めていけば、日本がブロックチェーンの発信源になる可能性もあったと思う。

しかし、Winnyはその使われ方が不幸であった。匿名のファイル交換システムであったたことと、その登場時期から、児童ポルノコンテンツを交換する温床となってしまったのだ。

管理者がいるタイプのシステムであればまず管理者が捕まるだろうし、権威サーバがある構成ならその権威サーバを差し押さえて壊してしまえばポルノの交換は止まる。だが、P2Pであったがゆえに極めて止めにくいシステムだったのだ(今も動いている)。非中央集権システムに永続性があると主張する根拠にも使われる。

Winnyでは開発者が逮捕され、後に無罪になるもののそのキャリアを台無しにした。日本における分散システム開発を萎縮させてしまう効果もあった。
いずれにしろ、ある時期において突出してWinnyは使われたのである。

意志決定の方法

だからといって、P2Pにすればどんなシステムも非中央集権で民主的になるわけではない。Winnyにしろ、非中央集権ではあったが、特に民主的なシステムだったとは思わない。

たとえば、何かを決めなければならないことがある。権力やリソースの配分が偏っているなら簡単である。集中型ならメインフレームがこうだと決めれば、各端末はそれに従わざるを得ない。

クライアント/サーバ型は集中型と比べればリソースが分散しているが、やはりサーバに多くの権限がある。サーバの数が多いにしても、サーバが何かアクションを起こせば影響はクライアントに及び、クライアントはそれに従う。

ところがP2Pではみんな平等である。みんなの意見が合えばよいが、意見などあわないほうがふつうである。P2Pの意志決定は大ごとだ。だから、P2Pといっても、実は作った時点で何らかのルールが組み込まれていて、そのルールに参加者がしたがうことが多い。

それを「やはり作った奴が偉いのか」と捉えるか、「ルールは明示されていて、みんなそれをわかった上で参加する。作った時点で開発者の手を離れるから、開発者の恣意で参加者が振り回されることはない。平等だ」と考えるかは時と場合による。

ブロックチェーンでも、この部分が明確に定まっているわけではない。「非中央集権であること」をどのように実装していくかは、ブロックチェーンを利用したそれぞれのシステムが選ぶ。

ただ、ブロックチェーンにとって「非中央集権であること」は中心教条なので、何らかのしくみで非中央集権であることを目指すのは間違いない(ブロックチェーンを利用してはいるが、システムの全体像としては中央集権になっているものは多々ある)。

ビットコインで言えば、ここは「ビットコインに貢献した者」かつ「貢献競走に勝った者」が意志決定権を握るしくみになっている。

ビットコインの例

もう少し具体的に説明しよう。

ビットコインがシステムとして取り扱っているのは、トランザクション(取引:ビットコインの場合はお金の流れ)だけである。ほんとうにそれだけだ。残高のような概念はビットコインにはない。お金が発生して、その後どこからどこへ流れたのか、それだけが延々とブロックに記述されている。

いわゆる口座であるところのビットコインアドレスは自分で好きに作ることができるので、身分証明がなくてもお金の取引に参加できるし、トランザクションのたびに口座を使い捨てにしても誰も怒らない。「透明でありながら、匿名」なのだ。

だから、「残高を知りたいぞ」と思っても直接的にはわからない。管理していないからだ。お金の流れをたどっていくことで、「このアドレスにはいま送金できるお金(UTXO:Unspent Transaction Output:送金権)がいくらある」とはじめて理解できる。

ビットコインはお金のしくみであるから、「民主的に意志決定」する場面は、そのお金の流れが正当かどうかを判断するときになる。

金融機関であれば管理者が承認すれば、そのお金の流れは正式なものとして処理され、実際に送金がなされる。この場合、管理者はある種の専制君主のような権利を持っている。

大きな権利を持てば誰しも腐敗するし、悪意がなくても間違いをするかもしれない。大きな権限を持ったものが間違うと被害は甚大なものになる。だからこれをみんなでやろうというのだ。政治における民主主義といっしょである。

10分おきに検証が繰り返される

ブロックチェーンの特徴の3つめ、「改ざん困難であること」とも絡んでくるので、後でそちらも参照していただければと思うが、「みんなで決める」にはみんなが情報を知っていなければならない。何も知らないことについて判断しても、ろくな結果にならないからだ。

だからビットコインにおけるお金の流れは、みんなが知っている。1つめの特徴で議論したように、参加者全員がビットコインのデータを保有しているので、特に暗号化などをしなければみんなが情報を参照することは簡単である(みんなが持っていることと、みんなが知っていることは必ずしもイコールではない。先述したWinnyでは共有するファイルは断片化され、暗号化されていた。すべてのファイルを全員で持つとストレージを圧迫するし、どんなファイルを持っているか特定できてしまうと、たとえば自分のストレージに違法ファイルが送り込まれていた場合、自分の意志で保有していたと判断されるかもしれない)。

現在のビットコインは2009年から運用されているが、10分おきに検証が繰り返されている。2009年の最初の取引から、すべてのトランザクションをたどって、矛盾がないかを確認するのだ。

画像2

図 ビットコインのデータは誰でも見ることができるが、見やすく加工して表示してくれるサイトで試してみるといい。これはchainFlyer。ブロックのつながりが見て取れる。上から降ってくるダイヤモンド状のアイコンが1つ1つのトランザクションを表しており、まだブロックに収められていない(検証されていない)トランザクションが床に散らばっている。出典 https://chainflyer.bitflyer.jp/

画像2

画像4

図 1つ1つのトランザクションのなかみも、すべて見ることができる。これはブロックに収められていない未処理トランザクションを見ているので、「未確認」(まだ検証していない)の注意書きがある。出典 https://chainflyer.bitflyer.jp/

気の遠くなる作業量に思えるかもしれないし、そこそこのiPhoneのストレージが一瞬で埋まってしまうほどのデータ量であることも間違いないのだが、現在のサーバの能力を考えればこの検証作業自体は一瞬で終わる(この辺のより詳しいメカニズムを知りたい方は、拙著『ブロックチェーン』(講談社ブルーバックス)を参照してほしい)。

そしてこの検証作業を一番に終え、延々と続くブロックチェーンに最新のブロックを追加することに成功した者が、検証の報酬であるビットコインを手にするのだ。これがビットコインが新たに発行される唯一の場面である。

ビットコインの量は徐々に増え続けているがインフレを抑制するために数が決まっている。新規発行のタイミングは、検証のごほうびだけなのだ。

ビットコインの採掘者はクイズを解き続ける

ところが、一瞬で検証が終了してしまうと、「終わりました! ビットコインをください」と手を挙げる者が同時に多数現れてしまう。それは困る。

そこで、ビットコインの検証作業にはクイズが組み込まれている。具体的にはナンスと呼ばれる値を発見しないといけない。そしてこのナンスは、理屈では導くことができないしかけになっている。試行錯誤を繰り返して、偶然発見するしかないのだ。

クイズの難易度は常に自動的に調整され、だいたい10分で正解が出てくるようになっている。

画像4

図 https://btc.com/ja/btc/insights-difficulty

この図はビットコインの検証作業の難易度グラフである。

最初は個人が所有するコンピュータでも一山当てられる可能性があったが、世界中の人が参入してくるとそんな夢は儚く消えた。もう組織化されたマイニングプールでないと検証作業に成功することは不可能である(ビットコインに価値がないと感じれば、人が減って難易度が下がる。暴落時に下がっている)。

画像6

図 各マイニングプールが持つ、計算能力。上位のマイニングプールが計算能力(検証に成功する可能性)を独占していることがわかる。

このしかけがあるがゆえに、世界各国の検証作業者(ごほうびにビットコインをもらうのが目的なので、マイナー:採掘者と呼ばれる)は激烈な計算競争をしているのである。

熟議が済んだ状態

クイズの答えを探す工程と検証作業はセットになっているので、なかなか正解(ナンス)を発見できなければ世界中の人が検証作業を何億回、何兆回と繰り返すことになる。いやが上にも検証作業の精度は上がる。承認された結果は、極めて多くの参加者が何兆回と検証を繰り返した末のものである。民主主義で言う熟議が済んだ状態と言える。

仮に1番に名乗りを上げた人の検証結果に疑問があれば、その検証結果を導くために必要なすべてのデータはブロックチェーンに収められており、検証結果そのもの(新たに追加されたブロックだ)もすべての参加者に送られる。好きなだけ再検証して不正を暴けばいい。不正を暴いたマイナーは不正者が新しく追加したブロックを無視して、本来の検証が済んでいるチェーンの末尾に自分が検証したブロックを追加してネットワークに放流する。

するとある瞬間には、不正チェーンとまっとうチェーンの2種類がビットコインのネットワーク上に併存することになるが、その他大勢のマイナーは2種類を検証してまっとうだと判断した方のチェーンに自分のデータを足していく。みんながまっとうだと考えたチェーンはどんどん伸びて本流になっていき、みんなが不正だと見限ったチェーン(オーファンブロック:孤立ブロック)は新たにブロックが追加されず停滞する。ビットコインネットワークでは長いチェーンが正義なので、短いチェーンは忘れられていき、当然そこに記載されているデータも無視されるようになる。

口角泡を飛ばして激論を戦わせるのとは違うやり方だが、みんなの熟議によって、どのチェーンが真正かを意志決定したわけである。(続く)

過去の連載はこちら。


みんなにも読んでほしいですか?

オススメした記事はフォロワーのタイムラインに表示されます!

光文社新書ではTwitterで毎日情報を発信しています。ぜひフォローしてみてください!