← 記事一覧に戻る
July 17, 2026
読了時間: 5分

MEVの解剖学: サンドイッチ攻撃、フロントランニング、そしてメモリプールというダークフォレスト

MEVの解剖学: サンドイッチ攻撃、フロントランニング、そしてメモリプールというダークフォレスト
#MEV
#サンドイッチ攻撃
#フロントランニング
#mempool
#flashbots
#DeFi
#Ethereum

分散型取引所でスワップに署名し、パブリックRPCエンドポイントにブロードキャストするとき、あなたはマッチングエンジンに私的な指示を送ったわけではない。あなたは、署名済みで実行可能な意思表示を世界規模の掲示板に公開し、それを実行してくれる誰かに対する報酬——ガス価格——を添付したのである。誰もがその意思表示を読むことができる。誰もそれを公正に、順序通りに、あるいはそもそも実行する義務を負わない。他のトランザクションとの相対的な順序でそれがどこに着地するかは、あなたの送信という行為の属性ではない。それは、あなたに不利な形でその決定を下すことで利益を得る第三者によって下される決定である。

これがオンチェーン取引の居心地の悪い核心である。Statistical Arbitrage and Pairs Trading in Crypto Markets(暗号資産市場における統計的裁定とペアトレード)では、CEXとDEXの間でポジションを動かすことには「MEVリスク」が伴うと軽く触れ、その用語を宙に浮かせたままにしていた。本稿はその借りを返すものである。これはオンチェーン実行の経済学に関するシリーズの入り口であり、その役割は——mempool、bundle、backrun、sandwich、PBSといった——語彙を、後続のフラッシュローンによるアトミック裁定クオンツのためのUniswap v3集中流動性の記事があなたがすでにこの仕組みを理解していると前提できる程度まで、正確に定義することである。

MEV——Maximal(あるいはMaximum)Extractable Value——とは、標準的なブロック報酬や優先手数料を超えて、ブロック内のトランザクションの包含、除外、順序付けを選択することで当事者が抽出できる利益のことである。これはバグではない。パーミッションレスなブロックチェーンがトランザクションを順序付ける方法から構造的に生じる帰結である。このメカニズムが2019年に正式に特徴づけられて以来、累積抽出額は数十億ドル規模に達しており、それを捕捉し再分配するために——サーチャー、ビルダー、リレー、ブロックプロポーザーという——一大産業が育ってきた。あなたがオンチェーンで取引しているなら、あなたはこの税を支払っているか、あるいはそれを支払わないための意図的な対策を講じているかのどちらかである。

1. トランザクションのライフサイクル: なぜあなたの意図は公開されるのか

価値がどこで漏れ出すかを見るために、トランザクションをあなたのウォレットから確定済みブロックまで追跡してみよう。

パブリックメモリプール

あなたのウォレットがトランザクションに署名し、標準的なノードのRPCエンドポイントに送信すると、そのノードはそれを検証し(署名、ノンス、十分な残高)、検証をパスすればピアツーピアネットワーク上の他のノードにゴシップ(伝播)する。各ノードは、これらのまだブロックに含まれていないトランザクションをメモリプール(mempool)と呼ばれるローカルバッファに保持する。1~2秒以内に、ネットワーク上の実質すべてのノード——保留中のトランザクションから価値を抽出することを本業とする当事者が運用するノードを含む——が、あなたの署名済みで完全にデコードされたトランザクションのコピーを保持することになる。

「完全にデコードされた」というのがここで重要な言い回しである。あなたのトランザクションは不透明なバイナリの塊ではない。それは既知のコントラクトに対するABIエンコードされた呼び出しである。メモリプールを監視している誰もがそれをデコードし、平易な言葉でこう読み取ることができる。このアドレスは、UniswapのWETH/USDCプールで40 ETHをUSDCにスワップしようとしており、最低96,000 USDCまでなら受け入れる。 この最後の条項——受け入れ可能な最小出力額——があなたのスリッページ許容度であり、それは単なるヒントではない。calldataにコンパイルされたハードパラメータである。まもなく見ていくように、これは攻撃者の予算枠でもある。

メモリプールは時に**ダークフォレスト(dark forest)**と呼ばれる。これは、Dan RobinsonとGeorgios Konstantopoulosによる2020年のエッセイに由来する呼称で、劉慈欣(Liu Cixin)の比喩を借用したものだ。すなわち、可視化されたあらゆる存在が、見えない捕食者に即座に狩られる空間である。無防備で利益の出るトランザクションをパブリックメモリプールにブロードキャストすると、それはあなたが署名した形のままでブロックに到達しないかもしれない——ボットがその機会を食い尽くし、周囲のブロックをあなたに不利な形に再構成してしまっているだろう。

優先度キューとしてのガス価格

Ethereumのフィーマーケット(EIP-1559以降)は、ガス価格をプロトコルのベースフィー(バーンされる)と優先手数料(「チップ」、ブロックプロポーザーに渡る)に分割する。ブロックが構築されるとき、ビルダーには最も多くのチップを支払うトランザクションを含めようとする経済的インセンティブが働く。おおまかに言えば、メモリプールはチップをキーとした優先度キューである。チップが高いほど、より早く取り込まれる。

これこそが、順序を購入可能にしているメカニズムである。あなたの保留中のスワップを見て、私が自分のトランザクションをあなたのものの直前に実行したいなら、何もハッキングする必要はない。単により高いチップを支払うトランザクションを送信すればよい。ビルダーはそのインセンティブに従い、私のものを先に配置する。順序付けはプロトコルが保証する公正さの性質ではない。プロトコルが運営するオークションであり、そこで競売にかけられている品目はあなたの保留中のトランザクションに含まれる情報に基づいて行動する権利である。

2つの事実が組み合わさって、MEV問題の全体が成立する。

  1. 保留中のトランザクションは可視である(パブリックメモリプール)。
  2. その順序は売り物である(チップ優先オークション)。

以下のすべては、この系(corollary)である。

ウォレットからブロックまでのトランザクションライフサイクル: 署名済みトランザクションがパブリックメモリプールにブロードキャストされ、サーチャーに可視化され、優先手数料によってビルダーがブロックへと順序付ける

2. サンドイッチ攻撃のメカニズム、実際の数式とともに

サンドイッチ攻撃は、スワップを行うトレーダーに対する典型的な有害MEV戦略であり、その計算を丹念に追う価値がある。なぜなら、その数値こそが、なぜスリッページ設定があなたが制御できる中で最も重要な防御パラメータであるかを説明してくれるからだ。

定積不変式(constant-product invariant)

Uniswap v2のプールは、トークンXの準備金 xx とトークンYの準備金 yy を保持し、各取引の後に次の不変式

xy=kx \cdot y = k

を強制する(ここでは一旦手数料を無視する)。トレーダーがトークンXを Δx\Delta x だけプールに売却すると、新しいXの準備金は x+Δxx + \Delta x となり、kk を維持するためにプールは

Δy=ykx+Δx=yΔxx+Δx.\Delta y = y - \frac{k}{x + \Delta x} = \frac{y \, \Delta x}{x + \Delta x}.

を支払わなければならない。0.3%のUniswap v2手数料を考慮すると、入力は γ=0.997\gamma = 0.997 でスケールされる。

Δy=yγΔxx+γΔx.\Delta y = \frac{y \, \gamma \, \Delta x}{x + \gamma \, \Delta x}.

重要な性質はこれだ。一方向に多く買うほど、限界価格は悪化する。価格インパクトは凸関数である。この凸性こそが、攻撃者が収益化する対象そのものである。

セットアップ

WETH/USDCプールを例に取ろう。数値をきれいにするため、ETHがおよそ2,500 USDCになるような準備金を想定する。

  • x=10,000x = 10{,}000 WETH
  • y=25,000,000y = 25{,}000{,}000 USDC
  • k=2.5×1011k = 2.5 \times 10^{11}

あなたは40 WETHでUSDCを買いたい(プールへのWETH売却)。説明のために手数料を無視すると、空のブロックでの正直な約定は次のようになる。

Δy=25,000,0004010,000+40=1,000,000,00010,04099,601 USDC.\Delta y = \frac{25{,}000{,}000 \cdot 40}{10{,}000 + 40} = \frac{1{,}000{,}000{,}000}{10{,}040} \approx 99{,}601 \text{ USDC}.

あなたの取引前のスポット価格は 25,000,000/10,000=2,50025{,}000{,}000 / 10{,}000 = 2{,}500 USDC/WETHなので、40 WETHは取引前のミッドプライスでは100,000 USDCの「価値」がある。実際に受け取るのは99,601——約399 USDCの差は、あなた自身の価格インパクトと手数料の合計である。ここで、あなたが1%のスリッページ許容度を設定したとしよう。あなたのトランザクションのamountOutMin

99,601×0.9998,605 USDC.99{,}601 \times 0.99 \approx 98{,}605 \text{ USDC}.

となる。この数値はいまやメモリプール内で公開されている。それは観察者に対してこう告げている。この人物は、40 WETHに対して最低98,605 USDCまでなら受け入れる。 クリーンなブロックで得られたであろう額(99,601)とあなたのフロア(98,605)の差——約996 USDC——が、あなたがフロントランナーに自発的に手渡した余地である。これが攻撃者の予算である。

攻撃の手順

サーチャーは3つのトランザクションを構築し、それらを1つのブロック内で次の順序に強制する。

1. フロントラン(攻撃者が先に買う)。 攻撃者はあなたの直前に自分自身のWETHをプールに売却し、USDCの価格を押し上げる(WETHは下がる)ことで、あなたの取引が着地するときに、1 WETHあたり受け取れるUSDCが少なくなるようにする。攻撃者は、あなたのトランザクションがそれでもなおamountOutMinをクリアするようにサイズを調整する——もしクリアしなければ、あなたのスワップはリバートし、サンドイッチされる被害者が存在しなくなるからだ。最適なフロントランのサイズは、あなたをちょうどフロアぎりぎりに留める最大のサイズである。

攻撃者が自分の40 WETHでフロントランしたとしよう。プールは x=10,040x = 10{,}040 に移行し、不変式により攻撃者は次を受け取る。

25,000,0004010,04099,601 USDC out,\frac{25{,}000{,}000 \cdot 40}{10{,}040} \approx 99{,}601 \text{ USDC out},

これにより準備金は x=10,040x = 10{,}040 WETH、y24,900,399y \approx 24{,}900{,}399 USDCとなる。

2. 被害者(あなたのスワップが悪化したプールに対して実行される)。 あなたの40 WETHはいまやこれらの準備金に対して着地する。

Δy=24,900,3994010,040+40=996,015,96010,08098,811 USDC.\Delta y = \frac{24{,}900{,}399 \cdot 40}{10{,}040 + 40} = \frac{996{,}015{,}960}{10{,}080} \approx 98{,}811 \text{ USDC}.

制約を確認する。98,811 > 98,605なので、あなたのトランザクションはリバートしない——約定はされるが、より悪い条件で。あなたはクリーンなブロックで得られたはずの99,601ではなく、98,811を受け取った。あなたは約790 USDCの損失を被っており、それが起きたことにすら気づいていない。あなたのスワップは「成功」したのだから。プールはいまや x=10,080x = 10{,}080 WETH、y24,801,588y \approx 24{,}801{,}588 USDCとなっている。

3. バックラン(攻撃者が売り戻す)。 攻撃者は、ステップ1で購入したUSDCを、いまプールに売り戻す——あるいは同義的に自分のWETHを買い戻す——ことで、あなたの取引が生み出した上昇した価格を捕捉する。保有する約99,601 USDCでWETHを買い戻すと、

Δx=10,08099,60124,801,588+99,6011,004,010,08024,901,18940.32 WETH.\Delta x = \frac{10{,}080 \cdot 99{,}601}{24{,}801{,}588 + 99{,}601} \approx \frac{1{,}004{,}010{,}080}{24{,}901{,}189} \approx 40.32 \text{ WETH}.

攻撃者はステップ1で40 WETHを使い、ステップ3で40.32 WETHを取り戻した——ガス代を除いて約**0.32 WETH(約800 USDC)**の利益であり、それはほぼすべてあなたのスリッページ予算から抽出されたものである。スリッページを引き締めれば、その予算は縮小する。攻撃者の最適なフロントランサイズは低下し、ある閾値を下回ると、サンドイッチはガス代を差し引くと利益にならなくなり、サーチャーはあなたを見送る。

ここでの教訓は「スリッページ許容度は悪い」ということではない。通常の価格変動でトランザクションがリバートしないためには、ある程度の許容度が必要である。教訓は、スリッページ許容度は直接抽出可能な量であるということであり、それを1%といった安易なデフォルト、あるいはさらに悪いことに薄いプールでの「自動」設定にしておくことは、それだけの金額を、見ている誰にでも渡してしまうテーブルの上に置いておくことに等しい。自分自身の取引が価格を数パーセント動かしてしまうような低流動性プールでは、デフォルトのスリッページは、あなたの想定元本のぞっとするような割合を明け渡すことになりかねない。

サーチャーの利益条件の最小限のスケッチはこうなる。

def sandwich_profit(x, y, gamma, victim_dx, victim_min_out, attack_dx, gas_cost):
    out1 = (y * gamma * attack_dx) / (x + gamma * attack_dx)
    x1, y1 = x + attack_dx, y - out1
    vout = (y1 * gamma * victim_dx) / (x1 + gamma * victim_dx)
    if vout < victim_min_out:
        return None  # victim would revert; no sandwich
    x2, y2 = x1 + victim_dx, y1 - vout
    got_back = (x2 * gamma * out1) / (y2 + gamma * out1)
    return got_back - attack_dx - gas_cost  # profit in WETH

サーチャーはattack_dxについて小さな最適化を実行し、vout >= victim_min_outを維持する最大のフロントランを見つける。その最適解は、あなたのスリッページフロアが拘束条件として効く点である——これは言い換えれば、攻撃者の取り分は、あなたが残した余地によって正確に上限が定められているということである。

3. MEVの分類学: 有害か良性か

「MEV」は罵り言葉のように使われがちだが、そのすべてが被害者からの搾取というわけではない。順序付けによって誰かが不利益を被るかどうかで戦略を分類すると理解の助けになる。

フロントランニング(Frontrunning)。 保留中の利益の出るトランザクションを観察し、それをコピーまたは先取りし、より高いチップを支払って先に実行する。典型例は、価格を動かすであろう大口の買いを見て、その前に買うことである。純粋に有害である。被害者はより悪い価格を受け取るか、その機会そのものを丸ごと奪われる。

バックランニング(Backrunning)。 ターゲットのトランザクションの直後に自分のトランザクションを配置し、それが作り出した状態に対して行動する。決定的に重要なのは、純粋なバックランはターゲットの約定を悪化させないということである——それは後で実行されるため、被害者の価格はすでに確定している。あなたの大口スワップがWETH/USDCプールをBinanceの価格からずれさせたなら、裁定業者はあなたの後にバックランしてそれを再調整し、その差額を懐に入れる。あなたは害を被っていない。実際、この裁定こそが、オンチェーン価格をより広範な市場に追随させ続けているものである。バックランニングはスペクトラムの良性側の端であり——後述するように——現代のMEV保護システムはまさに、バックランの利益をそれを生み出したユーザーに還元するために構築されている。

サンドイッチ攻撃(Sandwiching)。 上記で解剖した通り、同じ被害者を挟むフロントランとバックランの組み合わせである。構造的に有害である。フロントランは、バックランがそれを収穫できるように被害者の約定を悪化させることだけを目的として存在する。

アトミック裁定(Atomic arbitrage)。 ある資産をある取引所で安く買い、別の取引所で高く売る単一のトランザクションであり——たとえばWETHがSushiswapよりUniswapで安い場合など——1つのトランザクション内でオールオアナッシングで(利益が出なければリバートする)リスクフリーの利益を稼ぐ。特定の被害者は存在しない。市場が開けたままにしておいた価格の食い違いを解消しているだけである。一般に良性とみなされており——取引所間の価格の一貫性を改善する——本シリーズのアトミック裁定とフラッシュローンの記事の主題であり、そこではフラッシュローンの「資本不要」という性質がこれを特に際立たせている。

清算(Liquidations)。 レンディングポジション(Aave、Compound、Maker)が担保閾値を下回ると、プロトコルは不良債権を返済し担保を差し押さえる者にボーナスを提供する。サーチャーはその清算人になるために競争する。「被害者」——清算される借り手——は存在するが、彼らはいずれにせよプロトコルのルールに従って清算される。MEV競争が主に決定するのは、誰がボーナスを得るかであり、競争を通じてそれを縮小させることもできる。市場の健全性にとっては中立から良性、借り手にとっては不愉快、と呼んでよいだろう。

大まかな整理は以下の通り。

戦略 被害者への損害? 判定
フロントラン あり 有害
サンドイッチ あり 有害
バックラン(純粋) なし 良性
アトミック裁定 なし 良性(価格の一貫性を改善)
清算 借り手(プロトコルのルールによる) 中立

有害/良性の線引きが重要なのは、現代のMEV緩和スタック全体が、良性の戦略を維持し——再分配し——ながら、有害な戦略を抑制する試みだからである。DEX価格を正直に保っている裁定を壊すことなく、順序付けゲームを禁止することはできない。その秘訣は、有害な価値を、それが奪われた相手に返す経路を作ることである。

4. 短い歴史: ガスオークションからFlashbotsへ

Flash Boys 2.0と優先度ガスオークション

この現象は、Philip Daian、Steven Goldfeder、Tyler Kell、Yunqi Li、Xueyuan Zhao、Iddo Bentov、Lorenz Breidenbach、Ari Juelsによる2019年の論文**「Flash Boys 2.0: Frontrunning, Transaction Reordering, and Consensus Instability in Decentralized Exchanges」**によって命名され、測定された。この論文は「miner extractable value(マイナー抽出可能価値)」という用語を導入し(後に、業界がプルーフ・オブ・ワークのマイナーからプルーフ・オブ・ステークのプロポーザーへと移行するにつれ、「maximal(最大)extractable value」に一般化された)、**優先度ガスオークション(priority gas auctions、PGA)**を記録した。すなわち、利益の出る機会の順序を勝ち取るために、ボットたちがリアルタイムでガス価格を互いに競り上げていく現象である。

PGAは目に見えて病的だった。ボットが持っていたレバーがパブリックなガス価格だけだったため、彼らは公然の入札戦争を繰り広げた——単一の裁定機会や清算を勝ち取るために、同じ数秒間のうちに、より高いチップで何度も再送信を繰り返した。2つの醜い帰結が続いた。第一に、これはネットワークを混雑させ、MEVに関係するかどうかを問わず、すべての人のガス価格を高騰させた。第二に、さらに憂慮すべきことに、この論文は、あるブロックで利用可能なMEVがブロック報酬を超える場合、合理的なマイナーにはチェーンを再編成してそれを盗むインセンティブが働くと論じ、コンセンサスの安定性そのものを脅かすと主張した。MEVは単なるユーザーの公正性の問題ではなく、チェーンに対する脅威だったのである。

対応としてのFlashbots

Flashbotsは2020年にローンチし、PGAの緊張を解いた。その洞察はこうだ。順序付けオークションをパブリックメモリプールから、封印入札(sealed-bid)のオフチェーンチャネルへと移すこと。トランザクションをブロードキャストして公然のガス戦争を戦う代わりに、サーチャーはバンドル——特定の相対的順序で、オールオアナッシングでアトミックに含められるべきトランザクションの順序付きリスト——を組み立て、それを(ガス価格を通じてではなく、プロポーザーへの直接送金として支払われることが多い)入札額とともに、ブロックビルダーに非公開で送信する。ビルダーは、受け取ったすべてのバンドルとトランザクションから組み立てられる最も価値の高いブロックを構築し、それをプロポーザーに提示する。

これによって2つのことが同時に改善する。サーチャーはパブリックメモリプールを失敗した入札でスパムしなくなり、一般ユーザーへのガス価格の外部性が低下する。そして、勝利したバンドルは無傷で着地するか、まったく着地しないかのどちらかであり、かつてブロックを詰まらせていた「失敗したフロントラン」トランザクションが排除される。入札戦争そのものは依然として起きているが——それはいまや、オンチェーンでの公然の叫び合いではなく、ビルダー内部の非公開オークションとして起きている。

PBS: プロポーザー・ビルダー分離

Flashbotsのアーキテクチャは、今日のEthereumにおける支配的モデルである**プロポーザー・ビルダー分離(proposer-builder separation、PBS)**へと一般化した。役割は分割される。

  • サーチャーはMEVの機会を見つけ、それをバンドルにパッケージ化する。
  • ビルダーは、バンドルとパブリックトランザクションから、最も価値の高い単一の完全なブロックを組み立てるために競争する。
  • リレーはビルダーとプロポーザーの間に位置し、ビルダーから完全なブロックを受け取り、そのヘッダーと価値の入札額のみをプロポーザーに渡す。これにより、プロポーザーは内容を見る前にブロックにコミットすることになる(プロポーザーが単純にMEVを盗んでしまうことを防ぐ)。
  • プロポーザー(バリデーター)は最も高い入札額のヘッダーを選び、署名し、支払いを受け取る。

これはプロトコル外で、Ethereumバリデーターの圧倒的多数が実行しているミドルウェアであるMEV-Boostを通じて実装されている——ブロックの80~90%程度が、MEV-Boostを介した外部ビルダーによって構築されている。これは機能するが、信頼されたリレーに依存している。次のステップであるエンシュラインドPBS(enshrined PBS、ePBS、EIP-7732)は、プロポーザー・ビルダー分離をEthereumプロトコルに直接組み込み、信頼されたリレーへの依存を取り除くことを目指している。2026年半ば時点で、これはGlamsterdamアップグレードに予定されており、2026年後半のメインネット有効化を目標としている。支持者たちは、ブロックのコミット方法を改善し、有害な順序変更の窓を狭めることで、ユーザーのMEV損失を大幅に削減できると主張している。正確な数字は、実際に出荷されるまでは希望的観測として扱うべきだが、方向性は明確である。プロトコルは、何年もの間存在しないふりをしてきたMEVサプライチェーンを、自らの内側に取り込みつつある。

MEV-Share: 価値を還元する

一般トレーダーにとって最も重要な進展は、FlashbotsのオーダーフローオークションであるMEV-Shareである。その発想はダークフォレストを逆転させる。あなたのトランザクションがすべての捕食者に可視化される代わりに、あなたはそれをMEV-Shareノードに非公開で送信し、そのノードはそれに関する部分的なヒントのみを(どれだけ開示するかはあなたが選べる)サーチャーに開示する。サーチャーはあなたのトランザクションをバックランする権利について入札し——繰り返すが、バックランはあなたを傷つけない——結果として生じる利益の大部分はあなたに払い戻される。残りは、バンドルの取り込みを実現するために、サーチャーとプロポーザーの間で分配される。

この経済的な再構成は見事である。大口のスワップはバックランの機会を生み出す。問題は誰がそれを捕捉するかである。ダークフォレストの世界では、サーチャーとビルダーがそのすべてを持っていく。MEV-Shareの下では、あなた自身のトランザクションが生み出した価値の大部分があなたに戻ってくる。Flashbotsの消費者向けRPCであるFlashbots Protectは、この仕組みを通じて小口トランザクションをルーティングしており、2025年にはさらにガス代の払い戻しを追加し、ユーザーが受け取る額を大幅に増やした。これが「良性を再分配し、有害を抑制する」という原則を具体化したものである。

5. トレーダーのための実践的な防御策

サーチャーを運用する必要はない。捕食対象であることをやめるための、おおよその影響度順のリストは以下の通りである。

スリッページをプールごとに意図的に設定する

第2節で確立したように、あなたのスリッページ許容度は攻撃者の予算そのものである。ここから2つのルールが導かれる。第一に、習慣的な1%ではなく、そのプールの実際の流動性とあなたの取引の価格インパクトに合わせてスリッページを設定すること。深いプールでは0.1~0.3%の許容度で十分な場合が多い。薄いプールでは、安全にサイズで取引できないことを受け入れるか、より小さなクリップに分割するかのどちらかである。第二に、低流動性のペアで「自動」/「無制限」のスリッページを絶対に使わないこと——それは署名済みの白紙小切手である。狭い許容度でスワップが繰り返しリバートするなら、それはあなたの取引がそのプールにとって大きすぎることを市場が教えているのであり、フロアを緩める合図ではない。

プライベートRPCを経由してルーティングする

最もクリーンな構造的解決策は、あなたのトランザクションをパブリックメモリプールから完全に排除しておくことである。ウォレットを、トランザクションをゴシップするのではなくビルダーに直接転送するプライベートRPCに向けよう。

  • Flashbots Protect — あなたのトランザクションをMEV-Shareシステムに送り込むため、フロントランナーに公に可視化されることは一切なく、バックラン価値の一部とガス代の払い戻しを返す。
  • MEV Blocker(CoW Protocolほかによる)— フロントランニングとサンドイッチ攻撃から保護し、バックランの利益をユーザーにリベートする類似のプライベートRPCサービスで、無料の手数料モデルを採用している。

サンドイッチ攻撃には、攻撃者があなたの保留中のトランザクションを見て、その前にフロントランを挿入することが必要なので、あなたのトランザクションをパブリックメモリプールから取り除くことは、フロントランの機会そのものを完全に取り除くことになる。バックランの機会は依然として残るが、それはいまや盗まれるのではなく、あなたに向けてオークションされる。トレードオフは、RPC運営者へのわずかな信頼と、時に取り込みがわずかに遅くなることだが、サンドイッチリスクを排除できることに比べれば通常は些細なものである。(プライベート保護RPCに関する2025年のベンチマーク研究は、その実際の決済が公開送信よりも常に厳密に優れているわけではないことを発見しており、その効果は強いが普遍的ではない。それでも、大半の小口DEXスワップにとって、プライベートルーティングは依然として正しいデフォルトである。)

バッチオークションおよびインテントベースの取引所を優先する

一部のDEX設計は、構造的に順序付けの優位性を排除している。CoW Protocolは、統一清算価格を用いたバッチオークションで取引を決済する——バッチ内のすべての取引は同じ価格で清算されるため、悪用すべき「最初」と「最後」のポジションが存在せず、ソルバーはあなたの周りで順序を操作するのではなく、あなたに最良の執行を提供するために競争する。特定の経路に署名するのではなく、あなたが望むものに署名し、ソルバーに執行方法を見つけさせるインテントベースのシステムも同様に、サンドイッチ攻撃の足場を奪う。大きなサイズで取引しているなら、これらの取引所はどんなスリッページの微調整よりも価値がある。

L2がなぜ異なるのかを理解する

今日のほとんどのEthereumロールアップ(Arbitrum、Optimism、Base)では、ブロックはロールアップチームが運営する単一のシーケンサーによって生成される。サーチャーが監視できる保留中トランザクションのパブリックメモリプールは存在せず、順序を決める信頼された当事者が1つだけ存在する。実際には、ほとんどのシーケンサーはトランザクションを**先着順(first-come-first-served)**で順序付けており、ユーザーに対してサンドイッチ攻撃を実行しないため、これらのチェーンではプロトコル層においてサンドイッチ攻撃はおおむね存在しない。

しかし、このトレードオフを正確に読み取ってほしい。分散化されたMEV抽出から安全である理由は、中央集権的な順序決定者がそれを抽出しないと信頼しているからである。シーケンサーはあなたをフロントランすることが可能である。単に、そうしないことを選択している(そして評判の面でそう縛られている)だけだ。これは一時的な均衡である。ロールアップが——共有シーケンサー、ベースドシーケンシング、L2上でのPBS方式のオークションなど——シーケンサーを分散化するにつれて、同じメモリプールの可視性と順序の売買可能性というダイナミクスが再び出現しうるため、L2のMEV問題は、解決済みの問題ではなく、開かれた設計課題になりつつある。「自分はL2上にいる」ことが「MEVは自分に触れられない」ことを永久に意味すると仮定してはならない。それが意味するのは、「今のところ、ある信頼された当事者がそうしないと約束している」ということだけである。

このシリーズの残りに持ち越すべきこと

このトピックを、負荷を担っている事実だけに絞り込むとこうなる。

  1. パブリックメモリプールのスワップは、公開された意図に、購入可能な順序スロットを組み合わせたものである。単一のバグではなく、この組み合わせこそが問題の全体である。
  2. 定積AMMにおいて、あなたのスリッページ許容度は攻撃者が抽出できる量であり、サンドイッチ攻撃の取り分はあなたが残した余地によって正確に上限が定められる。スリッページの設定は利便性のトグルではなく、セキュリティ上の意思決定である。
  3. MEVは一枚岩ではない。フロントランとサンドイッチは有害であり、バックランとアトミック裁定は良性であり、むしろ有用である。なぜならそれらはオンチェーン価格の一貫性を保っているからだ。優れた緩和策は前者を抑制し、後者を再分配する
  4. 業界の対応は、PGA(公然のガス戦争、Flash Boys 2.0、2019年)から、Flashbots/バンドル/PBS(封印された非公開オークション)を経て、MEV-Share(バックラン価値をユーザーに還元)へと進み、次いで、プロトコルに組み込まれるエンシュラインドPBSへと向かっている。
  5. トレーダーとしてのあなたの防御策は、プールごとの厳格なスリッページプライベートRPC(Flashbots Protect、MEV Blocker)、そしてバッチオークション取引所であり——そして、L2の安全性は現時点ではシーケンサーへの信頼の仮定であって、物理法則ではないという認識である。

アトミック裁定とフラッシュローンの記事は、この表におけるサーチャー側の視点を取り上げる——借りた資本とアトミックなリバートを安全網として、良性の抽出がどう構築されているかを扱う。Uniswap v3集中流動性の記事は、上で導出した定積の数式を再訪し、集中流動性が価格インパクト曲線——したがって、ここで導出したサンドイッチの予算——をどう再形成するかを示す。メモリプールはダークフォレストである。いま、あなたはそこに何が潜んでいるかを知っている。

参考文献

  • Daian, Goldfeder, Kell, Li, Zhao, Bentov, Breidenbach, Juels (2019), Flash Boys 2.0: Frontrunning, Transaction Reordering, and Consensus Instability in Decentralized Exchanges. arXiv:1904.05234.
  • Robinson & Konstantopoulos (2020), Ethereum is a Dark Forest.
  • Flashbots documentation: MEV-Boost, MEV-Share, Flashbots Protect, MEV refunds (docs.flashbots.net).
  • Ethereum PBS / EIP-7732 (enshrined proposer-builder separation), Glamsterdam upgrade materials.
  • MEV Blocker (mevblocker.io); CoW Protocol batch-auction design.
  • Private MEV Protection RPCs: A Benchmark Study (arXiv:2505.19708, 2025).
blog.disclaimer

Authors

Eugen Soloviov
Eugen Soloviov

Trading-systems engineer

Trading-systems engineer building bots since 2017: cross-exchange arbitrage (connected up to 30 venues), cointegration-based pairs arbitrage across spot and futures, scalping, news and sentiment-driven strategies, trend algorithms, and portfolio management and balancing algorithms. Also builds sub-millisecond order execution, big-data warehouses, backtesting engines, AI agents, and trading interfaces (incl. open-source profitmaker.cc). Stack: JS/TS, Python, Rust/Zig/Go, DevOps, backend, frontend, architecture.

Newsletter

市場の先を行く

ニュースレターを購読して、独占的なAI取引の洞察、市場分析、プラットフォームの更新情報を受け取りましょう。

プライバシーを尊重します。いつでも配信停止可能です。