Skip Protocolの理解を深める 前編

サムネイルの引用元:Migaloo Community DAO

はじめに

こんにちは、デフィー伍拾伍号です。
本記事では主にCosmosエコシステムにおけるMEV (Maximum Extracted Value)の問題の解決に挑むSkip Protocolについて解説します。まずMEVについて語る場合、その多くはEthereumに関連した内容についてです。

しかしながら、MEVは、その名の通り最大抽出価値という意味でEthereumだけに限定されるものではありません。本記事ではSkip protocolが焦点を当てるCosmosエコシステムのMEVに着目しますが、例えばSolanaやPolygonといった我々に馴染み深いチェーンでもMEVの問題は徐々に顕在化し始めています。

確かにLayer2、具体的にはArbitrumやOptimismといったチェーンでは、Squcencerと呼ばれるブロックにトランザクションを含む主体が極めて集権的で、そもそもMEVの抽出を行っていないとしています。そのため現段階で、ユーザーが特にEthereumと比較し、大きな心配をする必要はありません。

しかしながら、今後の開発方針を踏まえると、Layer2においてもMEVの抽出可能機会が発生することは否定できません。MEVという概念は多くの一般的なユーザーにとって難解かつ、馴染み深くない点も多いものですが、非常に憂慮すべき問題です。本記事を通じて、まずはMEVの基礎的な事項について理解を深め、Cosmosエコシステム上のMEVがどのように抽出され、またそれがどのように対策されていくのかという点をSkip Protocolを通じ、解説します。

MEVの基礎事項


引用元:flashbots
ここからは、まずMEVという概念について解説し、CosmosエコシステムにおけるMEVの理解を深めます。ここからは、MEVを簡単に解説するためCosmos Networkではなく、EthereumにおけるMEVを概観します。Ethereumでは、ユーザーが、トランザクションを起こした場合に、すぐにブロックに取り込まれるのではなく、mempoolと呼ばれるトランザクションの待機場所のようなところに留め置かれます。

そしてこのmempoolからsearcherと呼ばれる主体がトランザクションを選びだすことで、ブロックへの追加、第一歩です。実際にブロックにトランザクションが取り込まれるまでには、この他にもBuilder、Relyerとさまざまなエンティティを経由することになりますが、本記事では、その本旨に逸れるため、これ以上の言及は控えます。

まずブロックに含められるトランザクションには当然、上限があります。よってブロックの生成者はなんらかの基準で、選ぶべきトランザクションから取捨選択する必要があるのです。その際に一般的に、より多くの報酬、つまりガス代がもらえるトランザクションを優先的に選びとるというのが一見合理的です。

しかし、ブロック中でも先頭に含まれるようなトランザクションは、必ずしもガス代が高いわけではありません。究極的には、一般のユーザーがガス代を払わずともトランザクションをBlockに含めることは可能です。

一点だけ注意点がありますが、MEVというのは非常に抽象的な概念で、最大抽出可能価値を得る方法にはさまざまなものがある点は理解しておく必要があります。ここからはMEVの一種であるサンドイッチアタックについて解説しますが、それ以外にはCEX-DEXアービトラージや、清算オークション時のMEV、NFTのミント競争などにおいてもMEVは発生しうります。

サンドイッチアタック


引用元:jamesbachini.com
主にDEXにおいて大きなプライスインパクトを生じさせるようなトランザクションの直前と直後にMEVサーチャー自身の売買のトランザクションを挿入することで利益を抽出する手法です。これはその取引の様子からサンドイッチアタックと呼ばれています。

実際にUniswapやCurveなどDEXで特に大きな額のスワップ注文を執行する場合には、仮にUniswapが1ETH-1000USDCというレートを提示していたとしても、実際にその価格で注文を執行できる訳では、ありません。

例えばあるユーザーが10万USDCを100ETHにスワップする注文を送信したとします。この場合に、そのユーザーがそのままUniswapでトランザクションを執行しようとした場合に、先に述べた通り、MEV Searcherがまずトランザクションの前に一定額の注文を差し込みます。この場合、ユーザーの注文は1ETH-1000USDCではなく、1ETH-1001USDCのレートで約定します。 MEV Searcherがその後再び、割り込みをしたユーザーが割り込みとは逆方向のスワップ注文を執行することで利益を得ます。

MEVに共通するのは注文を誰が処理するのかということです。MEVの基礎事項で述べたように、ユーザーのトランザクションは、Ethereum上で承認される必要があり、それにはバリデーターがユーザーのトランザクションが含まれたブロックを提出する必要があります。そしてトランザクションをどのようにブロックに含めるかは、ユーザーが決めることではなく、バリデーターが決定するのです。

CosmosにおけるMEVの基礎事項

さて、上記では、EthereumにおけるMEVの説明を詳しく行いましたが、CosmosにおけるMEVはどのようなものなのでしょうか。まずCosmos Networkでは、ユーザーのトランザクションをFCFS(First-come First-serve)方式で処理します。

つまり先ほどのEthereum等とは異なり、トランザクションの順番をバリデーターが決定するのではなく、先着順でトランザクションがブロックに含まれます。したがってCosmos networkではガス代を調整しても、誰もトランザクションの順序を入れ替えることができないのです。

代わりにCosmos Networkでは、MEV Searcherが各バリデーターと物理的な距離が近い場所にアービトラージbotを配置し、大量にMEVトランザクションを送信することで、利益を抽出しようとするのです。もちろん多くのトランザクションは、無駄になってしまうわけですが、どれか1つのトランザクションが価値を抽出できれば利益を獲得できます。各Cosmos Networkは、Ethereumと比較し、圧倒的にバリデーターの数が少ないため、このようにネットワークのバリデーターと距離が近い場所にアービトラージbotを配置するといった単純な手法も、効果を発揮するのです。

後編では、MEVの基礎的な内容、Cosmos上で生じているMEVの問題などを簡単に理解ところで後編では、Skip protocolがどのようにMEVに対して対策法を提案しているかについて、詳しい仕様や機能に注目しながら理解を深めます。

関連記事