← Terug naar artikelen
July 17, 2026
5 min leestijd

Anatomie van MEV: sandwiches, frontrunning en het duistere woud van de mempool

Anatomie van MEV: sandwiches, frontrunning en het duistere woud van de mempool
#mev
#sandwich attack
#frontrunning
#mempool
#flashbots
#defi
#ethereum

Wanneer je een swap ondertekent op een gedecentraliseerde exchange en deze uitzendt naar een publiek RPC-endpoint, heb je geen privé-instructie naar een matching engine gestuurd. Je hebt een ondertekende, uitvoerbare intentieverklaring gepubliceerd op een wereldwijd prikbord, en je hebt daar een beloning aan gehangen — de gasprijs — voor wie ook maar bereid is deze uit te voeren. Iedereen kan die verklaring lezen. Niemand is verplicht om hem eerlijk, op volgorde, of uberhaupt uit te voeren. De volgorde waarin hij landt ten opzichte van andere transacties is geen eigenschap van jouw inzending; het is een beslissing genomen door een derde partij die er juist aan verdient om die tegen jou te nemen.

Dit is de ongemakkelijke kern van on-chain trading. In Statistical Arbitrage and Pairs Trading in Crypto Markets noemden we terloops dat het verplaatsen van een positie tussen een CEX en een DEX "MEV-risico" met zich meebrengt, en lieten we het daarbij als een losse term. Dit artikel lost die schuld in. Het is de voordeur naar een reeks over de economie van on-chain executie, en de taak hier is om het vocabulaire — mempool, bundle, backrun, sandwich, PBS — precies genoeg te definieren zodat de latere stukken over atomaire arbitrage met flash loans en Uniswap v3 concentrated liquidity voor quants ervan uit kunnen gaan dat je de machine al begrijpt.

MEV — Maximal (of Maximum) Extractable Value — is de winst die een partij kan extraheren door de opname, uitsluiting en ordening van transacties binnen een blok te kiezen, bovenop de standaard blokbeloning en priority fees. Het is geen bug; het is een structureel gevolg van de manier waarop permissionless blockchains transacties ordenen. Sinds het mechanisme in 2019 formeel werd gekarakteriseerd, loopt de cumulatief geextraheerde waarde in de miljarden dollars, en is er een hele industrie — searchers, builders, relays, block proposers — ontstaan om deze waarde te vangen en te herverdelen. Als je on-chain handelt, betaal je deze belasting, of je hebt bewuste stappen genomen om dat niet te doen.

1. De levenscyclus van een transactie: waarom jouw intentie publiek is

Om te zien waar de waarde weglekt, volgen we een transactie van je wallet tot een gefinaliseerd blok.

De publieke mempool

Wanneer je wallet een transactie ondertekent en indient bij het RPC-endpoint van een standaardnode, valideert de node deze (handtekening, nonce, voldoende saldo) en verspreidt hem, als hij slaagt, via het peer-to-peer-netwerk naar andere nodes. Elke node houdt deze nog niet opgenomen transacties bij in een lokale buffer genaamd de mempool (memory pool). Binnen een seconde of twee heeft vrijwel elke node op het netwerk — inclusief nodes die worden geexploiteerd door partijen wier hele bedrijfsmodel bestaat uit het extraheren van waarde uit pending transacties — een kopie van jouw ondertekende, volledig gedecodeerde transactie.

"Volledig gedecodeerd" is de cruciale term hier. Jouw transactie is geen ondoorzichtige blob. Het is een ABI-gecodeerde aanroep van een bekend contract. Iedereen die de mempool volgt, kan deze decoderen en in gewone taal lezen: dit adres staat op het punt om 40 ETH te wisselen voor USDC op de Uniswap v2 WETH/USDC-pool, en zal minimaal 96.000 USDC accepteren. Die laatste clausule — de minimaal acceptabele output — is jouw slippage-tolerantie, en dat is geen hint. Het is een harde parameter, gecompileerd in de calldata. We zullen zo zien dat het ook het budget van de aanvaller is.

De mempool wordt soms het duistere woud (dark forest) genoemd, naar een essay uit 2020 van Dan Robinson en Georgios Konstantopoulos dat de metafoor van Liu Cixin leende: een ruimte waar elke zichtbare entiteit onmiddellijk wordt bejaagd door roofdieren die je niet kunt zien. Zend een naieve, winstgevende transactie uit naar de publieke mempool, en die bereikt mogelijk nooit een blok in de vorm die je hebt ondertekend — een bot heeft de kans al verzilverd en het omringende blok tegen jou herschikt.

Gasprijs als prioriteitswachtrij

De fee-markt van Ethereum (na EIP-1559) splitst de gasprijs op in een protocol-basisfee, die wordt verbrand, en een priority fee (de "tip"), die naar de block proposer gaat. Wanneer een blok wordt gebouwd, heeft de builder een economische prikkel om de transacties op te nemen die hem het meest opleveren. Bij benadering is de mempool een prioriteitswachtrij gesorteerd op de tip: hogere tip, eerdere opname.

Dit is het mechanisme dat ordening koopbaar maakt. Als ik jouw pending swap zie en ik wil dat mijn transactie direct voor de jouwe wordt uitgevoerd, hoef ik niets te hacken. Ik dien simpelweg een transactie in die een hogere tip betaalt. De builder, die zijn eigen prikkel volgt, plaatst die van mij eerst. Ordening is geen eerlijkheidsgarantie die het protocol biedt; het is een veiling die het protocol organiseert, en het lot dat geveild wordt is het recht om te handelen op basis van de informatie in jouw pending transactie.

Twee feiten samen vormen het hele MEV-probleem:

  1. Pending transacties zijn zichtbaar (publieke mempool).
  2. Hun ordening is te koop (tip-priority veiling).

Alles hieronder is een uitvloeisel daarvan.

Levenscyclus van een transactie van wallet tot blok: ondertekende tx uitgezonden naar publieke mempool, zichtbaar voor searchers, geordend op priority fee in een blok door de builder

2. Sandwich-mechaniek, met de daadwerkelijke wiskunde

De sandwich is de klassieke toxische MEV-strategie tegen een swapper, en het loont om de rekensom door te nemen, omdat de cijfers verklaren waarom jouw slippage-instelling de enige belangrijkste verdedigingsparameter is die je zelf beheerst.

De constant-product-invariant

Een Uniswap v2-pool houdt reserves xx van token X en yy van token Y aan, en handhaaft de invariant

xy=kx \cdot y = k

na elke trade (we negeren fees even). Als een trader Δx\Delta x van token X in de pool verkoopt, wordt de nieuwe X-reserve x+Δxx + \Delta x, en om kk te behouden moet de pool uitbetalen

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

Met de 0,3% Uniswap v2-fee wordt de input geschaald met γ=0.997\gamma = 0.997:

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

De sleuteleigenschap: hoe meer je in een richting koopt, hoe slechter je marginale prijs. Prijsimpact is convex. Precies deze convexiteit is wat de aanvaller te gelde maakt.

De opzet

Neem een WETH/USDC-pool. Om de cijfers overzichtelijk te houden, gaan we uit van reserves die ETH op ongeveer 2.500 USDC zetten:

  • x=10.000x = 10.000 WETH
  • y=25.000.000y = 25.000.000 USDC
  • k=2.5×1011k = 2.5 \times 10^{11}

Je wilt USDC kopen met 40 WETH (een verkoop van WETH in de pool). Als we fees voor de illustratie negeren, zou een eerlijke uitvoering in een leeg blok je geven

Δ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}.

De spotprijs voor jouw trade is 25.000.000/10.000=2.50025.000.000 / 10.000 = 2.500 USDC/WETH, dus 40 WETH is "waard" 100.000 USDC tegen de mid-prijs van voor de trade. Je ontvangt 99.601 — het verschil van ~399 USDC is jouw eigen prijsimpact plus fees. Stel nu dat je een slippage-tolerantie van 1% instelt. De amountOutMin van jouw transactie is

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

Dat getal staat nu publiekelijk in de mempool. Het vertelt elke waarnemer: deze persoon accepteert minimaal 98.605 USDC voor zijn 40 WETH. Het verschil tussen wat je zou krijgen in een schoon blok (99.601) en jouw ondergrens (98.605) — ongeveer 996 USDC — is de ruimte die je vrijwillig hebt overhandigd aan wie jou ook maar frontrunt. Dit is het budget van de aanvaller.

De aanval, stap voor stap

Een searcher construeert drie transacties en dwingt ze in deze volgorde binnen een blok:

1. Front-run (aanvaller koopt eerst). De aanvaller verkoopt zijn eigen WETH in de pool voor jou, waardoor de prijs van USDC stijgt (WETH daalt), zodat je minder USDC per WETH krijgt wanneer jouw trade landt. De aanvaller doseert dit zo dat jouw transactie nog net jouw amountOutMin haalt — als dat niet lukt, revert jouw swap en is er geen slachtoffer om te sandwichen. De optimale front-run-omvang is de grootst mogelijke die jou precies op je ondergrens laat uitkomen.

Stel dat de aanvaller front-runt met 40 WETH van zichzelf. De pool verschuift naar x=10.040x = 10.040, en volgens de invariant ontvangt de aanvaller

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

wat reserves achterlaat van x=10.040x = 10.040 WETH, y24.900.399y \approx 24.900.399 USDC.

2. Slachtoffer (jouw swap wordt uitgevoerd tegen de verslechterde pool). Jouw 40 WETH landt nu tegen deze reserves:

Δ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}.

Controleer de voorwaarde: 98.811 > 98.605, dus jouw transactie revert niet — je krijgt je fill, alleen slechter. Je ontving 98.811 in plaats van de 99.601 die je in een schoon blok had gekregen. Je bent ongeveer 790 USDC kwijt, en je hebt geen idee dat het is gebeurd; jouw swap is "geslaagd". De pool is nu x=10.080x = 10.080 WETH, y24.801.588y \approx 24.801.588 USDC.

3. Back-run (aanvaller verkoopt terug). De aanvaller verkoopt nu de USDC die hij in stap 1 kocht terug in de pool — of koopt equivalent zijn WETH terug — en verzilvert daarmee de verhoogde prijs die jouw trade heeft veroorzaakt. Door WETH terug te kopen met de ~99.601 USDC die hij aanhoudt:

Δ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}.

De aanvaller besteedde 40 WETH in stap 1 en kreeg 40,32 WETH terug in stap 3 — een winst van ongeveer 0,32 WETH (~800 USDC) voor gas, bijna volledig geextraheerd uit jouw slippage-budget. Verklein je slippage en dat budget krimpt mee; de optimale front-run-omvang van de aanvaller daalt, en onder een bepaalde drempel wordt de sandwich na gas niet meer winstgevend en slaat de searcher je over.

De les is niet "slippage-tolerantie is slecht". Je hebt enige tolerantie nodig, anders reverten je transacties bij gewone prijsbewegingen. De les is dat slippage-tolerantie een direct extraheerbare grootheid is, en dat het instellen ervan op een gemakzuchtige standaard zoals 1%, of erger, "auto" op een dunne pool, gelijkstaat aan het laten liggen van dat bedrag voor iedereen die meekijkt. Op een pool met lage liquiditeit, waar jouw eigen trade de prijs al meerdere procenten beweegt, kan een standaard slippage-instelling een schokkend deel van jouw notional weggeven.

Een minimale schets van de winstconditie van een searcher:

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

De searcher voert een kleine optimalisatie uit over attack_dx om de grootste front-run te vinden die vout >= victim_min_out in stand houdt. Dat optimum is precies waar jouw slippage-ondergrens knelt — wat een andere manier is om te zeggen dat de opbrengst van de aanvaller exact begrensd wordt door de ruimte die jij hebt achtergelaten.

3. Een taxonomie van MEV: toxisch versus onschuldig

"MEV" wordt gebruikt als scheldwoord, maar niet alles ervan is extractie ten koste van een slachtoffer. Het helpt om strategieen te sorteren op basis van of iemand er slechter van wordt door de ordening.

Frontrunning. Een pending winstgevende transactie observeren, kopieren of voorkomen, en een hogere tip betalen om als eerste uit te voeren. Het archetype is het zien van een grote aankoop die de prijs zal bewegen, en daarvoor kopen. Puur toxisch: het slachtoffer krijgt een slechtere prijs, of zijn kans wordt ronduit gestolen.

Backrunning. Jouw transactie direct na een doeltransactie plaatsen om te handelen op de staat die deze creeert. Cruciaal is dat een pure backrun de uitvoering van het doelwit niet verslechtert — hij loopt erna, dus de prijs van het slachtoffer ligt al vast. Als jouw grote swap de WETH/USDC-pool uit lijn brengt met Binance, backrunt een arbitrageur jou om die weer gelijk te trekken en steekt het verschil in zijn zak. Jij wordt niet benadeeld; sterker nog, deze arbitrage is precies wat on-chain prijzen in lijn houdt met de bredere markt. Backrunning is het onschuldige uiteinde van het spectrum, en — zoals we zullen zien — moderne MEV-beschermingssystemen zijn precies gebouwd om backrun-winst terug te geven aan de gebruiker die deze creeerde.

Sandwiching. Een frontrun en een backrun rond hetzelfde slachtoffer gewikkeld, zoals hierboven ontleed. Toxisch van opzet: de frontrun bestaat alleen om de fill van het slachtoffer te verslechteren, zodat de backrun die kan oogsten.

Atomaire arbitrage. Een enkele transactie die een asset goedkoop koopt op het ene platform en duur verkoopt op het andere — zeg WETH goedkoper op Uniswap dan op Sushiswap — waarmee een risicovrije winst wordt gerealiseerd, alles-of-niets binnen een enkele transactie (hij revert als het niet winstgevend is). Geen specifiek slachtoffer; het sluit een prijsverschil dat de markt open liet staan. Wordt over het algemeen als onschuldig beschouwd — het verbetert de prijsconsistentie tussen platforms — en het is het onderwerp van het stuk over atomaire arbitrage en flash loans in deze reeks, waar de eigenschap "geen kapitaal nodig" van flash loans dit extra scherp maakt.

Liquidaties. Wanneer een leenpositie (Aave, Compound, Maker) onder haar onderpanddrempel zakt, biedt het protocol een bonus aan wie de slechte schuld aflost en het onderpand in beslag neemt. Searchers concurreren om die liquidator te zijn. Er is een "slachtoffer" — de geliquideerde lener — maar die wordt sowieso geliquideerd volgens de regels van het protocol; MEV-concurrentie bepaalt vooral wie de bonus krijgt en kan deze, door concurrentie, verkleinen. Noem het neutraal-tot-onschuldig voor de gezondheid van de markt, onaangenaam voor de lener.

Een ruwe indeling:

Strategie Slachtoffer benadeeld? Oordeel
Frontrun Ja Toxisch
Sandwich Ja Toxisch
Backrun (puur) Nee Onschuldig
Atomaire arbitrage Nee Onschuldig (verbetert prijsconsistentie)
Liquidatie Lener (volgens protocolregels) Neutraal

De grens tussen toxisch en onschuldig is belangrijk omdat de hele moderne MEV-mitigatiestack een poging is om de toxische strategieen te onderdrukken en tegelijk de onschuldige te behouden — en te herverdelen. Je kunt ordeningsspelletjes niet verbieden zonder ook de arbitrage te breken die DEX-prijzen eerlijk houdt. De truc is om de toxische waarde terug te routeren naar de persoon bij wie die is weggehaald.

4. Een korte geschiedenis: van gasveilingen naar Flashbots

Flash Boys 2.0 en priority gas auctions

Het fenomeen werd benoemd en gemeten in het paper uit 2019 "Flash Boys 2.0: Frontrunning, Transaction Reordering, and Consensus Instability in Decentralized Exchanges" van Philip Daian, Steven Goldfeder, Tyler Kell, Yunqi Li, Xueyuan Zhao, Iddo Bentov, Lorenz Breidenbach en Ari Juels. Het paper introduceerde de term "miner extractable value" (later gegeneraliseerd naar maximal extractable value toen de industrie overstapte van proof-of-work miners naar proof-of-stake proposers) en documenteerde priority gas auctions (PGA's): bots die elkaar in real time overbieden op gasprijs om de ordening van een winstgevende kans te winnen.

PGA's waren zichtbaar pathologisch. Omdat de enige hendel die bots hadden de publieke gasprijs was, voerden ze open biedingsoorlogen — herhaaldelijk opnieuw indienen met steeds hogere tips binnen dezelfde paar seconden — om een enkele arbitrage of liquidatie binnen te halen. Twee lelijke gevolgen volgden. Ten eerste verstopte dit het netwerk en dreef het de gasprijzen op voor iedereen, MEV-gerelateerd of niet. Ten tweede, en verontrustender, betoogde het paper dat als de beschikbare MEV in een blok de blokbeloning zou overtreffen, rationele miners geprikkeld zouden worden om de chain te reorganiseren om die te stelen, wat de stabiliteit van consensus zelf zou bedreigen. MEV was niet alleen een probleem van eerlijkheid voor gebruikers; het was een bedreiging voor de chain.

Flashbots als antwoord

Flashbots lanceerde in 2020 om de PGA te ontmijnen. Het inzicht: verplaats de ordeningsveiling weg van de publieke mempool naar een gesloten-bod, off-chain kanaal. In plaats van een transactie uit te zenden en een publieke gasoorlog te voeren, stelt een searcher een bundle samen — een geordende lijst transacties die atomair, alles-of-niets, in een specifieke relatieve volgorde moeten worden opgenomen — en dient die privé in bij een block builder, samen met een bod (vaak betaald als een directe overdracht naar de proposer in plaats van via de gasprijs). De builder stelt het meest waardevolle blok samen dat het kan uit alle bundles en transacties die het ontvangt, en biedt dit aan de proposer aan.

Twee dingen verbeteren tegelijk. Searchers stoppen met het spammen van de publieke mempool met mislukte biedingen, dus de gasprijs-externaliteit voor gewone gebruikers daalt. En de winnende bundle landt ofwel intact, of helemaal niet, waardoor de "mislukte frontrun"-transacties die vroeger blokken verstopten verdwijnen. De biedingsoorlog vindt nog steeds plaats — alleen nu als een privéveiling binnen de builder, in plaats van een openbaar geschreeuw on-chain.

PBS: proposer-builder separation

De architectuur van Flashbots generaliseerde naar proposer-builder separation (PBS), het dominante model op Ethereum vandaag. De rollen splitsen zich op:

  • Searchers vinden MEV-kansen en verpakken ze in bundles.
  • Builders concurreren om het ene meest waardevolle volledige blok samen te stellen uit bundles en publieke transacties.
  • Relays zitten tussen builders en proposers, ontvangen volledige blokken van builders en geven alleen blok-headers plus een waardebod door aan de proposer, zodat de proposer zich vastlegt op een blok voordat hij de inhoud ziet (waardoor de proposer de MEV niet simpelweg zelf kan stelen).
  • Proposers (validators) kiezen de header met het hoogste bod, ondertekenen deze en incasseren de betaling.

Dit wordt off-protocol geimplementeerd via MEV-Boost, middleware die de overgrote meerderheid van Ethereum-validators draait — ruwweg 80-90% van de blokken wordt gebouwd via externe builders via MEV-Boost. Het werkt, maar leunt op vertrouwde relays. De volgende stap, enshrined PBS (ePBS, EIP-7732), beoogt proposer-builder separation direct in het Ethereum-protocol te verankeren en de afhankelijkheid van vertrouwde relays weg te nemen. Medio 2026 staat het gepland voor de Glamsterdam-upgrade, met een beoogde mainnet-activatie later in 2026, waarbij voorstanders beweren dat het MEV-verliezen voor gebruikers substantieel kan verlagen door te verbeteren hoe blokken worden vastgelegd en door het venster voor toxische herordening te versmallen. Behandel de exacte cijfers als ambities totdat het daadwerkelijk uitkomt, maar de richting is duidelijk: het protocol absorbeert de MEV-toeleveringsketen waarvan het jarenlang deed alsof die niet bestond.

MEV-Share: de waarde teruggeven

De meest ingrijpende ontwikkeling voor gewone traders is MEV-Share, de order-flow-veiling van Flashbots. Het idee draait het duistere woud om. In plaats van dat jouw transactie zichtbaar is voor elk roofdier, stuur je hem privé naar een MEV-Share-node, die alleen gedeeltelijke hints erover (jij kiest hoeveel) onthult aan searchers. Searchers bieden om jouw transactie te backrunnen — vergeet niet, een backrun schaadt jou niet — en een groot deel van de resulterende winst wordt aan jou terugbetaald, met de rest verdeeld tussen de searcher en de proposer om de bundle opgenomen te krijgen.

De economische herkadrering is elegant. Een grote swap creeert een backrun-kans; de vraag is wie deze in de wacht sleept. In de wereld van het duistere woud pakken searchers en builders alles. Onder MEV-Share wordt de waarde die jouw eigen transactie creeerde grotendeels aan jou teruggegeven. De consumentgerichte RPC van Flashbots, Flashbots Protect, routeert retail-transacties door dit systeem, en in 2025 voegde het daar gasfee-terugbetalingen aan toe, wat wat gebruikers terugkrijgen betekenisvol vergroot. Dit is het principe "herverdeel het onschuldige, onderdruk het toxische" concreet gemaakt.

5. Praktische verdedigingen voor een trader

Je hoeft geen searcher te draaien om geen prooi meer te zijn. In ruwe volgorde van impact:

Stel slippage bewust in, per pool

Sectie 2 stelde vast dat jouw slippage-tolerantie het budget van de aanvaller is. Daar volgen twee regels uit. Ten eerste: baseer de slippage op de daadwerkelijke liquiditeit van de pool en de prijsimpact van jouw trade, niet op een gewoontematige 1%. Op een diepe pool kan een tolerantie van 0,1-0,3% ruim voldoende zijn; op een dunne pool moet je ofwel accepteren dat je niet veilig met omvang kunt handelen, of opsplitsen in kleinere delen. Ten tweede: gebruik nooit "auto"/"onbeperkte" slippage op een paar met lage liquiditeit — het is een ondertekende blanco cheque. Als een swap steeds revert bij een strakke tolerantie, vertelt de markt je daarmee dat jouw trade te groot is voor de pool, niet dat je de ondergrens moet verruimen.

Route via een privé-RPC

De schoonste structurele oplossing is om jouw transactie volledig buiten de publieke mempool te houden. Richt je wallet op een privé-RPC die transacties direct doorstuurt naar builders in plaats van ze te verspreiden:

  • Flashbots Protect — stuurt jouw transactie in het MEV-Share-systeem, zodat deze nooit publiekelijk zichtbaar is voor frontrunners, en geeft een deel van eventuele backrun-waarde plus gasrestituties terug.
  • MEV Blocker (van CoW Protocol en anderen) — een vergelijkbare privé-RPC-dienst die beschermt tegen frontrunning en sandwiching en backrun-winst terugbetaalt aan gebruikers, met een gratis te gebruiken feemodel.

Omdat een sandwich vereist dat de aanvaller jouw pending transactie ziet en er een frontrun voor invoegt, elimineert het verwijderen van jouw transactie uit de publieke mempool de frontrun-kans volledig. De backrun-kans blijft bestaan, maar wordt nu aan jou terugveild in plaats van gestolen. De afweging is een beetje vertrouwen in de RPC-operator en, af en toe, marginaal langzamere opname — meestal triviaal vergeleken met het elimineren van sandwich-risico. (Een benchmarkstudie uit 2025 naar privé-beschermende RPC's vond dat hun praktijkuitkomst niet altijd strikt beter is dan publieke indiening, dus het effect is sterk maar niet universeel; voor de meeste DEX-swaps op retail-schaal blijft privé-routering echter de juiste standaardkeuze.)

Geef de voorkeur aan batch-auction- en intentiegebaseerde platforms

Sommige DEX-ontwerpen elimineren het ordeningsvoordeel door hun constructie. CoW Protocol verrekent trades in batch-veilingen met een uniforme clearingprijs — elke trade in een batch wordt tegen dezelfde prijs verrekend, dus er is geen "eerste" en "laatste" positie om te exploiteren, en solvers concurreren om jou de beste uitvoering te geven in plaats van om jou heen te herordenen. Intentiegebaseerde systemen, waarbij je ondertekent wat je wilt en solvers de uitvoering laat vinden, in plaats van een specifiek pad te ondertekenen, ontzeggen de sandwich eveneens zijn houvast. Als je met omvang handelt, zijn deze platforms meer waard dan welke slippage-aanpassing dan ook.

Begrijp waarom L2's anders zijn

Op de meeste Ethereum-rollups vandaag (Arbitrum, Optimism, Base) worden blokken geproduceerd door een enkele sequencer, geexploiteerd door het rollup-team. Er is geen publieke mempool met pending transacties waar searchers naar kunnen kijken, en er is een enkele vertrouwde partij die de volgorde bepaalt. In de praktijk ordenen de meeste sequencers transacties op volgorde van binnenkomst en voeren ze geen sandwich-aanvallen uit tegen hun gebruikers, dus sandwiching is grotendeels afwezig op deze chains op protocolniveau.

Maar lees de afweging precies: de reden dat je veilig bent voor gedecentraliseerde MEV-extractie, is dat je erop vertrouwt dat een gecentraliseerde ordenaar deze niet extraheert. De sequencer zou je kunnen frontrunnen; hij kiest er simpelweg voor (en is daar reputatiegebonden aan) dat niet te doen. Dit is een tijdelijk evenwicht. Naarmate rollups hun sequencers decentraliseren — shared sequencers, based sequencing, PBS-achtige veilingen op L2 — kunnen dezelfde dynamiek van mempool-zichtbaarheid en te-koop-staande ordening opnieuw ontstaan, en wordt de L2-MEV-vraag een open ontwerpprobleem in plaats van een opgelost probleem. Ga er niet vanuit dat "ik zit op een L2" voor altijd betekent "MEV kan mij niet raken"; het betekent "een vertrouwde partij heeft beloofd dat voorlopig niet te doen".

Wat je meeneemt naar de rest van de reeks

Strip het onderwerp tot zijn dragende feiten:

  1. Een swap in de publieke mempool is publieke intentie plus een koopbare ordeningsplek. Die combinatie, en niet een enkele bug, is het hele probleem.
  2. Op een constant-product-AMM is jouw slippage-tolerantie een grootheid die een aanvaller kan extraheren, en de opbrengst van een sandwich wordt exact begrensd door de ruimte die jij hebt achtergelaten. Slippage instellen is een veiligheidsbeslissing, geen gemakstoggle.
  3. MEV is niet monolithisch: frontruns en sandwiches zijn toxisch; backruns en atomaire arbitrage zijn onschuldig en zelfs nuttig, omdat ze on-chain prijzen consistent houden. Goede mitigatie onderdrukt het eerste en herverdeelt het tweede.
  4. De reactie van de industrie liep van PGA's (publieke gasoorlogen, Flash Boys 2.0, 2019) naar Flashbots / bundles / PBS (gesloten privéveilingen) naar MEV-Share (backrun-waarde teruggeven aan de gebruiker) en, vervolgens, enshrined PBS in het protocol.
  5. Als trader zijn jouw verdedigingen strakke, per-pool slippage, privé-RPC's (Flashbots Protect, MEV Blocker) en batch-auction-platforms — en het besef dat L2-veiligheid momenteel een vertrouwensaanname in de sequencer is, geen natuurwet.

Het stuk over atomaire arbitrage en flash loans neemt de kant van de searcher in dit verhaal — hoe de onschuldige extractie wordt opgebouwd, met geleend kapitaal en atomaire reverts als vangnet. Het stuk over Uniswap v3 concentrated liquidity herneemt de constant-product-wiskunde hierboven en laat zien hoe concentrated liquidity de prijsimpact-curve — en dus het sandwich-budget — dat we hier hebben afgeleid, hervormt. De mempool is een duister woud. Nu weet je wat er in jaagt.

Referenties

  • 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-documentatie: MEV-Boost, MEV-Share, Flashbots Protect, MEV refunds (docs.flashbots.net).
  • Ethereum PBS / EIP-7732 (enshrined proposer-builder separation), materiaal over de Glamsterdam-upgrade.
  • MEV Blocker (mevblocker.io); batch-auction-ontwerp van CoW Protocol.
  • Private MEV Protection RPCs: A Benchmark Study (arXiv:2505.19708, 2025).
Disclaimer: De informatie in dit artikel is uitsluitend bedoeld voor educatieve en informatieve doeleinden en vormt geen financieel, beleggings- of handelsadvies. Het handelen in cryptovaluta brengt een aanzienlijk risico op verlies met zich mee.

Auteurs

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

Blijf de markt voor

Abonneer je op onze nieuwsbrief voor exclusieve AI-handelsinzichten, marktanalyses en platformupdates.

We respecteren je privacy. Je kunt je op elk moment afmelden.