
アプリケーションRollup技術の詳細解説:高スループットAPPが主流採用へ向かう鍵
TechFlow厳選深潮セレクト

アプリケーションRollup技術の詳細解説:高スループットAPPが主流採用へ向かう鍵
Rollupは、高スループットアプリケーション(特に完全にオンチェーンのゲーム)を拡張するための現時点で最適なソリューションである。
執筆:Mohamed Fouda
編集:TechFlow

アプリケーションRollupは、特定のイーサリアムアプリケーション群をスケーリングする上で明らかに優位な存在になりつつある。これらのアプリケーションは許可不要性や強固な所有権保証という利点を享受しつつも、すべてのユーザーが同時に相互作用する必要がない。完全チェーン上ゲーム(fully on-chain games)が最良の例である。オンチェーンゲームは、ゲーム資産に対する強力な所有権、匿名での参加およびゲーム改変の許容といったメリットがある。しかし、ほとんどのゲームではすべてのプレイヤーが同時に相互作用する必要はない。他にもNFTマーケットプレイス、永続的交換取引(perpetual exchange)、オンチェーンAI推論など、アプリケーションRollupによるスケーリング戦略から恩恵を受けることができるアプリケーションが存在する。

実際、多くのユースケースにおいてアプリケーションRollupはすでに好まれる実装形態となっている。しかし、EVMRollupのような標準的なRollup実装には依然として重要なスケーラビリティ制約が存在する。それらはトランザクション処理能力(スループット)で秒間約100件程度にとどまる。これはゲームの種類によっては十分な場合もあるが、大多数のゲームは数千人以上の同時接続プレイヤーをサポートするためにさらに高いスループットを必要とする。本稿では数十万の同時接続参加者に対応可能なアプリケーションRollupの拡張手法に焦点を当てる。各手法について、適したアプリケーション/ゲームのタイプと直面する課題を解説する。
水平スケーリング
水平スケーラビリティはアプリケーションRollupを拡張する最もシンプルな方法である。ただし、この簡便さは組み合わせ可能性(コンポジビリティ)の犠牲を伴い、結果として単人プレイゲームなど一部のアプリケーションにしか適さない。
水平スケーラビリティとは、複数のアプリケーションRollup(OptimisticまたはZK)を展開し、すべてのRollup上に同じスマートコントラクトをデプロイすることを意味する。アプリケーションのフロントエンドは、容量、地理的位置、あるいは特定のアプリケーション設定に基づいて、ユーザーをどれか一つのRollupにシームレスに誘導する。Alt Layerは最近、スケーラブルな2048 FOCGゲームを立ち上げることでこの概念を実証した。ゲームのフロントエンドでは、ユーザーが自分の地理位置に基づいてどのRollupに参加するかを選択できる。そのシンプルさとCalderaのようなRollup-as-a-Service(RaaS)プロバイダーの利用可能性により、これらのプロバイダーがRollupの立ち上げや管理に関わるすべてのインフラ作業を処理するため、ゲーム開発者は容易にこの手法を採用できる。

とはいえ、マルチRollup拡張アプローチにはいくつかの問題がある。第一に、Rollupネットワーク間の切り替えである。現在のウォレット(Metamaskなど)では、新しいネットワーク(つまりRollupインスタンス)に接続する際に手動での承認が必要になる。これにより、ユーザーは同じゲームをプレイするために複数の「ネットワーク」に手動で接続する必要があり、プレイヤーにとって困難で混乱を招くUXとなる。幸運にも、EIP-4337やPrivy、0xPassなどの埋め込み型ウォレットといったアカウント抽象(AA)ソリューションにより、この複雑さを解消できる。
もう一つの課題は、Rollup間の移行時にプレイヤーの状態を管理することである。場合によっては、例えば負荷の低下時などに、複数のRollupインスタンスを単一のインスタンスに統合してリソースを節約する必要が生じる。この場合、すべてのアクティブなプレイヤーの状態を新しいインスタンスに移行する必要がある。既存のブリッジソリューション、特にzkブリッジはこの問題の解決に極めて重要な役割を果たすことができる。これらのソリューションを使用することで、プレイヤーのゲーム状態を新しいRollupインスタンスにブリッジしつつ、その状態の有効性を証明したままにすることができる。ただし、現行のブリッジソリューションにおける遅延は、ゲーム用途としては最適ではない可能性がある。
ZKステートチャネル
ポーカーのような多人数ゲームにさらに適したアプリケーションRollupの拡張手法として、ZKステートチャネルがある。このようなゲームでは、プレイヤー間の相互作用は少数(2〜10人程度)のプレイヤーの間で発生する。ゲーム中のやり取りは進行中だけ重要であり、むしろ最終的な結果が重要である。なぜなら、それが各プレイヤーの資産残高に影響を与えるからだ。したがって、この最終結果を共有された永続層に保存することが重要になる。
この場合、アプリケーションRollup自体が共有情報レイヤーを表し、ゲームの結果およびゲーム資産がここに保存される。各ゲームに対して、ZKステートチャネルを起動してそのゲームを支援することができる。ゲーム中、各プレイヤーはトランザクションを生成し、ゲームルールに従っていることを証明するZKPを作成する。他のプレイヤーとの相互作用の証明は再帰的証明によって前の証明と集約される。ゲーム終了時に、最終的なZKPがアプリケーションRollupに提出され、ゲームプレイおよび最終結果の有効性が証明される。これにより、アプリケーションRollup上のプレイヤー状態が更新される。

ZKステートチャネルにより、ゲームの相互作用はオフチェーンに移行される。そのため、ゲーム内のアクティビティやトランザクションはアプリケーションRollupのスループットに含まれない。この方法を使えば、アプリケーションRollupは数千人の同時接続プレイヤーを大規模にサポートできる。アプリケーションRollup上で処理されるトランザクションは、生成されたZKPの検証と状態更新のみとなり、スケーリング係数は100〜1000倍に達する。Ontropyを含む複数のチームがこの技術の開発に取り組んでいる。
この手法の欠点の一つは、プレイヤー自身の端末でゲームロジックを実行し、ZKPを生成しなければならないことにある。通常、これらの証明は軽量であり、Halo2などの最先端の証明システムを用いれば数秒以内に完了できる。しかし、それでもリソースが限られた端末を持つプレイヤーにとっては体験の劣化を招く可能性がある。
この問題を緩和する修正案の一つは、ZKステートチャネル参加者のうち一人を一時的なソータリングノード(ソーター)として指定することである。このソーターは各プレイヤーからのトランザクションを受け取り、対応するZKPを生成し、すべてのチャネル参加者と共有する。この修正は、アプリケーションRollupに対して決済を行う短命なZK L3と考えることができる。Cartridgeチームは、専用ソーター「Katana」を設計することでこのようなアーキテクチャを実現している。
ZKステートチャネル方式は大きな可能性を秘めている。しかし、ZKステートチャネル内の実行環境や再帰的証明の最適化に関するいくつかの未解決問題が残っている。現在のzkEVM環境は効率が悪く、再帰的証明をサポートしていないものが多い。代替案としては、軽量なzkVM、あるいはプレイヤーの可能な行動が限られている場合には、専用のzk回路を使ってプレイヤーの相互作用を処理することも考えられる。
実行環境の変更
アプリケーションRollupを拡張する第三の方法は、Rollupの実行環境を変更することである。EVMの開発ツールが成熟し豊富であるにもかかわらず、それらはゲームのような高性能アプリケーションには不向きである。また、EVMのシングルスレッド実行モデルとストレージモデルはスループット低下を引き起こし、改善の余地がある。
この手法の主な利点は、組み合わせ可能性を犠牲にしたりユースケースを制限したりせずにRollupのスループットを向上できることにある。実行環境がアプリケーションに必要なスループットに到達できる限り、あらゆるWeb3アプリケーションに適用可能である。これはAMM、貸借プロトコル、その他のDeFiアプリケーションなど、共有状態へのアクセスが必要なアプリケーションにとって唯一実現可能な解決策となる。
プリコンパイルによるEVM機能の拡張
まず、RollupはEVM互換性を維持しつつ、プリコンパイルを利用してスループットのボトルネックを一部解消する。そのアイデアは単純である。プリコンパイルとは、計算負荷の高いEVM操作をノードレベルに降ろすことである。数百・数千のEVMオペコードを必要とし、10万Gas以上を消費するような操作を、1つの操作に簡素化し、Gasコストを100分の1にまで削減できる。このようなRollup環境の拡張プリコンパイルは一般的にEVM+と呼ばれる。具体例としては、オンチェーンプライバシーのサポートや、BLS署名などより効率的な署名スキームの実装が挙げられる。たとえば、zkHoldemポーカーゲームでは、専用のFHEおよびzk操作を用いて、プライベートなカード配布と公開を実現している。こうした専用プリコンパイルの開発は、通常、アプリケーションRollupの開発者と、その基盤インフラの展開・保守を担当するRaaSプロバイダーとの共同作業となる。
非EVM実行環境の使用
Rollupの実行環境を改善するもう一つのアプローチは、EVMから脱却することである。これはイーサリアムエコシステムの新規開発者や、「Solidityは複雑なアプリケーション開発に最適ではない」と考える開発者の間で人気が高まっている。
現在、WASM、SVM、Cairo、さらにはLinuxランタイム上で動作するRollupアプリケーションが存在する。これらの大半は、RustやCといった高級言語でスマートコントラクトを記述できるようにする。欠点は、既存のSolidityコントラクトとの相互運用性が失われるリスクがあることである。しかし、EVMとの互換性を維持することは依然として可能である。たとえば、ArbitrumのStylusは協处理器を採用し、StylusコントラクトをEVMと互換させる。この設計により、Stylusはむしろ非EVMよりもEVM+アーキテクチャにより近くなる。

ハイブリッド実行環境
三番目のアプローチは、前述の二つの手法の長所を組み合わせるもので、FOG(Fully On-Chain Gaming)分野で特に支持されている。この手法では、EVM互換性と専用の非EVM実行環境を統合する。非EVM環境は、コアとなるゲームプリミティブの高速実行に特化する。一方で、ゲーム内NFT取引などゲーム資産の管理は、標準的なSolidityコントラクトで処理できる。
この手法の利点は、EVM互換性により、より広範な開発者エコシステムや既存製品との整合性が確保されることにある。また、無許可の組み合わせ可能性も可能になる。開発者はEVM/Solidityスマートコントラクトを追加することで、ゲームロジックを自由に拡張・変更できる。一方で、専用の非EVMゲームエンジンにより、EVMでは達成できない高スループットを実現できる。
このアプローチの具体例として、ArgusのWorld EngineやCurioのKeystoneがある。World Engineは、ゲームロジックの実行を「Game Shard」と呼ばれる別のレイヤーに分離し、EVM互換レイヤーの上にこれを構築する。Game Shardは需要に応じて全体のRollupスループットを調整できるよう、水平スケーリングも可能に設計されている。同様に、CurioのKeystoneアーキテクチャも、高スループットゲームエンジンとEVMを組み合わせてRollupの実行環境としている。このアプローチの課題は、EVMエンジンとゲームエンジン間のシームレスな相互運用性を実現することにある。

データ可用性に関する考察
ここまで述べてきた議論は、アプリケーションRollupの主要な側面であるトランザクションスループットの増加に集中してきた。このスループット増加に関連して、データ可用性(DA)、ソータリングノードの非中央集権化、決済速度といった話題も重要である。特に高スループットのアプリケーションRollupにおいては、データ可用性が最も緊急の課題となる。
単一のアプリケーションRollupのスループットは、秒間1万件を超える可能性がある。このようなトランザクションに対してイーサリアムをデータ可用性層として使用するのは不可能である。まず、L1に単純なL2 ETH送金データを掲載する平均コストは0.1ドル以上になることもある。これは大多数のアプリケーションRollupにとって高すぎる。さらに、現行のイーサリアムL1は、データ可用性のためにL1を利用するRollupに対して、最大でも秒間約8千件のトランザクションしかサポートできない。
したがって、アプリケーションRollupは主に外部のDAソリューションに依存することになる。CelestiaとEigenDAは、現在アプリケーションRollupにとって最も実現可能な選択肢として位置づけられている。たとえば、Eclipseは高スループットSVMベースの基礎RollupにおいてCelestiaをデータ可用性層として使用する計画である。Argusおよび高スループットゲームエンジンも当初はCelestiaを使用する予定だ。同様に、EigenDAが約束する秒間10MBまでのデータスループットも、複数のアプリケーションRollupにとって実現可能なソリューションとなりうる。
しかし、CelestiaやEigenDAを統合する主な欠点は経済価値の漏出(economic value leakage)である。アプリケーションRollupは、DA層への支払いに加えて、イーサリアムL1上での決済費用も支払わなければならない。決済料金は非常に重要であり、これによりRollupのセキュリティがイーサリアムのセキュリティと結びつけられるからだ。一方で、FOGの文脈では、トランザクションの価値がこれらのネットワークに比べてはるかに小さいため、DA保証はそれほど重要ではないかもしれない。また、CelestiaおよびEigenDAはネットワークが新設であり初期利用率が低いため、低コストを約束している。しかし、これらのDAネットワークが高利用率に達した時点で、DA料金も過度に高騰する可能性がある。私の見解では、アプリケーションRollupは、Rollupデータの可用性を証明するためのシンプルなデータ可用性委員会(DAC)を使用すべきである。
まとめると、アプリケーションRollupは、特に完全チェーン上ゲームを含む高スループットアプリケーションをスケーリングする上で、現時点で最良の既存ソリューションであると考える。これらのアプリケーションRollupを拡張することは、暗号通貨原生ユーザー層を超えた主流への普及を実現する鍵となる。
TechFlow公式コミュニティへようこそ
Telegram購読グループ:https://t.me/TechFlowDaily
Twitter公式アカウント:https://x.com/TechFlowPost
Twitter英語アカウント:https://x.com/BlockFlow_News














