多くの人は分散化を知っているだけで、DAppsを本当には理解していない

著者: Robert Mao
編集 Pan Yubo
「分散型アプリケーション」(DApps)は現在のブロックチェーン業界で注目を集めていますが、調べてみると、今のDAppsの多くはギャンブルや投資詐欺まがいのものです。さらに心配なのは、DAppsが「ブロックチェーン」に続く、定義が曖昧で分かりにくい言葉になり、さまざまな誤解が広がっていることです。
Chain Catcher(ID:iqklbs)の依頼を受け、ArcBlock創業者兼CEOのRobert Maoが本稿を執筆しました。中央集権化と分散化の発展史から、DAppsの現状、突破口、方法を読み解きます。この考察が皆さんのヒントになれば幸いです。

01 「中央集権化」と「分散化」の盛衰
コンピューターソフトウェアの応用は、「中央集権化-分散化-再中央集権化-再分散化」と変化してきました。Internetは米国防総省の研究計画ARPANETから生まれました。中央の軍事司令部が一つしかなく、ソ連の核兵器で破壊されれば全国の指揮系統が麻痺するため、分散してデータを共有するネットワークが必要だと考えられたのです。そのため、Internetの設計思想には分散化が根付き、TCP/IPを含む初期の多くのプロトコルもこの考えに基づきました。
その後、文字の入出力しかできず、プロセッサーやハードディスクを持たない文字端末が登場しました。シリアル接続したホストがすべての処理を担います。複数ユーザーがホスト資源を共有するタイムシェアリングOSも現れました。端末もOSもホストなしでは何もできず、ソフトウェアが中央のコンピューターだけで動く中央集権の時代になりました。
パーソナルコンピューター(PC)の時代になり、初めて本当の意味で分散型アプリケーションが登場しました。かつてのPC用「スタンドアロン」ソフトは、ある意味すべて分散型アプリです。PC時代の最重要プロトコルは「ファイル」でした。「ファイル」という共通言語により、無数のPCに分散したアプリへ新しいアプリをインストールし、結果を別のアプリへ渡せます。中央ホストに依存しない分散化の時代が再び訪れました。
「ファイル」交換では需要を満たせなくなると、「クライアント・サーバー構成(C/S構成)」が普及しました。インターネット以前に企業向けを中心に登場し、今も使われています。分散型からやや中央集権型へ進んだ形ですが、各C/Sシステムのクライアントとサーバーは、基本的に別々の「言語」(プロトコル)を話します。
ブラウザーが普及すると、それがより一般的な標準言語(HTML)を理解する汎用クライアントだと認識されました。アプリをさらに集約し、開発、デプロイ、保守を容易にする「ブラウザー/サーバー構成(B/S構成)」が広まりました。
近年では、2005年の「Web 2.0」がデスクトップインターネット時代で最も分散化に近い動きでした。BlogはRSSという簡潔でオープンなプロトコルを使う分散型の出版・メディアです。個人をノードとするソーシャルネットワークが発展し、FOAF、Microformat、OpenID、OAuthなどもこの時代に生まれました。
つまり、分散型アプリケーションの鍵は「プロトコル」です。TCP/IP群と、その上の各種アプリケーションプロトコルが世界中の開発者による今日のインターネット構築を可能にしました。
ところがGoogleとFacebookは「Web 2.0」の分散化運動を戦略的に消し、インターネットの中央集権化を極限まで進めました。中国の大手企業も閉鎖的な独占勢力を築きました。ブラウザー戦争でMicrosoftが独占的地位を使ってNetscapeを破ったのが公然の策略なら、GoogleとFacebookによる「Web 2.0」の絞殺は輝かしいイメージに隠された策略です。データ可搬性、分散型コンテンツ、ソーシャルネットワークは彼らの手で失われたのに、私たちは今も彼らを革新的でオープンな貢献者だと考えています。
もちろん、GoogleとFacebookが多くのオープンソース製品を提供し、ブロックチェーン時代の有力な道具になったことは認めなければなりません。BitcoinのLevel DBはGoogle製、EthereumとArcBlockのRockDBはFacebook製です。技術の運命は時に、このような循環と反復をたどります。
中央集権化と分散化は相対的でもあります。Bitcoinのネットワークは多数のノードに分散し、PoWでは攻撃に全体の50%超の計算能力が必要です。少数ノードの停止や攻撃では安全性と正常動作に影響しないため、ネットワークは分散型です。
一方、ソフトウェアの開発・配布ではBitcoin Coreチームだけが新しいコードを公開できます。安全で信頼できる公開手順を示し、誰もが貢献、フォーク、変更できるオープンソース方式でも、配布とアップグレードは比較的中央集権的です。
アプリとしてのBitcoinはピアツーピア電子現金です。ウォレットアドレスはユーザーが作り、発行や承認は不要です。秘密鍵なしに資産を奪えず、送金に第三者は介在せず、誰も取引を禁止・改ざんできません。記録はブロックチェーンに永久保存され、改ざん、削除、隠蔽もできません。Bitcoinは真の分散型アプリです。
興味深いことに、ネットワークとアプリの高い分散性が認められた結果、世界中が一つのBitcoinというネットワークサービスを認めました。この意味では高度に中央集権的です。ある観点で高度に分散すると、その単一性が別の観点では中央集権性を強めます。両者の区分や定義は絶対ではなく相対的で、変化しながら複雑に絡み合います。
02 現在の「中央集権化」と「分散化」の競争
インターネットの中央集権化を極限まで進めた理由は何でしょうか。
私は次のように考えます。
- 閉鎖的で中央集権的なアカウント体系。多くの企業がまず大量のユーザーと情報を集め、広告や宣伝で利益を得ようとしました。ユーザーを排他的に奪い、自社プラットフォームへ可能な限り囲い込みます。
- 大量に「車輪を再発明」し、互換性のない車輪を「競争障壁」にすること。InternetとWebの原点に反しますが、一般的な競争手段になりました。スマートフォンには10個のメッセージアプリ、銀行アプリ、映画アプリがあり、提供者以外の役割はほぼ同じです。
- ユーザー自身のデータを無料または極めて安価に占有し、移行を禁止または妨害すること。時間、関心、帯域幅を最大限に奪い、絶えずデータを得ます。
- プロトコルを守らず、公開せず、一部だけ公開して「オープン」を装うこと。「オープン」でユーザーを得て、閉鎖的な実装で移行の難度と費用を上げ、囲い込みます。
しかし、分裂と統合は繰り返します。分散化を代表するブロックチェーンは、アプリを再び分散化へ向かわせています。両者は相対的であり、ブロックチェーンもインターネットとコンピューター技術の成熟から進化しました。近年の帯域幅と性能の急成長がなければ発展できませんでした。
技術以外にも、相次ぐ個人データの大規模漏洩、Facebookなどのプライバシー軽視、欧州GDPRの施行といった要因が、分散化の価値を再認識させています。
DAppsとブロックチェーンは、中央集権的な独占が抱える4つの問題を根本から解決できます。
- 統一され、自主的で、分散型のID。
- 「車輪」を作り直さず、大いに再利用すること。
- データは完全にユーザーのもので、ユーザーが主導権を持つこと。
- 完全で包括的なオープンプロトコルと、可能な限りの前方互換性(無意味なフォークを生まないこと)。
DAppsには、まず自己主権型の個人IDが必要です。自分のID、関係、データ、資産を他人でなく自分が管理します。次に、デジタル通貨などの資産が仲介者や承認なしにピアツーピアで移動すること。そしてデータを移行でき、誰に利用させるかを自分で決めることです。ブロックチェーン以前には解決不能でしたが、これらの突破が次のコンピューター技術の鍵です。
03 DAppsの発展を理解する
残念ながら、今日DAppsを名乗るアプリの大半に分散型の性質はなく、ブロックチェーンのスマートコントラクトの一部機能を使っているだけです。
CryptoKittyのようなゲームはEthereum ERC721の特徴を使うだけで、フロントエンドや設計は従来のWebゲームとほぼ同じです。Ethereumのスマートコントラクトで猫の唯一性を保証する点が最大の特徴です。
ギャンブルゲームもスマートコントラクトによって公開・透明で操作不能だと思わせます。しかし、設計や技術の未熟さから、攻撃や資産詐取を受けやすいものが多く、従来ゲームより不合理、不公平で危険です。将来は成功し、遊び応えがあり、ブロックチェーンを十分生かす分散型ゲームが必ず登場するでしょう。しかし、安全性も体験も悲惨な現在のものではありません。
なぜDAppsはまだ爆発的に普及していないのでしょう。新しいものが普及する前には長く暗い前夜があります。人々は爆発的成長だけを見て、そのための位置エネルギーがゆっくり蓄積する過程を見落とします。
iPhone以前にもスマートフォンの概念は10年以上存在しました。著名投資家Peter Thielは『Zero to One』で、新製品が急成長するには既存の解決策より10倍以上優れている必要があると述べています。分散化自体を目的にしてはいけません。解くべき問題を見つけ、分散型の方法が他よりN倍優れるか、規則を破ることで「不公平」な競争優位を得ることが鍵です。これに答えられれば、そのアプリは自然と人気を得ます。
例えば、ピアツーピア暗号通貨Bitcoinは無数の規則を破り、実際の問題を解決したため、Paypalなど従来のデジタル通貨や決済に対して、ほぼ不公平な優位性があります。遅く、使いにくくても、過去10年で急成長しました。
分散型アプリの開発者とプロダクトマネージャーは、まず問題の発見と解決に集中し、その後でユーザー体験などに取り組むべきです。特に今は、一般ユーザーが容易にこの世界へ入り、新製品で従来の問題を解決できるようにすることが重要です。
ブロックチェーンの歴史はわずか10年で、DAppsが依存する環境はまだ原始的です。EOSはEthereumより速いものの、より良いか悪いかは定まっていません。Ethereumを模倣する他のパブリックチェーンも、機能するかを時間と結果で証明する必要があります。
今日のブロックチェーン技術は幼年期で、まだ十分に成熟していません。それでもArcBlockをはじめ、力と信念を持って実直に取り組むチームが昼夜努力し、現在の技術的な困難を一日も早く過去のものにしようとしています。
このページに関わるもの
用語
-
Dapp
重要な状態が単一の運営者のデータベースだけに存在しないアプリケーション。何をもって分散とするかはプロジェクトごとに大きく異なるため、有用な問いは「どの部分が外部の人に検証できるか」です。