MEV (Maximal Extractable Value) — это извлечение ценности из сети блокчейна путем добавления, удаления или переупорядочивания транзакций, включенных в блок. Эта концепция возникла в сообществе Ethereum довольно давно (конечно, если считать в криптогодах). Тем не менее, MEV начал выходить на новый уровень объемов с ростом инфраструктуры DeFi, что открыло больше возможностей для серверов.
Проще говоря, принцип работы MEV таков: «Эй, майнер, помести мою транзакцию рядом с той, чтобы я заработал 1 ETH, а тебе отдам половину».
Очевидно, что это беспроигрышная ситуация как для того, кто нашел транзакцию (серверы), так и для тех, кто может изменить порядок транзакции при создании блока.
Важным термином при работе с MEV является mempool. В терминологии блокчейна mempool — это пул ожидания для транзакций, которые еще не были добавлены в блок и все еще находятся в состоянии ожидания. Конечно, любой может увидеть все транзакции, которые находятся в этом состоянии ожидания, и понять, как они могут повлиять на определенные состояния контракта.
Что люди ищут в блокчейне сегодня?
На момент написания статьи наиболее популярными применениями механики MEV являются:
Арбитраж DEX и сэндвич-атаки
Mempool предоставляет трейдерам уникальную возможность предвидеть цены на биржах. Большинство децентрализованных бирж работают с алгоритмами маркет-мейкинга , которые позволяют знать текущее состояние пулов (биржевых контрактов) и входящих транзакций из mempool, чтобы знать состояние цены после каждой предстоящей транзакции в блоке. Это открывает возможность как обычного арбитража между разными биржами внутри одного блока, так и сэндвич-атак — купли-продажи вокруг одной транзакции или наоборот. Например, трейдер видит в mempool большую транзакцию на покупку токена SAND. Затем он отправляет майнеру свои 2 транзакции: свою покупку токена SAND прямо перед большой транзакцией и мгновенную продажу после этой транзакции.
Ликвидации
Такие кредитные протоколы, как Maker, Compound и Aave, требуют от пользователей внесения залога (например, ETH). Этот внесенный залог затем используется для предоставления кредита другим пользователям. Как только у этого залога появляется потенциальный риск не обеспечить кредит (параметры риска для этого определяются сообществом DAO заранее), любой пользователь сети может ликвидировать долг, забрав залог себе. В этом случае, например, долг может составлять $80 тыс., а его залог — $100 тыс., таким образом, ликвидатор получает мгновенную прибыль.
НФТ МЭВ
Имея доступ к общей информации о входящих транзакциях, можно обнаружить завершение аукционов NFT или их падение, что открывает возможности для получения прибыли от них. Например, если есть популярный падение NFT и трейдер хочет определенный NFT или набор NFT, он может настроить свою транзакцию так, чтобы быть первым в очереди на покупку NFT, или он может купить весь набор NFT сразу.
Инфраструктура МЭВ
Сообщество Flashbots сыграло большую роль в развитии инфраструктуры MEV. Они предложили инфраструктуру mev-boost, которая по сути является улучшенным клиентом geth (т. е. клиентом узла Ethereum). В этой статье я рассмотрю эту инфраструктуру, так как в настоящее время большинство сборщиков в сети Ethereum используют ее. Однако распространенность Flashbots Builder резко упала в производстве блоков, хотя на пике он собирал почти 80% всех блоков Ethereum.
Давайте кратко рассмотрим процесс «майнинга» в Ethereum 2.0 после слияния. Теперь за создание блоков отвечают 3 агента:
- Block builder. Block beider получает транзакции от серверов и пользователей, которые, помимо оплаты газа, выражают свою предпочтительную позицию в блоке, делая ставки с ограниченной ценой. Задача участника торгов — построить наиболее прибыльный блок, используя различные стратегии.
- Блок-ретранслятор. Блок-ретранслятор — это агент, отвечающий за проверку блоков перед их передачей валидаторам. Блок-ретранслятор защищает валидаторы от спама, проверяя блоки-строители на валидность и оценивая значение каждого блока, связанного с MEV.
- Валидатор блоков. Валидатор блоков в архитектуре mev-boost — это участник Beacon Chain, выбранный для предложения блока для определенного слота. Валидатор связывается с ретранслятором, чтобы получить наиболее прибыльный заголовок блока, который он проверяет, подписывая его своим открытым ключом через эскроу.
Таким образом, пользователи сети могут напрямую влиять на сбор блоков через инфраструктуру mev-boost. Для организации транзакций используются пакеты, представляющие собой упорядоченный набор транзакций, которые сервер отправляет строителю через API.
Практический пример: последствия отсутствия защиты MEV
Представьте, что Алиса хочет обменять большую сумму криптовалюты на децентрализованной бирже (DEX). Она отправляет свою транзакцию в сеть, но прежде чем она будет включена в блок, злоумышленник замечает ожидающую транзакцию. Затем злоумышленник отправляет серию транзакций, чтобы манипулировать ценой криптовалюты, выполняя атаку с опережением или сэндвич-атаку.
Вот пошаговое описание того, что происходит:
- Отправка транзакции Алисы. Алиса отправляет свою транзакцию на обмен 100 ETH на SAND на DEX.
- Видимость ожидающей транзакции. Перед тем, как транзакция Алисы будет включена в блок, она появляется в пуле ожидающих транзакций, видимая всем, включая злоумышленников.
- Транзакции лидера. Злоумышленник видит крупную транзакцию Алисы и отправляет две транзакции: одну на покупку ETH непосредственно перед транзакцией Алисы (поднимая цену) и одну на продажу ETH сразу после нее (пользуясь возросшей ценой).
- Влияние на Алису. К моменту обработки транзакции Алисы цена ETH выросла, что означает, что она получает меньше SAND за свои 100 ETH. Злоумышленник получает прибыль от разницы в цене.
Без защиты MEV подобные манипуляции более вероятны, что приводит к потере доверия к экосистеме блокчейна и финансовому ущербу для пользователей.
Поставщики RPC с поддержкой MEV
Несколько поставщиков предлагают узлы RPC со встроенной защитой MEV, что обеспечивает более безопасный и честный опыт блокчейна. Вот несколько примечательных из них.
dRPC
dRPC предоставляет конечным точкам RPC надежную защиту MEV, отдавая приоритет справедливому порядку транзакций и снижая риск манипуляции. Их услуги включают:
- Объединение транзакций. Обеспечение группировки и упорядочения транзакций таким образом, чтобы минимизировать возможность извлечения MEV.
- Функции конфиденциальности. Сокрытие ожидающих транзакций до их подтверждения, что снижает риск атак с опережением и сэндвич-атак.
- Мониторинг в реальном времени. Активное сканирование и устранение потенциальных угроз MEV в реальном времени.
dRPC — ведущий поставщик децентрализованных API-интерфейсов блокчейна и узлов RPC, обслуживающий таких клиентов, как Instadapp, SushiSwap, Lido, Curve и более 500 других организаций web3.
Флэшботы защищают
Flashbots — это научно-исследовательская организация, которая занимается смягчением негативных внешних эффектов MEV. Flashbots Protect предлагает конечные точки RPC, которые помогают предотвратить front-running и другие атаки, связанные с MEV, способствуя более здоровой среде блокчейна. Их функции включают:
- Механизм аукциона с закрытыми ставками. Транзакции отправляются таким образом, что их данные скрываются до тех пор, пока они не будут подтверждены, что предотвращает манипуляции до исполнения.
- Мемпул, устойчивый к MEV. Транзакции управляются в мемпуле, который разработан с целью сопротивления эксплуатации MEV.
- Сотрудничество с майнерами. Тесное сотрудничество с майнерами для обеспечения справедливого порядка транзакций и снижения стимулов для добычи MEV.
Основная задача Flashbots — создание общедоступной , прозрачной и устойчивой экосистемы для MEV.
Заключение
Важно выбирать поставщиков RPC, которые предлагают защиту MEV. С dRPC и Flashbots Protect пользователи и разработчики могут значительно снизить риски, связанные с MEV, и внести вклад в более стабильный и надежный децентрализованный ландшафт.