Sandwich-атака при swap: как ограничить риск MEV
Почему публичный обмен могут окружить чужими сделками, какие ограничения проверять и что реально дают защищённые маршруты и минимальная сумма получения.
Сверены открытые первичные документы по механике и ограничениям. Кошелёк не подключался, действия в текущем интерфейсе и операции с реальными средствами не проверялись. Числа в примерах условные.
Как возникает sandwich
При sandwich-атаке чужие сделки размещают до и после обмена пользователя, чтобы заработать на вызванном движении цены. Публично видимая ожидающая транзакция и широкий допуск к ухудшению результата могут облегчить такую схему. MEV шире sandwich: не каждое изменение цены и не каждая соседняя сделка являются атакой.
Практическая задача пользователя — ограничить разрешённый результат и понять путь отправки. Увидеть разницу между оценкой и фактом недостаточно для обвинения: рынок и ликвидность могли измениться независимо. Для разбора нужны данные маршрута и последовательность операций.
Что проверить до подписи
Сохраните сумму ввода, ожидаемый выход и minimum received. Последний показатель задаёт нижнюю границу в рамках конкретного механизма, а не обещание лучшей рыночной цены. Очень широкий допуск может сделать технически успешным экономически невыгодный обмен.
- Сравните оценку с независимой котировкой на такую же сумму.
- Проверьте глубину ликвидности и price impact маршрута.
- Уточните, используется публичная отправка или специальная защита.
- Прочитайте, какие сети и типы операций эта защита поддерживает.
Возможности защищённого исполнения
Некоторые сервисы используют приватную отправку, а другие — подписанные намерения и конкуренцию исполнителей. Например, модель CoW отделяет намерение пользователя от прямой публикации обычного swap в публичном пуле ожидания. Это меняет поверхность атаки, но не устраняет риск контракта, неверного разрешения или плохой исходной цены.
Условный пример: оценка составляет 100 единиц, а согласованный минимум — 80. Пользователь разрешил большой диапазон ухудшения, даже если считал число 100 гарантией. Более строгая граница может привести к отказу исполнения при движении рынка. Выбор границы требует понимания результата, а не максимизации шанса любой ценой.
Как разбирать уже исполненный обмен
Сопоставьте фактическое получение с подписанными ограничениями и расчётом до отправки. Затем изучите сделки того же пула в блоке, их порядок и изменения резервов. Совпадение адресов или автоматический ярлык аналитики — повод для проверки, а не окончательное доказательство.
Не стоит дробить одну сделку механически: серия операций тоже несёт комиссии и рыночный риск, а возможность экономии зависит от ликвидности и маршрута. При неожиданно плохом результате сохраните хеш и параметры для анализа, прежде чем повторять обмен. Для будущей операции важнее исправить границу получения и способ исполнения, чем пытаться угадать действия конкретного бота.
Что прочитать дальше
Проскальзывание и price impact: как проверить обмен до подписи