👾 Как MEV может быть полезен для мостов

Cyber Academy
6 min readJul 27, 2022

--

Алекс Шевченко, CEO Aurora, представил MEV с неожиданной перспективы на нашем митапе в Париже. Обычно, когда говорят про MEV, имеют в виду, что это плохой феномен, от которого необходимо избавиться. Но разработчики Aurora сумели использовать для своих целей исключительную способность MEV-ботов моментально находить нужные транзакции, и построили на этом решение для безопасности всего протокола.

Мы сделали конспект основных тезисов доклада и перевели на русский язык. Приятного чтения!

На английском конспект можно почитать тут.

Что такое MEV (Miner Extractable Value)

Майнеры Ethereum имеют возможность изменять порядок транзакций в блоке и извлекать дополнительную ценность. Существует API, разработанный для конкретной реализации ноды Ethereum, который дает вам возможность сообщить арбитражникам, что они могут совершить выгодную сделку. Иногда проведение транзакции сразу после другой конкретной транзакции дает возможность майнеру заработать дополнительную прибыль, если первая транзакция (транзакция, на которую они ссылаются) создает дисбаланс в пуле и возможность арбитража.

Представьте себе юзера, который использует для свопа только простую DEX, даже не агрегатор. И он делает своп в размере $1 миллиона из пула примерно на $10 миллионов. Таким образом, он создает возможность для арбитража. Рекомендую прочитать статью «Эфириум — темный лес». Ключевая мысль в статье в том, что существует множество ботов, которые постоянно следят за мемпулом Ethereum (это зона ожидания для транзакций, которые не были добавлены в блок и до сих пор не подтверждены). И некоторые люди могут заработать на этом большие деньги.

И все это из-за MEV. Майнеры могут выбирать порядок выполнения транзакций и менять их, как LEGO. Некоторые эксперты считают, что MEV вреден для сети, поскольку снижает ценность экосистемы. Другие говорят, что он очень-очень вреден, потому что существует риск сэндвич-атаки на пользователей. Но иногда MEV может решить некоторые проблемы из мира мультичейнов.

Кстати, читайте наш лонгрид про MEV, там можно подробнее об всем узнать.

Я — CEO компании, которая разрабатывает протокол Aurora. Это решение EVM, смарт-контракт и мост к Ethereum, работающий поверх Near. Near — это масштабируемый успешно работающий протокол, и у нас не было нужды копировать уже существующий консенсус и строить свое решение. Но собственная среда выполнения Near не совместима с EVM, и разработчики Ethereum не могут запускать там свои приложения.

Для обычного пользователя Aurora выполняется как отдельный блокчейн. Aurora имеет интерфейс, совместимый с web3, и может подключаться к существующим инструментам DeFi, таким как Metamask, Etherscan и т. д. Наш токен — это ETH, и мы не заставляем людей покупать очередной нативный токен для работы на нашей платформе. Кроме того, мы только что запустили Aurora+, которая помогает людям совершать бесплатные транзакции.

Обзор Rainbow bridge

Также мы разработали Rainbow Bridge, не требующий доверия и разрешений универсальный протокол для соединения блокчейнов, в котором нет валидаторов. Но вместо этого существует совершенно уникальный и чрезвычайно сложный подход. Мы реализовали легкие клиенты Near и Ethereum в виде смарт-контрактов на противоположных цепочках. Мы используем несколько внешних сервисов, которые помогают синхронизировать эти легкие клиенты с основной сетью. Мы называем эти сервисы «ретрансляторами» (relayers).

Рилеер принимает отдельные ордеры и организует их в ордербук, чтобы имитировать работу биржи. Каждые 14 секунд происходит трансляция в блокчейне Near, где наш рилеер берет свежесгенерированный блок Ethereum и отправляет его легким клиентам Ethereum на мосту Rainbow. И каждые четыре часа мы отправляем блоки Near в Ethereum. Единственное, что делает легкий клиент, — это проверяет, был ли блок создан в соответствии с правилами консенсуса блокчейна.

И теперь мы почти готовы к the Merge, который означает полное изменение консенсуса Ethereum. «Просто ничего не делать» — первое, что говорят разработчики юзерам, когда затрагивают тему Merge. Но это не касается нашей команды, потому что нам нужно будет изменить буквально все. Основная часть нашего решения — это легкие клиенты для Ethereum на PoW, реализованные на Near.

У легких клиентов есть свои преимущества. Буквально, у нас есть нода работающая внутри Ethereum. Это означает, что для того, чтобы сломать Near, вам нужно сломать и эту ноду. А это значит, что вам нужно сломать Ethereum.

Подписи, валидация и безопасность

Транзакции на Near очень дешевы. И мы можем включить в одну транзакцию всю проверку блока Ethereum. Стоимость ретрансляции блоков составляет около $2000 в месяц. Это если все блоки Ethereum ретранслируются в Near. Операции в обратном направлении намного сложнее. Дело в том, что родная криптография Near не Secp, а подпись EdDSA25519. И Ethereum не включен в список компиляции для проверки такого рода подписи. Для того, чтобы проверить подпись валидатора в блокчейне Near — нам нужно написать смарт-контракт для проверки, что является крайне сложным подходом. Контракт состоит примерно из 600 строк кода, сгенерированного программой (да, пришлось написать программу, чтобы она написала нам код), и представляет собой буквально ассемблерный код.

Но проверка нескольких подписей в одном блоке Ethereum — непростая задача. Для одной подписи Near требуется дополнительно 1,5 м газа Ethereum. У Near уже около сотни валидаторов, что экономически невыгодно, поэтому мы решили построить оптимистичное взаимодействие Near с Ethereum.

Представим, что кто-то отправляет новый блок легкому клиенту на стороне Ethereum. Этот легкий клиент проверяет все из этого блока: список валидаторов, структуру и т. д. И предполагает, что все подписи верны, а блок остается невалидированным. Существуют внешние службы, которые мы называем watchdogs (сторожевые псы), которые проверяют блоки. И эти watchdogs могут отправлять какие-то подписи на дополнительную проверку. Чтобы стать рилеером, вам нужно застейкать 5 ETH. И если вы указали неверную подпись, эта сумма отправляется к watchdog. Это экономическая причина запуска службы сторожевых псов. Мы были вынуждены имплементировать это решение, потому что EIP-665 все еще не включен в протокол (кстати, голосуйте за пропозалы по обновлениям, если вы их поддерживаете, это ускорит интеграцию Ethereum с крутыми сетями).

Aurora не требует разрешений (permissionless). Любой может стать рилеером, поскольку ограничений нет, и любой может отправить блок на валидацию, просто нужно отправить 5 ETH в стейкинг. Это открывает вектор атаки, так как любой может сфабриковать блок и попытаться забрать ликвидность у Near и высвободить ликвидность на стороне Ethereum.

Мы зафиксировали однажды попытку такой атаки на уровне 1,5 млрд ликвидности в общем пуле. За одну транзакцию кто-то подал заявку на роль рилеера и отправил сфабрикованный блок нашему клиенту Near. Watchdog сразу заметил это, и боты, следящие за пулом, каким-то образом поняли, что они могут отправить такую же транзакцию, как у watchdogs, с другого адреса и получить 5 ETH на счет. И на фейковую транзакцию был немедленный фронтран. Через несколько секунд атака была автоматически подавлена ботами.

Так почему же мы говорим о MEV?

После этой попытки взлома мы решили оставить архитектуру этой части моста такой же, но с некоторыми изменениями — только половина стейка будет отправлена watchdog, а другая — участнику, который сможет быстро обнаружить транзакцию. И, очевидно, мы ожидали, что это будет бот MEV.

Мы могли бы использовать другое решение, такое как применение запросов на то, чтобы стать сторожевыми псами. Но в случае атаки на ваш протокол, единственное, что может противостоять ей, — это быстрая реакция. И лучшая система, которая может быстро отправлять блоки, — это боты MEV. На удивление оказалось, что MEV не такой уж плохой парень.

Как развивать Aurora

Если вы хотите участвовать в развитии протокола Aurora и используете Rainbow Bridge, вы можете помочь повысить безопасность моста, запустив сторожевого пса. Это стоит около $5 в месяц. Этот скрипт не требует никаких сложных действий. Раз в 10 минут он проверяет состояние смарт-контракта клиента Near на Ethereum и корректность блока. Если сеть каким-то образом сможет перенаправить доход MEV пользователям, это может быть очень круто, так как в текущих условиях MEV направляется майнерам.

Cyber Academy — образовательная платформа для блокчейн-разработчиков. Присоединяйтесь к нам ✨

Поддержите нас на Gitcoin

Анонсы | Website | Twitter | Телеграм-чат | GitHub | Facebook | Linkedin

--

--

Cyber Academy
Cyber Academy

Written by Cyber Academy

Образовательная платформа для блокчейн-разработчиков

No responses yet