
Defeating dust-pool price manipulation: the capital-anchored split allocator
Known formally as The Capital-Anchored Filter in the BlazePhoenix whitepaper.
BlazePhoenix Engineering · updated 2026-07-27 · 8 min · written from the deployed bytecode
By Mitra (@Sigmacrit) — anonymous developer of the BlazePhoenix protocol. The code is the résumé.
Abstract in 15 languages · resumo · resumen · 摘要 · 要旨 · ملخص
English — An aggregator that routes by best marginal price can be fooled by a tiny pool quoting a great rate it cannot honour at size. Anchoring the price filter on the deepest pool by REAL output-token balance separates price quality from depth and prices dust-pool manipulation out of reach.
Português — Um agregador que encaminha pelo melhor preço marginal pode ser enganado por uma pool minúscula que cota uma ótima taxa que não aguenta em tamanho. Ancorar o filtro de preço na pool mais profunda por saldo REAL do token de saída separa qualidade de preço de profundidade e torna a manipulação por dust-pool proibitivamente cara.
Español — Un agregador que enruta por el mejor precio marginal puede ser engañado por una pool minúscula que cotiza una gran tasa que no puede honrar en tamaño. Anclar el filtro de precio en la pool más profunda por saldo REAL del token de salida separa calidad de precio de profundidad y deja la manipulación por dust-pool fuera de alcance.
Français — Un agrégateur qui route au meilleur prix marginal peut être trompé par une pool minuscule affichant un taux excellent qu'elle ne peut tenir à la taille. Ancrer le filtre de prix sur la pool la plus profonde par solde RÉEL du token de sortie sépare qualité de prix et profondeur, et met la manipulation par dust-pool hors de portée.
Deutsch — Ein Aggregator, der nach bestem Grenzpreis routet, lässt sich von einem winzigen Pool täuschen, der eine Top-Rate quotet, die er in Größe nicht hält. Den Preisfilter am tiefsten Pool nach REALEM Output-Token-Bestand zu verankern trennt Preisqualität von Tiefe und macht Dust-Pool-Manipulation unbezahlbar.
Русский — Агрегатор, маршрутизирующий по лучшей маржинальной цене, можно обмануть крошечным пулом, который котирует отличную ставку, но не выдержит объём. Привязка ценового фильтра к самому глубокому пулу по РЕАЛЬНОМУ балансу выходного токена отделяет качество цены от глубины и делает манипуляцию dust-пулами неподъёмной.
Türkçe — En iyi marjinal fiyata göre yönlendiren bir toplayıcı, boyutta karşılayamayacağı harika bir oran veren minik bir havuzla kandırılabilir. Fiyat filtresini GERÇEK çıktı-token bakiyesine göre en derin havuza sabitlemek, fiyat kalitesini derinlikten ayırır ve dust-havuz manipülasyonunu erişilmez kılar.
العربية — المجمّع الذي يوجّه حسب أفضل سعر حدّي يمكن خداعه بمجمّع صغير يسعّر معدلاً رائعاً لا يقدر عليه بالحجم. تثبيت مرشّح السعر على أعمق مجمّع حسب الرصيد الحقيقي لعملة المخرج يفصل جودة السعر عن العمق ويجعل التلاعب بمجمّعات الغبار بعيد المنال.
हिन्दी — सर्वोत्तम सीमांत मूल्य से रूट करने वाला एग्रीगेटर एक छोटे पूल से धोखा खा सकता है जो शानदार दर देता है पर आकार में निभा नहीं सकता। मूल्य फ़िल्टर को आउटपुट-टोकन के वास्तविक बैलेंस के अनुसार सबसे गहरे पूल पर एंकर करना मूल्य गुणवत्ता को गहराई से अलग करता है और डस्ट-पूल हेरफेर को पहुँच से बाहर कर देता है।
日本語 — 最良の限界価格で経路を選ぶアグリゲーターは、規模では守れない好レートを出す極小プールに騙されます。価格フィルターを出力トークンの実残高で最も深いプールに固定すると、価格の良さと深さが分離され、ダストプール操作は割に合わなくなります。
中文 — 按最优边际价格选路的聚合器,会被一个报出好价却无法在规模上兑现的极小池骗到。把价格过滤锚定在按输出代币真实余额最深的池上,可将价格质量与深度分离,令灰尘池操纵得不偿失。
한국어 — 최적 한계가격으로 경로를 정하는 애그리게이터는 규모에서 지킬 수 없는 좋은 요율을 부르는 아주 작은 풀에 속을 수 있습니다. 가격 필터를 출력 토큰의 실제 잔액 기준 가장 깊은 풀에 고정하면 가격 품질과 깊이가 분리되고 더스트 풀 조작은 수지가 맞지 않게 됩니다.
Bahasa Indonesia — Agregator yang merutekan berdasar harga marginal terbaik bisa ditipu pool mungil yang mengutip rate bagus yang tak sanggup dipenuhi pada ukuran. Menambatkan filter harga pada pool terdalam menurut saldo token keluaran YANG NYATA memisahkan kualitas harga dari kedalaman dan membuat manipulasi dust-pool tak terjangkau.
বাংলা — সেরা প্রান্তিক দামে রুট করা অ্যাগ্রিগেটরকে একটি ক্ষুদ্র পুল ঠকাতে পারে যা দারুণ রেট দেখায় কিন্তু আকারে রাখতে পারে না। আউটপুট-টোকেনের প্রকৃত ব্যালেন্স অনুযায়ী গভীরতম পুলে দাম ফিল্টার নোঙর করা দামের মান ও গভীরতাকে আলাদা করে এবং ডাস্ট-পুল কারসাজিকে নাগালের বাইরে করে।
Filipino — Ang aggregator na nagruruta ayon sa pinakamagandang marginal na presyo ay maaaring malinlang ng maliit na pool na nagko-quote ng magandang rate na hindi kaya sa laki. Ang pag-angkla ng price filter sa pinakamalalim na pool ayon sa TUNAY na balanse ng output-token ay naghihiwalay ng kalidad ng presyo mula sa lalim at ginagawang hindi sulit ang dust-pool manipulation.
When an aggregator splits your trade across several pools, it has to decide which pools deserve a share and how much. The naive rule is "take the best price". The problem is that a price, on its own, says nothing about how much of your trade that price can absorb — and an attacker who understands this can build a trap out of a pool with almost nothing in it.
The dust-pool attack
Create a pool with a tiny amount of liquidity and set its ratio so it advertises a spectacular marginal rate — better than every real pool for the pair. An aggregator that ranks candidates by marginal price sees this dust pool at the top and routes toward it. But the pool holds almost nothing: past the first few tokens the price collapses, and the portion of your trade sent there is filled at a far worse rate than promised. The great quote was real for one wei and fiction for everything after it.
The subtle version poisons a MEDIAN. If the allocator picks a reference price by taking the median across candidate pools, seeding the set with several dust pools drags the median toward the fake rate, distorting how the whole trade is split — not just the slice sent to the dust. The manipulation does not need to win the route outright; it only needs to move the number the allocator trusts.
The fix: anchor on real capital, not on quoted price
BlazePhoenix filters candidates with a marginal-rate test ANCHORED on the deepest pool by real output-token balance — the balance the pool actually holds on-chain, read directly, not the depth it reports. The pool with the most genuine capital sets the reference against which every other candidate's marginal rate is judged. A dust pool cannot pass, because its spectacular rate is measured against an anchor it has no capital to rival, and its tiny real balance excludes it from setting the reference in the first place.
This is the same move as the phantom-liquidity defence, applied to routing: trust the balance the chain can prove, never the depth a market advertises. The anchor separates the two things a naive allocator conflates — PRICE QUALITY (is this a good rate?) and DEPTH (can it fill my size?) — and it refuses to let the first be claimed without the second.
Then split by depth
Once the anchor has admitted only pools with real capacity, allocation across them is DEPTH-WEIGHTED: each admitted pool receives a share proportional to how much of your trade it can absorb near the anchored price, across two routing topologies (a direct single-hop and multi-hop paths through a bridge asset). The trade lands where the liquidity genuinely is, so the realised average price tracks the quote instead of decaying into a pool that could never have filled its allocation.
The result is a router that cannot be steered by a cheaply-built lie. An attacker can always create a pool that quotes a wonderful price; what they cannot cheaply create is a pool that HOLDS a great deal of the token you are buying. By anchoring on the second thing rather than the first, the allocator prices manipulation out of reach.
Do not trust this page — reproduce it
Every claim above is checkable against the chain. Start here:
Read the real output-token balanceOf the pools for a pair, then check that our route sends size toward the pools with genuine capital rather than toward whichever pool advertises the best marginal rate — the anchor is a balance you can read, not a price you must trustContracts are verified on every chain we deploy to — addresses in the protocol manifest. Deeper formal treatment: the whitepaper (PDF). Standards cited: EIP-20
Share this article · join the discussion