MEV anatomisi: sandwich saldırıları, frontrunning ve mempool'un karanlık ormanı
Merkeziyetsiz bir borsada bir swap imzalayıp bunu herkese açık bir RPC uç noktasına yayınladığınızda, bir eşleştirme motoruna özel bir talimat göndermiş olmazsınız. İmzalı, çalıştırılabilir bir niyet beyanını küresel bir ilan panosuna yayımlamış ve bunu çalıştırmayı kabul edecek olan kişiye bir ödül eklemiş olursunuz: gas ücreti. Bu beyanı herkes okuyabilir. Kimse bunu adilce, sırayla veya hiç çalıştırmakla yükümlü değildir. İşleminizin diğer işlemlere göre nereye yerleşeceği, gönderiminizin bir özelliği değildir; bunu size karşı yaparak kar eden üçüncü bir tarafın verdiği bir karardır.
Zincir üzerinde işlem yapmanın rahatsız edici özü budur. Kripto Piyasalarında İstatistiksel Arbitraj ve Çift İşlem (Pairs Trading) yazısında, bir pozisyonu CEX ile DEX arasında taşımanın "MEV riski" taşıdığını geçerken belirtmiş ve bunu havada asılı bir terim olarak bırakmıştık. Bu makale o borcu ödüyor. Zincir üzerinde işlem gerçekleştirme ekonomisi üzerine bir dizinin giriş kapısıdır ve görevi kelime dağarcığını (mempool, bundle, backrun, sandwich, PBS) yeterince kesin biçimde tanımlamaktır; öyle ki flash loan'lı atomik arbitraj ve kantitatif yatırımcılar için Uniswap v3 yoğunlaştırılmış likidite üzerine sonraki yazılar, mekanizmayı zaten anladığınızı varsayabilsin.
MEV (Maximal ya da Maximum Extractable Value, yani Azami Çıkarılabilir Değer), bir tarafın standart blok ödülü ve öncelik ücretlerinin ötesinde, bir blok içindeki işlemlerin dahil edilmesini, dışlanmasını ve sıralanmasını seçerek çıkarabildiği kardır. Bir hata değildir; izinsiz (permissionless) blok zincirlerinin işlemleri nasıl sıraladığının yapısal bir sonucudur. Mekanizma 2019'da resmi olarak tanımlandığından bu yana, kümülatif olarak çıkarılan değer milyarlarca dolara ulaştı ve bunu yakalayıp yeniden dağıtmak için koca bir sektör (searcher'lar, builder'lar, relay'ler, blok proposer'ları) ortaya çıktı. Zincir üzerinde işlem yapıyorsanız, ya bu vergiyi ödüyorsunuzdur ya da ödememek için bilinçli adımlar atmışsınızdır.
1. İşlem yaşam döngüsü: niyetiniz neden herkese açık
Değerin nereden sızdığını görmek için, bir işlemi cüzdanınızdan sonlandırılmış bir bloğa kadar takip edin.
Herkese açık mempool
Cüzdanınız bir işlemi imzalayıp standart bir node'un RPC uç noktasına gönderdiğinde, node bunu doğrular (imza, nonce, yeterli bakiye) ve geçerse eşten eşe (peer-to-peer) ağ üzerinden diğer node'lara yayar. Her node, henüz dahil edilmemiş bu işlemleri mempool (memory pool, bellek havuzu) adı verilen yerel bir tamponda tutar. Bir iki saniye içinde, ağdaki neredeyse her node (tüm işi bekleyen işlemlerden değer çıkarmak olan tarafların işlettiği node'lar dahil) imzalı ve tamamen çözümlenmiş işleminizin bir kopyasını tutuyor olur.
"Tamamen çözümlenmiş" ifadesi burada yükü taşıyan ifadedir. İşleminiz opak bir veri yığını değildir. Bilinen bir kontrata yapılmış, ABI ile kodlanmış bir çağrıdır. Mempool'u izleyen herkes bunu çözebilir ve düz bir dille okuyabilir: bu adres, Uniswap v2 WETH/USDC havuzunda 40 ETH'yi USDC'ye çevirmek üzere ve karşılığında 96.000 USDC kadar düşük bir miktarı bile kabul edecek. Bu son ifade (kabul edilebilir asgari çıktı) sizin kayma (slippage) toleransınızdır ve bir ipucu değildir. Calldata içine derlenmiş katı bir parametredir. Birazdan göreceğimiz gibi, bu aynı zamanda saldırganın bütçe kalemidir.
Mempool bazen karanlık orman olarak adlandırılır; bu, Dan Robinson ve Georgios Konstantopoulos'un Liu Cixin'in metaforunu ödünç aldığı 2020 tarihli bir makaleye dayanır: görünür herhangi bir varlığın, göremediğiniz avcılar tarafından anında avlandığı bir uzay. Naif, karlı bir işlemi herkese açık mempool'a yayınlarsanız, o işlem imzaladığınız haliyle asla bir bloğa ulaşmayabilir; bir bot fırsatı çoktan tüketmiş ve çevredeki bloğu size karşı yeniden şekillendirmiş olur.
Öncelik kuyruğu olarak gas ücreti
Ethereum'un ücret piyasası (EIP-1559 sonrası) gas ücretini iki parçaya böler: yakılan bir protokol taban ücreti (base fee) ve blok proposer'ına giden bir öncelik ücreti ("bahşiş" / tip). Bir blok inşa edilirken, builder ekonomik olarak kendisine en çok ödeme yapan işlemleri dahil etmeye motive olur. İlk yaklaşımda mempool, bahşişe göre anahtarlanmış bir öncelik kuyruğudur: daha yüksek bahşiş, daha erken dahil edilme.
Sıralamayı satın alınabilir kılan mekanizma budur. Bekleyen swap'ınızı görürsem ve kendi işlemimin tam sizinkinden önce çalışmasını istersem, hiçbir şeyi hacklememe gerek yoktur. Sadece daha yüksek bir bahşiş ödeyen bir işlem gönderirim. Builder, kendi teşvikini izleyerek benimkini öne koyar. Sıralama, protokolün sağladığı bir adalet güvencesi değildir; protokolün işlettiği bir açık artırmadır ve açık artırmaya çıkarılan mal, bekleyen işleminizdeki bilgiye göre hareket etme hakkıdır.
İki gerçek birleşerek MEV probleminin tamamını oluşturur:
- Bekleyen işlemler görünürdür (herkese açık mempool).
- Onların sıralaması satılıktır (bahşiş önceliğine dayalı açık artırma).
Aşağıdaki her şey bunun bir sonucudur.

2. Sandwich mekaniği, gerçek matematiğiyle
Sandwich, bir swap yapan kişiye karşı kanonik zehirli MEV stratejisidir ve aritmetiği baştan sona işlemeye değer; çünkü rakamlar, kayma ayarınızın neden kontrol ettiğiniz tek en önemli savunma parametresi olduğunu açıklar.
Sabit çarpım değişmezi
Bir Uniswap v2 havuzu, X token'ından ve Y token'ından rezerv tutar ve her işlemden sonra (bir anlığına ücretleri göz ardı ederek) şu değişmezi (invariant) uygular:
Bir trader havuza kadar X token'ı satarsa, yeni X rezervi olur ve 'yi korumak için havuzun ödemesi gereken miktar:
%0,3'lük Uniswap v2 ücretiyle, girdi ile ölçeklenir:
Kilit özellik: bir yönde ne kadar çok alırsanız, marjinal fiyatınız o kadar kötüleşir. Fiyat etkisi konvekstir. Saldırganın paraya çevirdiği şey tam olarak bu konvekslıktır.
Kurulum
Bir WETH/USDC havuzu ele alalım. Rakamları temiz tutmak için, ETH'yi kabaca 2.500 USDC'ye yerleştiren rezervler varsayalım:
- WETH
- USDC
40 WETH ile USDC almak istiyorsunuz (yani havuza WETH satmak). Örnek için ücretleri göz ardı edersek, boş bir blokta dürüst bir gerçekleşme size şunu verirdi:
İşleminizden önceki spot fiyat USDC/WETH'dir, yani işlem öncesi orta fiyata göre 40 WETH 100.000 USDC "değerindedir". Siz 99.601 alırsınız; yaklaşık 399 USDC'lik fark, kendi fiyat etkiniz artı ücretlerdir. Şimdi diyelim ki %1 kayma toleransı belirlediniz. İşleminizin amountOutMin değeri:
Bu sayı artık mempool'da herkese açıktır. Herhangi bir gözlemciye şunu söyler: bu kişi 40 WETH'i karşılığında 98.605 USDC kadar düşük bir miktarı bile kabul edecek. Temiz bir blokta alacağınız (99.601) ile taban değeriniz (98.605) arasındaki fark (yaklaşık 996 USDC), sizi frontrun eden kişiye gönüllü olarak teslim ettiğiniz alandır. Bu, saldırganın bütçesidir.
Saldırı, adım adım
Bir searcher üç işlem oluşturur ve bunları tek bir blok içinde şu sıraya girmeye zorlar:
1. Frontrun (saldırgan önce alır). Saldırgan kendi WETH'sini sizden önce havuza satar ve USDC'nin fiyatını yukarı (WETH'i aşağı) iterek, işleminiz yerleştiğinde her WETH başına daha az USDC almanızı sağlar. Saldırgan bunu, işleminiz yine de amountOutMin değerinizi geçecek şekilde boyutlandırır; geçmezse swap'ınız geri döner (revert) ve sandwich yapılacak bir kurban kalmaz. En uygun frontrun boyutu, sizi tam olarak taban değerinizde bırakan en büyük boyuttur.
Diyelim ki saldırgan kendi 40 WETH'siyle frontrun yapıyor. Havuz 'a hareket eder ve değişmeze göre saldırgan şunu alır:
geriye WETH, USDC rezerv bırakır.
2. Kurban (swap'ınız kötüleşmiş havuza karşı gerçekleşir). 40 WETH'iniz şimdi bu rezervlere karşı yerleşir:
Kısıtı kontrol edin: 98.811 > 98.605, yani işleminiz geri dönmez; gerçekleşir, sadece daha kötü bir fiyatla. Temiz bir blokta alacağınız 99.601 yerine 98.811 aldınız. Kabaca 790 USDC zarardasınız ve bunun olduğunun farkında bile değilsiniz; swap'ınız "başarılı oldu". Havuz artık WETH, USDC.
3. Backrun (saldırgan geri satar). Saldırgan şimdi 1. adımda aldığı USDC'yi havuza geri satar (ya da eşdeğer olarak WETH'sini geri alır) ve sizin işleminizin yarattığı yükselmiş fiyatı yakalar. Elindeki yaklaşık 99.601 USDC ile WETH'yi geri alırsa:
Saldırgan 1. adımda 40 WETH harcadı ve 3. adımda 40,32 WETH geri aldı; gas hariç yaklaşık 0,32 WETH (~800 USDC) kar, neredeyse tamamı sizin kayma bütçenizden çıkarıldı. Kaymanızı sıkarsanız o bütçe küçülür; saldırganın en uygun frontrun boyutu düşer ve belirli bir eşiğin altında sandwich, gas sonrası karlı olmaktan çıkar ve searcher sizi atlar.
Alınacak ders "kayma toleransı kötüdür" değildir. Bir miktar toleransa ihtiyacınız var, aksi halde işlemleriniz sıradan fiyat hareketinde geri döner. Ders şudur: kayma toleransı doğrudan çıkarılabilir bir niceliktir ve onu %1 gibi tembel bir varsayılana veya daha kötüsü ince (thin) bir havuzda "otomatik"e ayarlamak, bunca parayı izleyen herkes için masaya bırakmakla eşdeğerdir. Kendi işleminizin fiyatı yüzde birkaç oynattığı düşük likiditeli bir havuzda, varsayılan bir kayma, nominal değerinizin şok edici bir bölümünü devredebilir.
Bir searcher'ın kar koşulunun asgari bir taslağı:
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
Searcher, vout >= victim_min_out koşulunu koruyan en büyük frontrun'ı bulmak için attack_dx üzerinde küçük bir optimizasyon çalıştırır. O optimum, kayma tabanınızın bağlayıcı olduğu noktadır; bu da saldırganın alacağının tam olarak sizin bıraktığınız alanla sınırlı olduğunu söylemenin başka bir yoludur.
3. Bir MEV taksonomisi: zehirli mi, iyi huylu mu
"MEV" bir hakaret gibi kullanılıyor, ama tamamı bir kurbandan çıkarım değildir. Stratejileri sıralama nedeniyle birinin durumunun kötüleşip kötüleşmediğine göre ayırmak yardımcı olur.
Frontrunning. Bekleyen karlı bir işlemi gözlemleyin, kopyalayın veya önüne geçin ve önce çalışmak için daha yüksek bir bahşiş ödeyin. Arketip, bir fiyatı hareket ettirecek büyük bir alışı görmek ve onun önünde satın almaktır. Tamamen zehirli: kurban daha kötü bir fiyat alır ya da fırsatı doğrudan çalınır.
Backrunning. İşleminizi bir hedef işlemin hemen ardından yerleştirin ve onun yarattığı duruma göre hareket edin. Kritik olarak, saf bir backrun hedefin gerçekleşmesini bozmaz; sonra çalışır, dolayısıyla kurbanın fiyatı zaten kilitlenmiştir. Büyük swap'ınız WETH/USDC havuzunu Binance ile uyumsuz hale getirirse, bir arbitrajcı yeniden hizalamak için sizi backrun eder ve farkı cebine atar. Zarar görmezsiniz; aslında bu arbitraj, zincir üzerindeki fiyatların daha geniş piyasayı takip etmesini sağlayan şeydir. Backrunning, yelpazenin iyi huylu ucudur ve (göreceğimiz gibi) modern MEV korumalı sistemler tam olarak backrun karını onu yaratan kullanıcıya geri vermek için kurulmuştur.
Sandwiching. Yukarıda ayrıntılı biçimde incelendiği üzere, aynı kurbanın etrafına sarılmış bir frontrun ile bir backrun. Yapı gereği zehirli: frontrun yalnızca kurbanın gerçekleşmesini kötüleştirmek için vardır, öyle ki backrun onu hasat edebilsin.
Atomik arbitraj. Bir varlığı bir mekanda ucuza alıp başka bir mekanda pahalıya satan tek bir işlem (diyelim ki WETH'nin Uniswap'ta Sushiswap'a göre daha ucuz olması) ve tek bir işlem içinde ya hep ya hiç prensibiyle risksiz bir kar elde etmek (karlı değilse geri döner). Belirli bir kurban yoktur; piyasanın açık bıraktığı bir fiyat farkını kapatır. Genellikle iyi huylu kabul edilir (mekanlar arası fiyat tutarlılığını iyileştirir) ve bu dizideki atomik arbitraj ve flash loan'lar yazısının konusudur; orada flash loan'ların "sermaye gerektirmeme" özelliği bunu özellikle keskinleştirir.
Tasfiyeler (Liquidations). Bir borç verme pozisyonu (Aave, Compound, Maker) teminat eşiğinin altına düştüğünde, protokol kötü borcu geri ödeyip teminata el koyan kişiye bir bonus sunar. Searcher'lar o tasfiyeci olmak için rekabet eder. Bir "kurban" vardır (tasfiye edilen borçlu) ancak protokolün kuralları gereği zaten tasfiye edilmektedir; MEV rekabeti çoğunlukla bonusu kimin alacağını belirler ve rekabet yoluyla onu küçültebilir. Piyasa sağlığı açısından nötr-iyi huylu, borçlu için tatsız diyelim.
Kaba bir harita:
| Strateji | Kurban zarar görür mü? | Hüküm |
|---|---|---|
| Frontrun | Evet | Zehirli |
| Sandwich | Evet | Zehirli |
| Backrun (saf) | Hayır | İyi huylu |
| Atomik arbitraj | Hayır | İyi huylu (fiyat tutarlılığını iyileştirir) |
| Tasfiye | Borçlu (protokol kurallarına göre) | Nötr |
Zehirli/iyi huylu ayrımı önemlidir; çünkü tüm modern MEV azaltma yığını, iyi huylu stratejileri korurken ve yeniden dağıtırken zehirli stratejileri bastırma girişimidir. Sıralama oyunlarını, DEX fiyatlarını dürüst tutan arbitrajı da bozmadan yasaklayamazsınız. İşin püf noktası, zehirli değeri alındığı kişiye geri yönlendirmektir.
4. Kısa bir tarih: gas açık artırmalarından Flashbots'a
Flash Boys 2.0 ve öncelik gas açık artırmaları
Fenomen, Philip Daian, Steven Goldfeder, Tyler Kell, Yunqi Li, Xueyuan Zhao, Iddo Bentov, Lorenz Breidenbach ve Ari Juels tarafından yazılan 2019 tarihli "Flash Boys 2.0: Frontrunning, Transaction Reordering, and Consensus Instability in Decentralized Exchanges" makalesinde adlandırıldı ve ölçüldü. Makale "miner extractable value" (madenci çıkarılabilir değeri) terimini ortaya koydu (sektör proof-of-work madencilerinden proof-of-stake proposer'larına geçtikçe daha sonra maximal çıkarılabilir değere genelleştirildi) ve öncelik gas açık artırmalarını (priority gas auctions, PGA'lar) belgeledi: botların, karlı bir fırsatın sıralamasını kazanmak için gerçek zamanlı olarak gas fiyatı üzerinden birbirlerini yukarı fiyatlaması.
PGA'lar gözle görülür biçimde patolojikti. Botların elindeki tek kaldıraç herkese açık gas fiyatı olduğu için, tek bir arbitraj veya tasfiyeyi kapmak için açık teklif savaşları verdiler; aynı birkaç saniye içinde tekrar tekrar daha yüksek ve daha yüksek bahşişlerle yeniden gönderim yaptılar. İki çirkin sonuç doğdu. Birincisi, bu ağı tıkadı ve MEV ile ilgili olsun olmasın herkes için gas fiyatlarını şişirdi. İkincisi ve daha endişe verici olanı, makale şunu savundu: bir bloktaki mevcut MEV blok ödülünü aşarsa, rasyonel madenciler onu çalmak için zinciri yeniden düzenlemeye teşvik edilecekti; bu da uzlaşı (consensus) kararlılığının kendisini tehdit ediyordu. MEV yalnızca bir kullanıcı adaleti sorunu değildi; zincir için bir tehditti.
Yanıt olarak Flashbots
Flashbots 2020'de PGA'yı etkisiz hale getirmek için piyasaya çıktı. Öngörüsü şuydu: sıralama açık artırmasını herkese açık mempool'un dışına, kapalı teklifli, zincir dışı bir kanala taşımak. Bir işlemi yayınlayıp herkese açık bir gas savaşı vermek yerine, bir searcher bir bundle oluşturur (belirli bir göreli sırada, atomik olarak, ya hep ya hiç dahil edilecek sıralı bir işlem listesi) ve bunu bir teklifle birlikte (genellikle gas fiyatı üzerinden değil, doğrudan proposer'a transfer olarak ödenir) özel olarak bir blok builder'ına gönderir. Builder, aldığı tüm bundle ve işlemlerden inşa edebileceği en değerli bloğu oluşturur ve proposer'a sunar.
Aynı anda iki şey iyileşir. Searcher'lar herkese açık mempool'u başarısız tekliflerle spamlamayı bırakır, böylece sıradan kullanıcılar üzerindeki gas fiyatı dışsallığı azalır. Ve kazanan bundle ya bütün olarak yerleşir ya da hiç yerleşmez; eskiden blokları tıkayan "başarısız frontrun" işlemleri ortadan kalkar. Teklif savaşı hala olur; sadece zincir üzerinde herkese açık bir bağrışma yarışması yerine builder içinde özel bir açık artırma olarak gerçekleşir.
PBS: proposer-builder ayrımı
Flashbots'un mimarisi, bugün Ethereum'daki baskın model olan proposer-builder ayrımına (proposer-builder separation, PBS) genelleşti. Roller bölünür:
- Searcher'lar MEV fırsatlarını bulur ve bunları bundle'lara paketler.
- Builder'lar bundle'lardan ve herkese açık işlemlerden en değerli tek tam bloğu oluşturmak için rekabet eder.
- Relay'ler builder'lar ile proposer'lar arasında yer alır; builder'lardan tam blokları alır ve proposer'a yalnızca blok başlıklarını artı bir değer teklifi iletir, böylece proposer bir bloğun içeriğini görmeden ona bağlanır (proposer'ın MEV'i çekip çalmasını önler).
- Proposer'lar (validatörler) en yüksek teklife sahip başlığı seçer, imzalar ve ödemeyi toplar.
Bu, Ethereum validatörlerinin ezici çoğunluğunun çalıştırdığı MEV-Boost ara yazılımı aracılığıyla protokol dışında uygulanır; blokların yaklaşık %80-90'ı MEV-Boost aracılığıyla harici builder'lar üzerinden inşa edilir. İşe yarıyor, ama güvenilir relay'lere dayanıyor. Bir sonraki adım, yerleşik PBS (enshrined PBS, ePBS, EIP-7732), proposer-builder ayrımını doğrudan Ethereum protokolüne yerleştirmeyi ve güvenilir relay bağımlılığını kaldırmayı hedefler. 2026 ortası itibarıyla Glamsterdam yükseltmesi için planlanmış olup, 2026'nın ilerleyen aylarında bir ana ağ (mainnet) aktivasyonu hedefleniyor; savunucuları, blokların nasıl bağlandığını iyileştirerek ve zehirli yeniden sıralama penceresini daraltarak kullanıcıların MEV kayıplarını önemli ölçüde azaltabileceğini iddia ediyor. Uygulanana kadar kesin rakamları temenni niteliğinde kabul edin, ama yön açık: protokol, yıllarca yokmuş gibi davrandığı MEV tedarik zincirini kendi bünyesine katıyor.
MEV-Share: değeri geri vermek
Sıradan trader'lar için en önemli gelişme, Flashbots'un emir akışı açık artırması olan MEV-Share'dir. Fikir, karanlık ormanı tersine çevirir. İşleminizin her avcıya görünür olması yerine, onu özel olarak bir MEV-Share node'una gönderirsiniz; bu node, hakkında yalnızca kısmi ipuçları (ne kadarını siz seçersiniz) searcher'lara açıklar. Searcher'lar işleminizi backrun etmek için teklif verir (unutmayın, bir backrun size zarar vermez) ve elde edilen karın büyük bir kısmı size iade edilir; geri kalanı, bundle'ın dahil edilmesini sağlamak için searcher ve proposer arasında paylaşılır.
Ekonomik yeniden çerçeveleme zariftir. Büyük bir swap bir backrun fırsatı yaratır; soru, onu kimin yakalayacağıdır. Karanlık orman dünyasında searcher'lar ve builder'lar bunun tamamını alır. MEV-Share altında, kendi işleminizin yarattığı değer büyük ölçüde size geri döner. Flashbots'un tüketiciye dönük RPC'si Flashbots Protect, perakende işlemlerini bu sistem üzerinden yönlendirir ve 2025'te bunun üstüne gas ücreti iadeleri de ekledi, kullanıcıların geri aldığı miktarı anlamlı biçimde artırdı. Bu, "iyi huyluyu yeniden dağıt, zehirliyi bastır" ilkesinin somutlaşmış halidir.
5. Bir trader için pratik savunmalar
Av olmayı bırakmak için bir searcher çalıştırmanıza gerek yok. Etki açısından kabaca şu sırayla:
Kaymayı bilinçli olarak, havuz bazında ayarlayın
- Bölüm, kayma toleransınızın saldırganın bütçesi olduğunu ortaya koydu. Bundan iki kural çıkar. Birincisi, kaymayı alışkanlıktan gelen %1'e göre değil, havuzun gerçek likiditesine ve işleminizin fiyat etkisine göre boyutlandırın. Derin bir havuzda %0,1-0,3 tolerans yeterli olabilir; ince bir havuzda ise, ya büyük hacimle güvenle işlem yapamayacağınızı kabul edin ya da daha küçük dilimlere bölün. İkincisi, düşük likiditeli bir çiftte asla "otomatik"/"sınırsız" kayma kullanmayın; bu, imzalı bir boş çektir. Bir swap sıkı bir toleransta sürekli geri dönüyorsa, bu piyasanın size işleminizin havuz için çok büyük olduğunu söylemesidir; tabanı gevşetmeniz için bir davet değil.
Özel bir RPC üzerinden yönlendirin
En temiz yapısal çözüm, işleminizi tümüyle herkese açık mempool'un dışında tutmaktır. Cüzdanınızı, işlemleri yaymak yerine doğrudan builder'lara ileten bir özel RPC'ye yönlendirin:
- Flashbots Protect — işleminizi MEV-Share sistemine gönderir, böylece frontrunner'lara asla herkese açık şekilde görünmez ve herhangi bir backrun değerinin bir payını artı gas iadelerini geri verir.
- MEV Blocker (CoW Protocol ve diğerleri tarafından) — frontrunning ve sandwich'e karşı koruyan ve backrun karını kullanıcılara iade eden benzer bir özel RPC hizmeti; kullanımı ücretsiz bir ücret modeliyle.
Bir sandwich, saldırganın bekleyen işleminizi görmesini ve önüne bir frontrun eklemesini gerektirdiğinden, işleminizi herkese açık mempool'dan çıkarmak frontrun fırsatını doğrudan ortadan kaldırır. Backrun fırsatı kalır, ama artık çalınmak yerine size geri açık artırmaya çıkarılır. Ödünleşim, RPC operatörüne biraz güven ve ara sıra biraz daha yavaş dahil edilmedir; bu genellikle sandwich riskini ortadan kaldırmanın yanında önemsizdir. (2025 tarihli bir özel koruma RPC'leri kıyaslama çalışması, bunların gerçek dünyadaki gerçekleşmesinin herkese açık gönderimden her zaman kesinlikle daha iyi olmadığını buldu; yani etki güçlü ama evrensel değil; çoğu perakende ölçekli DEX swap'ı için özel yönlendirme yine de doğru varsayılandır.)
Toplu açık artırma ve niyet tabanlı mekanları tercih edin
Bazı DEX tasarımları sıralama avantajını yapı gereği ortadan kaldırır. CoW Protocol, işlemleri tek tip takas fiyatlı (uniform clearing price) toplu açık artırmalarla gerçekleştirir; bir partideki her işlem aynı fiyattan takas edilir, dolayısıyla istismar edilecek bir "ilk" ve "son" konum yoktur ve solver'lar sizin etrafınızda yeniden sıralama yapmak yerine size en iyi gerçekleşmeyi vermek için rekabet eder. Ne istediğinizi imzalayıp belirli bir yolu imzalamak yerine solver'ların gerçekleşmeyi bulmasına izin verdiğiniz niyet tabanlı sistemler de sandwich'in tutunacak dalını reddeder. Büyük hacimle işlem yapıyorsanız, bu mekanlar herhangi bir kayma ayarından daha değerlidir.
L2'lerin neden farklı olduğunu anlayın
Bugün çoğu Ethereum rollup'ında (Arbitrum, Optimism, Base), bloklar rollup ekibinin işlettiği tek bir sıralayıcı (sequencer) tarafından üretilir. Searcher'ların izleyeceği, bekleyen işlemlerden oluşan herkese açık bir mempool yoktur ve sırayı belirleyen tek bir güvenilir taraf vardır. Pratikte çoğu sıralayıcı işlemleri ilk gelen ilk hizmet alır (first-come-first-served) mantığıyla sıralar ve kullanıcılarına karşı sandwich saldırıları yapmaz, dolayısıyla sandwich protokol katmanında bu zincirlerde büyük ölçüde yoktur.
Ancak ödünleşimi tam olarak okuyun: merkeziyetsiz MEV çıkarımından güvende olmanızın nedeni, merkezi bir sıralayıcıya bunu çıkarmayacağı konusunda güvenmenizdir. Sıralayıcı sizi frontrun edebilir; sadece etmemeyi seçer (ve itibar açısından buna bağlıdır). Bu, geçici bir dengedir. Rollup'lar sıralayıcılarını merkeziyetsizleştirdikçe (paylaşımlı sıralayıcılar, based sequencing, L2'de PBS tarzı açık artırmalar) aynı mempool görünürlüğü ve sıralamanın satılık olması dinamikleri yeniden ortaya çıkabilir ve L2 MEV sorunu, çözülmüş değil, açık bir tasarım problemi haline gelir. "L2'deyim" ifadesinin süresiz olarak "MEV bana dokunamaz" anlamına geldiğini varsaymayın; bu, "güvenilir bir taraf şimdilik etmeyeceğine söz verdi" anlamına gelir.
Dizinin geri kalanına ne taşımalı
Konuyu yük taşıyan gerçeklerine indirgeyin:
- Herkese açık mempool'a giren bir swap, herkese açık niyet artı satın alınabilir bir sıralama slotudur. Herhangi bir tek hata değil, işte bu birleşim tüm sorundur.
- Sabit çarpımlı bir AMM'de, kayma toleransınız bir saldırganın çıkarabileceği bir niceliktir ve bir sandwich'in alacağı, tam olarak sizin bıraktığınız alanla sınırlıdır. Kayma ayarlamak bir güvenlik kararıdır, bir kolaylık düğmesi değil.
- MEV monolitik değildir: frontrun'lar ve sandwich'ler zehirlidir; backrun'lar ve atomik arbitraj iyi huyludur ve hatta faydalıdır, çünkü zincir üzerindeki fiyatları tutarlı tutarlar. İyi bir azaltma, birincisini bastırır ve ikincisini yeniden dağıtır.
- Sektörün yanıtı, PGA'lardan (herkese açık gas savaşları, Flash Boys 2.0, 2019) Flashbots / bundle'lar / PBS'ye (kapalı özel açık artırmalar), oradan MEV-Share'e (backrun değerini kullanıcıya geri verme) ve sırada, protokoldeki yerleşik PBS'ye kadar uzandı.
- Bir trader olarak savunmalarınız, havuz bazında sıkı kayma, özel RPC'ler (Flashbots Protect, MEV Blocker) ve toplu açık artırma mekanlarıdır; ayrıca L2 güvenliğinin şu an sıralayıcıya duyulan bir güven varsayımı olduğu, bir fizik yasası olmadığı bilinciyle.
Atomik arbitraj ve flash loan'lar yazısı bu tablonun searcher tarafını ele alır: iyi huylu çıkarımın nasıl inşa edildiğini, ödünç alınmış sermaye ve güvenlik ağı olarak atomik geri dönüşlerle. Uniswap v3 yoğunlaştırılmış likidite yazısı, yukarıdaki sabit çarpım matematiğini yeniden ele alır ve yoğunlaştırılmış likiditenin, burada türettiğimiz fiyat etkisi eğrisini (ve dolayısıyla sandwich bütçesini) nasıl yeniden şekillendirdiğini gösterir. Mempool bir karanlık ormandır. Artık orada neyin avlandığını biliyorsunuz.
Referanslar
- 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 dokümantasyonu: MEV-Boost, MEV-Share, Flashbots Protect, MEV iadeleri (docs.flashbots.net).
- Ethereum PBS / EIP-7732 (yerleşik proposer-builder ayrımı), Glamsterdam yükseltmesi materyalleri.
- MEV Blocker (mevblocker.io); CoW Protocol toplu açık artırma tasarımı.
- Private MEV Protection RPCs: A Benchmark Study (arXiv:2505.19708, 2025).
Yazarlar
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.