Orbs

ブロックチェーンの仮想化:Virtual Chainと標準シャーディング?

Virtual Chains

Orbsインフラの革命的な要素のひとつが、ブロックチェーンの仮想化です。仮想ブロックチェーンを活用することで、Orbsネットワーク上のDAppは、専用ブロックチェーン、ネットワーク全体での非中央集権的なブロック生成とそれに伴うハイレベルなセキュリティといったメリットのすべてを享受できます。

ブロックチェーンの仮想化とは?

仮想化とは、あるコンピューターシステム内にある実際のプログラムのために仮想環境を作り出すことを指しており、プラットフォームやストレージの分野で頻繁に使われている手法です。あるオペレーションシステム上に別のオペレーションシステムを稼働させ、その上にプログラムをホストするようなプロセス(例:iOS上でしか稼働しないプログラムをWindowsのPC上で稼働させる)は仮想化の典型例と言えるでしょう。ビジネスでは、ひとつの大容量サーバーを分割したり、顧客それぞれに仮想環境を提供したりといった形で仮想化技術が活用されています。

Orbsはこのコンセプトをブロックチェーンに応用し、Orbsネットワーク上のそれぞれのDAppが個別の独立したブロックチェーン「Virtual Chain」(バーチャルチェーン)を利用できるような環境を実現しようとしています。Virtual Chainでは個々のDAppの情報が独立した形で記録される上、あるDAppでトラフィック過多になっても、その影響が他のDAppにおよばないようになります。

インターネットの黎明期にはシェアードホスティングが常識で、複数のウェブサイトが同じサーバーにホストされていました。そのため、あるウェブサイトがトラフィック過多になると、同じサーバーにホストされている他のウェブサイトの動作が遅くなるという問題が発生していました。しかし専用のサーバー(プライベートホスティング)が登場したことで、各ウェブサイトに専用のネットワークとストレージが割り当てられるようになったのです。これにより、同じサーバー上にホストされた他のサービスの回線容量を使ったことで発生していた追加の通信料という概念は突如、消えてなくなりました。

とは言っても、自分たちだけの専用サーバーを立てるのはコスト面でメリットが見いだせないこともあります。そこで誕生したのがサーバーの仮想化、つまりVPS(Virtual Private Server:仮想専用サーバー)です。

VPSの登場により、共有サーバーを使いながらも、それぞれのウェブサイトを独立した仮想環境でホストできるようになったため、あるサイトにおけるトラフィックの増大やセキュリティの脅威といったリスクの影響を他のサイトが受けないようになりました。またリソースの配分も効率化され、コンピューティングパワーやストレージはネットワーク上の個々の仮想サーバーごとに設定できるようになり、今で言うAWSのクラウドコンピューティング・ストレージのようなサービスの誕生につながりました。

Orbsの「仮想専用サーバー」 vs イーサリアムの「シェアードホスティング」

Orbsは仮想サーバーのアイディアを活用し、ブロックチェーンの効率化を目指しています。これまでブロックチェーンは、昔のインターネット、そしてシェアードホスティングのような使われ方をしていました。

しかしOrbsではVirtual Chainの存在により、インテルジェントシャーディングによる高速化や、独立した仮想ブロックチェーンによるセキュリティの向上と柔軟なカスタマイズオプションを実現できます。各DAappは、さまざまなレベルのコンピューティングパワーやストレージ容量を選択でき、さらにOrbsネットワーク上の他のDAappで発生したセキュリティ障害(他のDAppがホストされたVirtual Chain内での障害)の影響も受けずにすみます。

Virtual Chain:インテリジェントシャーディング

Intelligent Sharding: Virtual Chains and Virtualization vs Shared Hosting and Random Sharding on Ethereum

Orbs Intelligent Sharding vs. Ethereum Sharding

Virtual Chainには、インテリジェントシャーディングという、もうひとつのメリットが標準的に備わっています。これまでのシャーディングと違うのは、Orbsのシャーディング機能がインフラの設計時点から組み込まれているという点です。ユーザーはランダムにではなく、どのくらい他者とのコミュニケーションが発生するかによって(つまりはDAppごとに)ロジカルに分けられるため、Orbsのシャーディングは、インテリジェントシャーディングと呼ばれています(同時に各Virtual Chainに実装されている個別のシャーディングとも共存可能)。そのため複数のDAppを横断した取引が発生する確立は極めて低いと言えます。

規模の大きなデータベースにおいては不可欠なプロセスであるシャーディングは、データベース全体を小さなピース(シャード)に分け、個々のデータを高速でスムーズ、かつ効率的に処理する仕組みのことを指しています。ブロックチェーンにおいては、ひとつのシャードの中にごく一部のノード、ユーザー、取引が含まれることになります。

ブロックチェーンネットワークのシャーディングは、スケール化のための重要な要素として考えられています。イーサリアムもネットワーク全体の効率化のため、PoS(Proof of Stake)への移行と共に、シャーディングの実装を予定しています。一方現在はどうなっているかというと、イーサリアムネットワークでは、ひとつひとつの取引の処理にネットワーク上のすべてのノードが携わっています。これは時間とエネルギー消費量、どちらの点においても非効率的です。

コンピューティングの世界では、シャーディング自体はデータをセグメント化(小さなピースに分割)することで負荷を分散させるという広い意味をもっています。一方ブロックチェーンの世界では、一般にエンドユーザーとノードを小さくグループ分けすることがシャーディングと呼ばれています。

シャーディングによって一部の取引の処理は大幅に高速化しますが、新たな問題も発生します。取引は異なるシャードのユーザー間でも発生しえるため、複数のシャードを横断する取引では、別のシャードに属するノードが取引承認のために情報を交換しなければならなくなります。しかしOrbsでは、取引がDAppごとにカテゴライズされるため、複数のシャードを横断する取引が発生する確率を抑えることができます。というのも、同じDAppを利用しているユーザー(同じVirtual Chain上のユーザー)同士の方が、異なるDAppのユーザーよりもやりとりする可能性が高いからです。

つまり個別のVirtual Chain上にあるDAppのアクティビティを隔離することで、各ネットワークはより効率的になるということです。

セキュリティ:隔離とシェアードネットワーク

Virtual Chainをベースにしたインテリジェントシャーディングの実装により、各DAppのセキュリティはさらに向上します。たとえば、あるDAppが攻撃されたり、トラフィック増加の影響を受けたりしたとしても、そのシャード内でのみ取引スピードや効率性が低下することになり、他のDAppはその影響を受けません。

しかも取引承認にはOrbsネットワーク全体のノードが関わっているため、全体としてのセキュリティは保たれたままです。これはRandamized Proof of Stakeによるもので、すべてのノードがブロック生成に携わりながらも、少数のノードからなるコミッティーが実際の取引承認を行うからです。

柔軟性とカスタマイズ性

DAppが違えば当然そのニーズも違い、さらに個々のニーズは日々変化します。しかしその変化に応じてインフラをアップデートしていては(特にトークンの存在を考えると)非効率極まりません。OrbsではVirtual Chainの存在により、ネットワーク上のDAppは専用のブロックチェーンを活用しているかのようなメリットを享受できます。

具体的には、個々のDAppがコンプライアンス機能やセキュリティ要件、コンピューティングパワー、ストレージ容量といったVirtual Chainの設定を独自に調節できます。そのため、必ずしもネットワーク全体のガバナンスと調和をとる必要がありません。

各DAppが隔離された状態にあるため、あるDAppがスケールしたとしてもネットワーク全体への影響は限定的です。逆に他のDAppがスケールしても、あなたのDAppのスピードや効率性は保たれます。