受信トレイに直接配信される暗号通貨の最高のインサイトを入手してください。下記のニュースレターを購読してください。

mail icon

モジュラー型システムの隠れたコスト

Kyle Samani
2023年8月15日 | 15 minute read

編集者注: この記事は「テクニカル拡張性が社会拡張性を生み出します」の精神的な続編記事です。ここをクリックしてご覧ください。

過去2年間、スケーリングに関する議論は、モジュラー型vs統合型が中心となった課題へとまとまり、定着してきました。

(暗号通貨に関する話では、「モノリシック」や「統合型」のシステムを組み合わせて話しています。過去40年間に渡って、スタックのあらゆるレイヤーにおいて、統合型システム vs モジュラー型システムの議論が行われてきた深い歴史があります。暗号通貨におけるこの議論は、新しい議論と捉えるのではなく、同じ枠組みの中であるという視点を持つべきでしょう)。

モジュラー化と統合化を考える上で、チェーンが行える最も重要な設計上の決定事項は、アプリケーション開発者にスタックの上位において、どれだけの複雑度を持たせるかということです。ブロックチェーンの顧客は、アプリケーション開発者なので、設計上の決定事項はアプリケーション開発者を念頭に置くべきです。

今日では、モジュラー化がブロックチェーンをスケールする主な手法として歓迎されています。この記事では、そういった前提の第一原則から疑問を投げかけ、モジュラーシステムの文化的神話や隠れたコストを浮き彫りにし、過去6年間にわたってこの議論を熟考してきた結論を共有します。

モジュラーシステムにより開発者への複雑性が増す

モジュラーシステムに置いて最大の隠れたコストは、開発者への複雑さです。

モジュラーシステムは、自身のアプリケーションの管理(技術的複雑性)や、他のアプリケーションや状態のやり取り(社会的複雑性)を行うため、アプリケーション開発者が管理しなければならない複雑さを大幅に増加させます。

暗号通貨システムでは、今日見られるモジュラー型ブロックチェーンは、新しい複雑性を生み出す犠牲を払いますが、理論的にはより専門化が可能です。こうした技術的・社会的複雑性は、スタック上位のアプリケーション開発者に影響を与え、最終的にはより構築が困難になります。

例えば、2023年8月時点で主要なモジュラーフレームワークであると考えられるOPスタックを考えてみましょう。OPスタックでは、開発者がLaw of Chainsを採用するか、フォークしてスタンドアローンを原則にOPスタックを管理することを絶対としています。どちらの選択肢も、ビルダーにとって多大なダウンストリームへの複雑性をもたらします。フォークして独自のルートを辿っても、新しい技術基準に準拠するためにコストを負担することになるその他のエコシステムにおけるプレイヤー(CEX、フィアットのオンランプなど)から、技術的サポートを受けられるでしょうか?「Law of Chains」を採用する場合、今現在、そしてより重要なこの先に、どのようなルールや制約を課すことになるでしょうか?

OSIモデル 出典: OSIモデル

現代のオペレーティングシステム(OS)は、数百のサブシステムからなる大規模で複雑なシステムです。現代のOSは、上記の画像のレイヤ2~6を取り扱います。これは、モジュール型コンポーネントを統合し、スタック上位におけるアプリケーション開発者に公開される複雑性を管理するための典型的な例です。アプリケーション開発者は、レイヤー7以下のものを扱いたくありません。だからこそ、OSが存在しているのです。OSは、アプリケーション開発者が対応する必要がないように、下位のレイヤーの複雑性を管理しています。したがって、モジュラー化は目標ではなく、目標を達成するための手段であるべきです。.

今日の世界の主要なソフトウェアシステム(クラウドバックエンド、OS、データベースエンジン、ゲームエンジンなど)は、高度に統合され、同時に多くのモジュラーサブシステムで構成されています。ソフトウェアシステムは、パフォーマンスを最大化し、開発者の複雑性を最小限に抑えるために、徐々に統合する傾向があります。ブロックチェーンも同様です。

(余談として、Ethereumの主要なブレイクスルーは、2011年から2014年のBitcoinフォークの時代から生まれた複雑性を軽減していました。モジュラー化の支持者は、データ可用性(DA)と実行を分離すべきだと主張するために、OSI(Open Systems Interconnection)モデルをしばしば強調しますが、この議論は広く誤解されています。目下の問題を正しく理解すると、逆の結論となります。例としてOSIを挙げることは、モジュラー化に関する議論というよりも、統合化に対する議論になります。)

モジュラーチェーンはコード実行を高速化しない

設計上、「モジュラーチェーン」の一般的な定義は、データ可用性(DA)と実行の分離です。ノードの1つのセットがDAを行い、他のセットが実行を行うことを指します。ノードセットは、オーバーラップをする必要は全くありませんが、可能ではあります。

実際は、DAと実行を分離しても、どちらのパフォーマンスも本質的に向上させるわけではありません。結局、世界のどこかのハードウェアがDAを行い、どこかのハードウェアが実行を行う必要があるのです。これらの機能を分離しても、パフォーマンスの向上にはなりません。ですが、分離は計算のコストを削減できますが、これには実行の集中化が必要です。

大事なことなので、繰り返して書きますが、モジュラー型のアーキテクチャでも統合型のアーキテクチャでも、どこかにあるハードウェアが作業を行うことに変わりはありません。DAや実行を他のハードウェアに任せても、本質的には双方を高速化したり、システム全体の容量が増加したりすることはありません。

モジュラー化により、多くのEVMが拡大して、ロールアップとして並行して実行され、実行が水平にスケールできると主張する人もいます。これは理論的には正しいですが、この意見は、総システムスループットをスケーリングするという文脈で、DAと実行を分離するという基本的な前提に言及するわけではなく、シングルスレッドプロセッサとしてのEVMの制約を強調しています。

モジュラー化だけでは、スループットを向上させることはできません。

モジュラー化はユーザーのトランザクショコストを増加させる

定義上、レイヤー1とレイヤー2は、独自の状態を持つ別々の元帳です。これらの個別の状態は、レイテンシーが増加し、開発者やユーザーの複雑性が増加しますが、通信を行うことができます。(例:ブリッジ経由、LayerZeroWormhole)。

元帳が多ければ多いほど、すべての口座の断片が持つ世界的な状態が大きくなります。これは、多くの分野にわたるチェーンやユーザーにとって、かなりひどいものです。状態の断片化は以下を引き起こします

  1. 流動性が低下し、テイカーのスプレッドが上昇する
  2. 総ガス消費量の増加(定義上、クロスチェーン取引には、少なくとも2つの元帳で、少なくとも2つのトランザクションが必要であるため)。
  3. 元帳全体における重複計算の増加(これによる、システム全体のスループットの低下):BinanceやCoinbaseでETH-USDCの価格が変動した際に、すべての元帳全体におけるETH-USDCプールで、裁定取引が行える様になるためです。(ETH-USDCの価格がBinanceやCoinbaseで変動するたびに、いろいろな元帳で10以上の取引が行われる様子は簡単に想像できると思います。断片化された状態の結果として、価格を一律に保つことは、ブロックスペースを非常に非効率的に使用することになります。)

より多くの元帳を作ることは、特にDeFiに関連するすべての側面で、明確にコストを作り上げていると認識することが重要です。

DeFiへの主なインプットは、オンチェーン状態(アセットの所有者)です。チームが、アプリチェーン/ロールアップを立ち上げると、当然ながら断片化します。これは、DeFiにとって非常に悪いことで、アプリケーション開発者(ブリッジ、ウォレット、レイテンシー、クロスチェーン、MEVなど)やユーザー(スプレッドの拡大、決済時間の長期化)に向けた複雑性の管理に悪影響を及ぼします。

DeFiは、アセットが1つの元帳で発行され、単一のステートマシン内で取引が行われる場合に最適です。元帳が多ければ多いほど、アプリケーション開発者が管理しなければならない複雑性が増加し、ユーザーが負担するコストも増加します。

アプリロールアップは開発者に新たな収益化の機会をもたらさない

アプリチェーン/ロールアップの支持者は、レイヤー1やレイヤー2ではなく、ロールアップを構築すれば収益化に繋がり、MEVを自身のトークンとして取り戻せると主張しています。ですが、この考えには欠点があります。それは、アプリロールアップを実行することが、アプリケーションレイヤートークンにMEVを取り戻す唯一の方法というわけではなく、ほとんどのケースでは最適な方法ではありません。アプリケーションレイヤートークンは、汎用チェーン上のスマートコントラクト内で、ロジックをエンコードするだけで、MEVを自身のトークンにキャプチャできます。いくつかの例を考えてみましょう。1. 清算 — CompoundやAave DAOが、清算ボットへと向かうMEVの一部をキャプチャしたいとします。これは、それぞれの契約を更新して、現在DAOへと向かう清算人に支払っている手数料の一部を支払うだけです。新たなチェーン/ロールアップを必要としません。2. オラクル — オラクルは、サービスとしてのバックランニングを提供することで、MEVをキャプチャできます。価格更新に加えて、オラクルは価格更新直後の実行が保証された任意のオンチェーントランザクションを組み合わせることができます。そのため、オラクルは、検索者、ブロックビルダーなどにサービスとしてのバックランニングを提供することで、MEVをキャプチャすることができます。3. NFTミント — NFTミントにはスキャルピングボットが溢れています。これは、漸減型利益再分配をエンコードするだけで緩和できます。例えば、誰かがNFTをNFTミントから2週間以内に再販しようとすれば、収益の100%がミントの作成者やDAOまで、再回収できます。パーセンテージは時間で変動します。

アプリケーションレイヤートークンにMEVをキャプチャすることに、普遍的な答えはありません。しかし、少し工夫をすれば、アプリ開発者は汎用チェーンでMEVを自分のトークンに簡単に取り戻すことができます。まったく新しいチェーンを立ち上げることは、ただ不要なことであり、開発者が管理するための技術的および社会的複雑性が追加され、ユーザーにとってウォレットと流動性の課題が増えます。

アプリロールアップはアプリ間混雑の解決策にならない

多くの人が、アプリチェーン/ロールアップは、人気のあるNFTミントなど、他のオンチェーンアクティビティによって引き起こされるガスのスパイクは、それらのアプリに影響を及ぼさないようにするものだと主張しています。この見解は部分的に正解ですが、ほとんどが誤りです。

このことが歴史的な問題になっている理由は、DAと実行の分離が欠如しているからではなく、主にEVMのシングルスレットの性質の機能によるものです。すべてのレイヤー2の支払いはレイヤー1に手数料を支払い、L1の手数料はいつでも増加します。今年のはじめにあったミームコインのブームでは、ArbitrumとOptimismの取引手数料が10ドルを超えました。直近では、Optimismの手数料がWorldcoinのローンチ後に急騰しました。

手数料の急騰に対する唯一の解決策は、レイヤー1のDAの最大化と、手数料市場をできるだけ細かくすることの 両方 を行うことです

レイヤー1のリソースが制約されている場合、さまざまなレイヤー2への使用量の急増はレイヤー1に浸透し、他のすべてのレイヤー2に高いコストが課されます。つまり、アプリチェーン/ロールアップはガスの急騰に対する予防策というわけではありません。

多くのEVMレイヤー2が共存することは、手数料市場のローカライズを行う原始的な方法に過ぎません。すべてを単一のEVMレイヤー1にまとめるよりも優れていますが、第一段階から存在する中核となる問題を解決するものではありません。解決策を手数料市場のローカライズであると認識すると、論理的な終着点は、レイヤー2ごとの手数料市場と対照的な、1つの状態あたりに対する手数料市場となります。

他のチェーンもすでにこの結論に達しています。SolanaとAptosの両方が、当然ながら手数料市場をローカライズしています。これには、それぞれの実行環境に対し、長年に渡って多くのエンジニアリング作業を必要としました。ほとんどのモジュラー化支持者は、超ローカル型手数料市場が引き起こすようなエンジニアリング上の困難な問題の解決をする重要性と難しさを、かなり過小評価しています。

ローカライズされた手数料市場 出典: https://blog.labeleven.dev/why-solana

多くの元帳を立ち上げると、他のアプリケーションでボリュームを増やしている状況でも、開発者は、実質的なパフォーマンス向上を実現することなく、技術的および社会的複雑性が当然ながら増加します。

柔軟性は過大評価されている

モジュラーチェーン支持者は、モジュラーアーキテクチャはより柔軟であると主張しています。この発言は、明確な真実です。ですが、それが重要なのかどうかを明らかにしません。.

6年間、私は、汎用L1が提供できない意味のある柔軟性を 必要 とするアプリケーション開発者を探してきました。しかし、これまでのところ、3つの非常に特殊なユースケースを除いて、柔軟性がなぜ重要なのか、また、拡張性にどのように役立つのか、明確な説明はありませんでした。柔軟性が重要であると私が特定した3つの特殊なユースケースは次のとおりです。

  • 「ホット」状態を活用するアプリ。ホット状態は、いくつかのアクションでリアルタイム調整を必要とする場合に必要な状態ですが、最終的にはオンチェーンで永続的にコミットされるわけではありません。ホット状態のいくつかの例を挙げます。
    • dYdXSeiのようなDEXでの指標注文(多くの指標注文は最終的にキャンセルされます)。
    • dFlowのリアルタイム調整と、注文フローの引き渡しの認識(dFlowは、マーケットメーカーとウォレット間における分散型注文フロー市場を促進するプロトコルです)。
    • Pythのような低レイテンシーのオラクル。PythはスタンドアローンのSVMチェーンとして稼働しています。Pythは膨大なデータを生成するため、Pythのコアチームは、スタンドアローンのチェーンに高頻度の価格更新を送信して、必要に応じてWormholeを利用し、他のチェーンにブリッジする方が良いと判断しました。
  • コンセンサスを変更するチェーン。最もいい例は、Osmosis(すべてのトランザクションをバリデータに送信する前に暗号化します)とThorchain(支払った手数料に基づいて、ブロック内のトランザクションを優先します)の2つです。
  • 何らかの方法で閾値署名スキーム(TSS)を活用する必要があるインフラストラクチャ。例としては、SommelierThorchainOsmosisWormholeWeb3Authが挙げられます。

上記に挙げた例は、PythとWormholeを除く全てが、Cosmos SDKを使用して構築され、スタンドアローンのチェーンとして実行されています。これは、ホット状態、コンセンサス変更、および閾値署名スキーム(TSS)システムの3つのユースケースすべてに対するCosmos SDKの品質と拡張性を明確に示すものです。

ですが、上記3つのセクションで挙げた項目のほとんどは、アプリではありません。これはインフラです。

PythとdFlowはアプリではなく、インフラストラクチャです。Sommelier (イールドオプティマイザのフロントエンドではなくチェーン)、Wormhole、Sei、Web3Authはアプリではなく、インフラストラクチャです。ユーザー向けアプリのうち、それら全てはDEX(dYdX、Osmosis、Thorchain)といった特定のタイプです。

私は、CosmosとPolkadotの支持者に、6年間、柔軟性によって実現できるユースケースについて聞いてきました。いくつかのことを推測するのに十分なデータがあると考えられるでしょう。

まず、インフラストラクチャの例は、価値の低いのデータ(例:ホット状態、およびホット状態の重要な点は、データがレイヤー1にコミットされないことです。)をあまりにも多く生成します。また、一部の機能は、元帳で意図的に独立して状態を更新するため(例:すべてのTSSユースケース)ロールアップとして存在するべきではありません。

その次に、私が見た中で、コアシステム設計を意味のある形で変更したアプリはDEXのみです。これは、DEXがMEVに溢れかえっているためであり、定義上、汎用チェーンがCEXのレイテンシーと一致しないため、理にかなっています。コンセンサスは、取引執行品質とMEVにとって基本であり、コンセンサスの変更に基づいて、DEXにはイノベーションの機会が多くあります。しかし、このエッセイでも前述の通り、スポットDEXへの主なインプットは、取引されている資産です。DEXは資産を得るために競争し、そのため資産発行者のために競争します。この枠組みの中では、スタンドアローンのDEXチェーンが成功する可能性は低いでしょう。それは、資産発行時に資産発行者が、DEX関連のMEVではなく、汎用的なスマートコントラクト機能と、その機能をアプリ開発者のそれぞれのアプリに組み込むことを考えているからです。

しかし、この資産発行者のために競合するDEXのフレーミングは、主にUSDC担保とオラクル価格フィードに依存し、デリバティブポジションを担保するためにユーザー資産をロックする必要があるデリバティブDEXにはほとんど関係ありません。そのため、スタンドアローンのDEXチェーンが理にかなっている限り、dYdXやSeiなどのデリバティブに焦点を当てたDEXで機能する可能性が最も高いです。

(注:上記のカテゴリには含まれない新しい種類のインフラストラクチャを構築している場合や、汎用的な統合レイヤー1がサポートできるよりもさらなる柔軟性を必要とする消費者向けアプリを構築している場合は、ご連絡ください。上記の調査には6年かかりましたが、このリストは不完全であると確信しています。)

逆に、汎用的な統合型レイヤー1で現在存在するアプリについて考えてみましょう。例として、ゲーム、AudiusFarcasterLensのようなDeSocシステムがあります。他には、HeliumHivemapperRender NetworkDIMODaylightSound、NFT取引所などがあります。これらのどれも、コンセンサスの変更に伴う柔軟性から特に利益を得ることはありません。これらはすべて、それぞれの元帳から、非常にシンプルで明白な共通の要件があります。低料金、低レイテンシー、スポットDEXへのアクセス、ステーブルコインへのアクセス、CEXなどのフィアットオンランプへのアクセスなどです。

今では、ユーザー向けアプリケーションの大多数は、前の段落で述べたような共通の要件を持っていると、ある程度確信を持って言えるだけの十分なデータがあると考えています。一部のアプリケーションでは、スタックの下位でマージン上の他の変数に対して最適化できますが、これらのカスタマイズに伴うトレードオフは、一般的に行う価値がありません(ブリッジングの増加、ウォレットサポートの減少、インデックス/クエリプロバイダーサポートの減少、直接のフィアットオンランプの減少など)。

新しい資産元帳を立ち上げることは、柔軟性を達成する1つの方法ですが、付加価値を増加させることはめったになく、アプリケーション開発者にとって最終的な利益が小さいままで、技術的および社会的複雑性を生み出すことがほとんどです。

DAのスケールに再ステーキングは不要

また、モジュラー支持者がスケーリングという文脈で再ステーキングについて話すことも聞くでしょう。これは、モジュラーチェーン支持者による最も投機的な主張ですが、お話しておきましょう。

これは、再ステーキング(例:EigenLayerのようなシステムの経由)により、暗号エコシステム全体として、ETHを無限に再ステーキングして、無数のDAレイヤー(例:EigenDA)と実行レイヤーを動かすことができると概ね述べています。したがって、ETHへの追加価値を保証しながら、スケーラビリティをあらゆる点で解決するとしています。

現状と理論的な未来の間には計り知れないような不確実さがありますが、すべての積み重なった推測が述べられているとおりに動いていると、仮定してみましょう。

Ethereumの現在のDAは、約83 KB/秒です。今年後半のEIP 4844では、約2倍の166 KB/秒になります。EigenDAは別のセキュリティ評価を通じて、追加の10 MB/秒をもたらします。(すべてのETHが、EigenDAに再ステーキングされるわけではありません)

これとは対照的に、Solanaは、現在、約125 MB/秒のDA(ブロックあたり32,000シュレッド、1,280バイトシュレッド、1秒あたり2.5ブロック)を提供しています。Solanaは、すでに3年間運営されているTurbine block propagation protocolにより、EthereumやEigenDAよりもはるかに効率的です。さらに、SolanaのDAは、衰えるところを知らないNielsen’s Lawにより、時間とともにスケールアップしています。(ムーアの法則は実用的上、10年前には使い物にならなくなっています)。

再ステーキングとモジュール化でDAをスケールする方法は数多くありますが、これらのメカニズムは現在では不要であり、技術的および社会的複雑性を大きく引き起こすものです。

アプリケーション開発者のための構築

これを何年も熟考した結果、私は、モジュール化自体が目標であってはならないという結論に達しました。

ブロックチェーンは、顧客、すなわちアプリケーション開発者のためにサービスを提供する必要があり、そのため、ブロックチェーンは、起業家がワールドクラスのアプリケーションの構築に集中できるように、インフラストラクチャレベルの複雑さを取り出す必要があります。

モジュラービルディングブロックは素晴らしいものです。しかし、生き残るテクノロジーを構築する鍵は、スタックのどの部分を統合し、どの部分を他人に任せるかを把握することです。そして、現状では、DAと実行を統合するチェーンは、本質的に、よりシンプルなエンドユーザーと開発者体験を提供し、最終的には、ベストインクラスのアプリケーションのためのより良い基盤を与えるでしょう。

Alana LevinTarun ChitraKarthik SenthilMert MumtazCeterisJon CharbonneauJohn Robert ReedそしてAni Paiの皆さんに、記事に関するフィードバックを頂きました。ありがとうございました。

Disclosure: Unless otherwise indicated, the views expressed in this post are solely those of the author(s) in their individual capacity and are not the views of Multicoin Capital Management, LLC or its affiliates (together with its affiliates, “Multicoin”). Certain information contained herein may have been obtained from third-party sources, including from portfolio companies of funds managed by Multicoin. Multicoin believes that the information provided is reliable but has not independently verified the non-material information and makes no representations about the enduring accuracy of the information or its appropriateness for a given situation. This post may contain links to third-party websites (“External Websites”). The existence of any such link does not constitute an endorsement of such websites, the content of the websites, or the operators of the websites. These links are provided solely as a convenience to you and not as an endorsement by us of the content on such External Websites. The content of such External Websites is developed and provided by others and Multicoin takes no responsibility for any content therein. Charts and graphs provided within are for informational purposes solely and should not be relied upon when making any investment decision. Any projections, estimates, forecasts, targets, prospects, and/or opinions expressed in this blog are subject to change without notice and may differ or be contrary to opinions expressed by others.

The content is provided for informational purposes only, and should not be relied upon as the basis for an investment decision, and is not, and should not be assumed to be, complete. The contents herein are not to be construed as legal, business, or tax advice. You should consult your own advisors for those matters. References to any securities or digital assets are for illustrative purposes only, and do not constitute an investment recommendation or offer to provide investment advisory services. Any investments or portfolio companies mentioned, referred to, or described are not representative of all investments in vehicles managed by Multicoin, and there can be no assurance that the investments will be profitable or that other investments made in the future will have similar characteristics or results. A list of investments made by funds managed by Multicoin is available here: https://multicoin.capital/portfolio/. Excluded from this list are investments that have not yet been announced (1) for strategic reasons (e.g., undisclosed positions in publicly traded digital assets) or (2) due to coordination with the development team or issuer on the timing and nature of public disclosure. * This blog does not constitute investment advice or an offer to sell or a solicitation of an offer to purchase any limited partner interests in any investment vehicle managed by Multicoin. An offer or solicitation of an investment in any Multicoin investment vehicle will only be made pursuant to an offering memorandum, limited partnership agreement and subscription documents, and only the information in such documents should be relied upon when making a decision to invest.*

Past performance does not guarantee future results. There can be no guarantee that any Multicoin investment vehicle’s investment objectives will be achieved, and the investment results may vary substantially from year to year or even from month to month. As a result, an investor could lose all or a substantial amount of its investment. Investments or products referenced in this blog may not be suitable for you or any other party.

Multicoin has established, maintains and enforces written policies and procedures reasonably designed to identify and effectively manage conflicts of interest related to its investment activities. For more important disclosures, please see the Disclosures and Terms of Use available at https://multicoin.capital/disclosures and https://multicoin.capital/terms.