Обновление Amarok AMB

Connext Russian
6 min readAug 28, 2022

--

В начале этого года мы объявили о разработке и тестировании обновления сети Amarok для Connext. Это обновление направлено на устранение многих ключевых проблем, существующих в Connext сегодня, и вводит поддержку произвольной передачи сообщений, позволяя разработчикам легко интегрироваться в нашу сеть для создания полностью экспрессивных приложений xchain (cross-chain) (xapps).

Курс переподготовки по обновлению Amarok

В обновлении Amarok все вышеперечисленное реализовано за счет модульности мостового стека. Вместо того, чтобы иметь единую систему для обеспечения всех функций, необходимых для создания xapps, разработчики обращаются к единой функции (xcall), которая разделяет действия между уровнем ликвидности (Connext) и уровнем обмена сообщениями.

После тщательного исследования компромиссов между моделями безопасности мостов команда решила тесно сотрудничать с Nomad, командой, которая изобрела модель Optimistic Bridge — систему обмена сообщениями, которая передает данные по сетям, используя доказательства мошенничества, аналогичные optimistic rollups*.

Эксплойт Nomad

Как многие из вас знают, Nomad недавно подвергся взлому моста из-за ошибки в реализации (не связанной с их оптимистичной моделью).

Команда Connext по-прежнему твердо верит, что Nomad — одна из лучших команд в мире мостов, и ожидает, что они станут еще сильнее в результате этого события. Мы также по-прежнему глубоко убеждены в том, что оптимистичные мосты будут доминирующим стилем строительства мостов в будущем, учитывая силу их модели безопасности.

Однако в действительности Nomad потребуется время, чтобы восстановить средства и перезапустить свою систему. Команда Connext не может позволить себе ждать, пока это произойдет, поскольку у нас есть около 150 маршрутизаторов, более дюжины команд dApp и десятки тысяч пользователей, ожидающих выхода обновления Amarok.

Новая система сообщений

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

Вместо того чтобы создавать собственную инфраструктуру, система будет использовать существующие AMB для rollups* и sidechains* для передачи сообщений и систему коннекторов для их соединения друг с другом. Обратите внимание, что вся эта система сообщений будет содержаться под существующим уровнем ликвидности Amarok, который позволяет отправлять и получать токены между сетями.

💡 AMB (Arbitrary Message Systems — системы произвольных сообщений) — это канонические мосты, используемые другими сетями (L2* и L1*) для подключения к основной сети, обычно Ethereum. Примерами являются roll-up мост Arbitrum-Ethereum или PoS-мост Polygon-Ethereum.

Модель Hub and spoke: транзакции, созданные на любой сети, будут добавлены в корень Меркла*. Эти корни будут периодически отправляться обратно в Ethereum L1. По достижении L1 бот Gelato агрегирует корни (т.е. создается новый корень путем объединения корней каждой сети) и распространяет их (отправляет по AMBs обратно в каждую сеть).

В случае чрезвычайной ситуации сеть может быть отключена системой на уровне L1 — это остановит все новые сообщения, идущие в/из сети, не затрагивая остальную часть сети.

Что это значит для пользователей?

Нашей ключевой задачей при проектировании было обеспечить, чтобы протокол, пользователь, маршрутизатор и модели разработчиков не были затронуты этим изменением настолько, насколько это возможно. Это позволило сократить время, необходимое для внедрения системы, и уменьшить влияние на наше сообщество:

  1. Никаких изменений в протоколе: система использует тот же интерфейс для отправки и обработки сообщений, что и Nomad. Это гарантирует, что в нашей существующей инфраструктуре Amarok не потребуется никаких дополнительных изменений — это означает, что наши контракты в сети и агенты вне сети будут работать с новой системой обмена сообщениями с нулевыми изменениями.
  2. Никаких изменений для разработчиков: интерфейсы и функциональные возможности, которые разработчики интегрируют, останутся прежними .
  3. Никаких изменений для поставщиков ликвидности: опыт предоставления ликвидности в качестве маршрутизатора (активная ликвидность) или пользователя (пассивный LP в AMM в каждой цепочке) останется точно таким же.

Тем не менее, у новой системы есть некоторые недостатки по сравнению с прямым использованием оптимистичного моста:

  1. Стоимость: будет небольшое увеличение стоимости, так как теперь необходимо распространять корни состояния через Ethereum L1. На данный момент эта стоимость будет субсидироваться Connext — мы ожидаем, что это будет нормально в краткосрочной и среднесрочной перспективе, поскольку стоимость газа в Ethereum довольно низкая.
  2. Задержка: время, необходимое для пользовательских транзакций и вызовов контрактов xchain, останется прежним — ~ 2 минут. Однако аутентифицированные вызовы xchain-контрактов “slow path” (т.е. те, которые требуют определенного разрешения на вызов функции) будут занимать больше времени. Ранее такая задержка составляла ~30 минут. Теперь, по нашим оценкам, она может составлять ~2–3 часа.
  3. Минимизация доверия : Прелесть этой системы в том, что она использует существующие AMB каждой сети — это сводит к минимуму дополнительные предположения о доверии, поскольку эти AMB уже являются источником доверия для всех активов в данной сети/rollup. Однако специально для оптимистичных накопительных пакетов нам потребуется значительно сократить задержку выходов «slow path» с 1 недели (аналогично тому, как работает Across). Мы ожидаем, что на данный момент это будет приемлемым компромиссом доверия, поскольку накопительные пакеты по-прежнему в значительной степени полагаются на защищенный подход к безопасности + система сможет отключить накопительный пакет, если секвенсор накопительного пакета обнаружит мошенничество.
  4. Поддержка сетей: поскольку мы используем AMB существующих систем, мы сможем поддерживать только несколько сетей в рамках начального развертывания. У нас есть некоторые идеи о том, как расшириться до других сетей после запуска, но в первый день система будет поддерживать только следующие сети: Optimism, Arbitrum, Gnosischain, Polygon, BNB Chain и Ethereum.

Следствием вышеупомянутых компромиссов является то, что эта система сообщений специально разработана как временное решение, которое можно развернуть быстро и с минимальными изменениями.

💡 Как можно скорее мы постараемся либо обновить систему, чтобы она стала полноценным оптимистичным мостом, который мы построим сами, либо подключить уровень обмена сообщениями оптимистичного моста Nomad (если/когда они смогут восстановиться) под ним.

Обновленная временная шкала

Поскольку в системе используется существующая, проверенная в боевых условиях инфраструктура (AMB), а в остальной части Connext нет абсолютно никаких изменений, потребуются только следующие изменения:

  1. Набор контрактов для создания и проверки корней/доказательств Merkle. Надежные готовые версии уже доступны повсюду в экосистеме.
  2. Соединители к каждой сети.
  3. Бот Gelato в каждой сети периодически проталкивает корни через AMB. Gelato-бот на Ethereum L1 для смешивания и размножения корней.

Мы уже развернули Goerli (Ethereum) и Optimism Goerli (Optimism), и мы планируем создать резервную копию работающей тестовой сети в течение следующей недели. Мы также завершили разработку коннектора для Sokol (тестовая сеть Gnosischain) с другими сетями тестовой сети (Polygon, Arbitrum и сеть BNB), которые появятся вскоре после этого.

Мы находимся в процессе планирования двух аудитов новой системы как можно скорее.

В Connext наша философия заключается в тесном сотрудничестве с пользователями, чтобы улучшить наш пользовательский опыт, безопасность и тестирование, а также в целом обеспечить максимальную ценность каждого выпуска. Мы приветствуем любые отзывы или вопросы, поскольку мы продолжаем разрабатывать вместе.

О Connext

Connext — это сеть для быстрой и надежной связи между сетями и роллапами. Это единственная в своем роде не требующая доверия система взаимодействия, которая делает это дешево и быстро. Connext предназначен для разработчиков, которые хотят создавать мосты и другие кроссчейн — приложения.

Website | Bridge | Build xApps| Twitter | Discord

Примечание:

Optimistic Rollups — решение масштабируемости Ehterium, выполняемое в L2.

L1, L2 (Layer 1, Layer 2) — механизм масштабирования Etherium.

SideChain — это механизм, позволяющий перемещать Ethereum (или другие криптовалюты) в другой, полностью независимый блокчейн, обменивать его там, а затем возвращать обратно в главный блокчейн. Другими словами, сайдчейн (от англ. side chain — боковая сеть) — как следует из названия, представляет собой тип блокчейна, который существует наряду, «со стороны», его главной сети.

Дерево Меркла, представляет собой дерево, в котором каждый конечный узел помечен криптографическим хешем блока данных, а каждый нелистовой узел помечен криптографическим хешем меток его дочерних узлов.

--

--