見出し画像

ブロックチェーン基盤に対する予想

お久しぶりです。おしょさんです。
最近、少し時間が空いたこともあり、ブロックチェーンの基盤をいくつか触っていたのですが、Zerochainを構築するのに利用したSubstrateが有名になってからブロックチェーン界隈が面白いことになっていますね。

今回は、現状から将来ブロックチェーンの基盤がどういう風に変わっていくのかについて、いろんな人も書いているので、自分も予想をツラツラと書いておこうと思います。

1. 過去〜現在

ブロックチェーン期待度としては、上記の図(出典:ガートナー)のように、現在、期待のピークから幻滅期に移行しようとしていると言われています。この間に起こったブロックチェーンな変遷を追ってみた結果を記載します。

Bitcoinの出現
ブロックチェーンは、サトシナカモトのホワイトペーパーに記載されたBitcoinから始まりました。金銭交換の分散システムとして構築されたBitcoinは、今でこそ受け入れられていますが、当時は懐疑的なものだったんだろうなと思います。というのも、経済システムの根幹に関わるようなシステムが、インターネットを跨って構築された分散システムで安全に運用できるような仕組みが懐疑的なものだったと予想できるからです。ただ、何度か攻撃され、問題が起こりながらも年単位の運用実績を得られた結果、「P2Pネットワーク」や「コンセンサスアルゴリズム」、「電子署名」の仕組みで構築された分散システムがインターネットを跨って運用できるブロックチェーンという技術として認識されました。

Ethereumによる汎用化
Bitcoinにより、インターネット上での分散システムの運用ができることが証明された後、汎用的なシステム構築をするための研究が行われていました。この中で通貨システムから、「チューリング完全」や「ステートマシン」といった計算機数学のロジックを抽出することにより、汎用的なサービスを分散システム上で構築できる基盤として登場したのがEthereumです。このEthereumによって「SmartContract」という言葉が生まれ、ブロックチェーンが分散システム上にサービスを構築できるフレームワークとして進化していきました。

ICOの乱立とスケーラビリティ問題
Ethereumの開発初期に、Bitcoinから資金調達を行い、ローンチ時に通貨配布を行う「ICO(Initial Coin Offering)」が実施されたことで、サービス構築のための開発資金を得る方法がビジネスモデルが構築されました。この結果、Ethereumを用いてサービス開発を行うプロジェクトに対して資金流入が活発化され、既存のブロックチェーン基盤にスケーラビリティ問題が発生しました。この解決策として、「DAG(Directed Acyclic Graph)」を採用し、トランザクションを効率的に実行する技術がEthereumで開発されたり、IOTAといった高速にトランザクションを捌くことに特化した基盤が登場しました。また、他にもトランザクションのMercle Tree構造を上手く利用した「サイドチェーン/オフチェーン」や、コンセンサスアルゴリズムを高速化するための「PoS(Proof of Stake)」や「BFT(Byzantine Fault Tolerance)アルゴリズム」、チェーンを分散管理する「シャーディング」の研究が進み始めます。また、サービス実験を容易にできる環境として、Hyperledger Fabricのようなコンソーシアム型のブロックチェーンが登場しました。

現在
上記に記載した、「サイドチェーン/オフチェーン」や「コンセンサスアルゴリズム」、「シャーディング」といった技術については、実装案が提示され、採用されようとしています。また、これらの開発が年単位で行われた結果、Ethereumから離れ、独自技術で構築された様々な基盤が登場しました。例えば、アカウントに権限管理を付与する等の変更が加えられサービス用の基盤として構築されたSteemブロックチェーンや、その基盤を汎用化させたEOS.IOが有名です。他にも、こういった基盤間でもトークンを交換できるようにする「インターオペラビリティー」技術としてCosmosやInterlederが登場したり、通貨交換という機密性の高い情報を秘匿化できるZCashといった基盤が研究開発されています。また、こういったブロックチェーン基盤が乱立された結果、モジュール化して組み合わせることで基盤自体を構築できる「Substrate」の開発が開始したのも見逃せませんね。

2. 個人的な予想

結論から述べると、EthereumやEOS.IOといった汎用的なブロックチェーン上に既存システムを置き換えることができるような技術の開発が長引いた分だけ、SubstrateやPolkadotといったブロックチェーン基盤の乱立とインターオペラビリティー技術が台頭する可能性があると考えています。そして、今のところ、下記を解決する知見の共有が進むことにより、SubstrateやPolkadotのような思想が勝つのではないかと思っています。

ノードの分散化とブロックの保持
ブロックチェーン基盤が乱立することによる問題として、運用されるノードの寡占化とブロックを保持するノードが少なくなることによる障害耐性の低下が発生します。これらの問題は、サービス用の基盤の方では問題となりませんが、将来的に他の基盤から利用されることに特化された基盤が登場すると、今のEthereumのようなステークホルダーからの合意が必要な基盤が必要となり、問題となると予想できます。また、ノード運用に関するインセンティブ設計についても、基盤が分散化されることでトークンが統一的な通貨となり得ないので、別の形でのインセンティブ設計が必要となると考えています。

トークン以外のデータ交換
Ethereumでは情報の保持にNFT(Non-Fungible Token)が採用されることが多いですが、EOS.IOやHyperledger Fabricのような基盤では、開発を簡易にするために独自のKVS用のデータベースが用意されており、これらのデータを利用してサービスを構築できるようになっています。こういったシステムで構築されたサービスのデータを利用することができれば、コントラクトの開発コストの削減等が見込まれるため、将来的にトークン以外のデータ交換といった技術が必要になると考えています。

3. おわりに

ブロックチェーン基盤に関する個人的な予想をツラツラとポエム的に書いてみました。ちなみに、個人的には、今のブロックチェーン技術の進化については、オペレーティングシステム(OS)の研究開発と似ている部分が多いと考えています。具体的には、計算機能に特化したコンピュータの開発(Bitcoin)から始まり、メインフレーム上の制限されたアプリケーションが稼働する汎用機の開発(Ethereum)が行われ、ハードウェアの性能向上に伴うファイルシステムの改良(DAG)やデータベース等の機能特化型のOS開発(EOS.IO等)が発生し、これらのモジュール化(Substrate)が行われた結果、肥大化したカーネルを分離してネットワーク内で分散して協調動作するマイクロカーネルの開発(インターオペラビリティ)がOSの研究開発として行われました。

ただ、現状、OSの研究開発がマイクロカーネルではなく、LKM(Loadable Kernel Module)のような解決策や肥大したカーネルの影響を無視できる程度にハードウェアが高性能化した結果、Linuxのようなモノリシックカーネルが一般的に利用されていることに対し、予想がSubstrate側に寄っているのは、ブロックチェーンはインターネットを跨った分散システムであるという点です。ネットワーク内で統制が取れるマイクロカーネルとは異なり、ブロックチェーンは統制を取ることが難しいという違いがあるため、分散システムの設計の基本となる「機能を増やすのではなく、なるべくできないことを増やしていきながらソフトウェアを構築する」という原則に沿う必要があると思っているためです。このため、サービスに適用しようとすると、コンセンサスアルゴリズムやデータベースといった部分は選択できるようにしないといけないので、Ethereumのような基盤は生き残りながらも主流ではなく選択肢の1つになるのではないかと考えています。

この記事が気に入ったらサポートをしてみませんか?