Crosschain Bridges
March 28, 2023

Обзор deBridge

В этом отчете представлен обзор на deBridge - протокол, который является не просто мостом, но и целой инфраструктурой, поверх которой можно строить любые кроссчейн-взаимодействия.

Материал подготовлен каналом @shitcoinresearch

Структура отчета:

1. Что такое deBridge?

Ранее я рассматривал классификации кроссчейн-мостов по различным параметрам. Так, например, по типу передаваемой информации мосты делятся на:

  1. Мосты, которые могут передавать только активы (токены) между сетями. Это - так называемые “Token bridges”. Примеры: такие проекты, как: THORChain, Hop Protocol, Symbiosis Finance, Connext и др.
  2. Мосты, которые могут передавать абсолютно любую информацию между сетями (например, результаты голосования DAO записанные в смарт-контракт). Это - так называемые “Generic bridges”. Примеры: такие проекты, как LayerZero, Wormhole, Rainbow Bridge.

deBridge относится к Generic bridges и позволяет передавать не только активы, но и произвольные данные между сетями. Однако, в отличие от других кроссчейн-мостов, уникальность deBridge заключается в том, что протокол позволяет передавать ликвидность и любые данные одной транзакцией. В свою очередь, это:

  1. Позволяет мосту решать любые кроссчейн-взаимодействия (не только между пользователями, но и между протоколами);
  2. Значительно улучшает пользовательский опыт при взаимодействии с мостом: пользователям больше не нужно делать много апрувов/клеймов; не нужно думать про обернутые токены. Вместо этого, пользователь:
    1. Выбирает актив, который хочет получить;
    2. Видит сколько он в итоге получит (за вычетом всех комиссий);
    3. Соглашается с этим или нет.

Плохой пользовательский опыт (User Experience) - проблема, которая присуща многим мостам. Иногда, доходит до абсурда: например, если через Wormhole переводить ETH (из сети Ethereum) в SOL (в сеть Solana) - нужно иметь SOL на своем кошельке, для того, чтобы заклеймить транзакцию. У deBridge - такой проблемы нет.

Немного истории deBridge:

Известность проект получил после победы на хакатоне от ChainLink в 2020 году (1-е место среди 140 команд, принимавших участие).

Во время хакатона, был реализован testnet v.1.0, который обеспечивал передачу активов между сетями Kovan и BSC-Testnet.

После хакатона - deBridge успешно закрывает Seed-раунд на $5,5 млн. В числе инвесторов: Animoca Brands, ParaFi Capital, Lemniscap, Huobi Ventures и другие [Анонс].

В ноябре 2021 года - реализован testnet v.2.0, который решает уже любые кроссчейн-взаимодействия.

В середине февраля 2022 года - осуществлен переход в Mainnet.

2. Что предлагает deBridge?

У deBridge есть два основных продукта: deSwap и dePort.

deSwap - позволяет осуществлять кроссчейн-свопы. deSwap стал возможным благодаря объединению 3-х DeFi-примитивов: 1inch, Curve и deBridge:

  1. 1inch: В deSwap объединены смарт-контракты роутера 1inch в разных сетях.
    1inch - отвечает за роутинг и ликвидность, а инфраструктура deSwap отвечает за транспортацию активов (перенос ликвидности).
  2. Curve: в каждом блокчейне, поддерживаемом deBridge, через curve-factory были созданы пулы ликвидности для deAsset. deAsset - это, по сути, обернутый Asset (например deUSDC и USDC), который передается в другие сети. Протокол использует механики блокировки/разблокировки: актив блокируется в нативной сети, и такое же кол-во обернутого токена минтится в сети получения. В каждой из поддерживаемых deBridge сетей - есть пул на Curve: этот deAsset - используется в качестве промежуточного актива при кроссчейн-свопах.

Таким образом, 1inch строит роутинг для свопа из отправляемого токена в deUSDC, затем deUSDC через инфраструктуру deBridge передается в другую сеть (сжигается в одной сети и минтится в другой), при этом, кроме самого актива - передается и некое сообщение (команда для 1inch роутера), которая конвертирует этот deUSDC в актив получения.

На момент написания статьи, deSwap поддерживает 5 сетей: Ethereum, BNB Chain, Polygon, Arbitrum, Avalanche.

Для желающих предоставить ликвидность в один из пулов моста - рекомендую ознакомиться с контрактами пулов и инструкцией о том, как предоставлять ликвидность из официальной документации проекта - [Ссылка].

dePort - позволяет создавать синтетические репрезентации токенов (они же обернутые активы).

Что это значит, и кому это нужно?

Предположим, что есть некий проект, токен которого задеплоен в Ethereum. Также предположим, что с ростом экосистемы Avalanche, проект принимает решение задеплоиться в Avalanche - для того, чтобы получить доступ к пользовательской базе этой сети. Затем - начинает сильно развиваться Solana, и проект принимает решение задеплоиться в Solana и т.д. Такие “форки самого себя” - приводят к так называемой фрагментации (или размытию) ликвидности.

deBridge через dePort предлагает новую парадигму масштабирования. Вместо того, чтобы “форкать самого себя” - проекты могут через deBridge получить доступ к пользовательской базе других сетей.

Use-case: есть у вас есть лендинг-протокол в сети Solana, и вы хотите в качестве залога для кредита принимать LP-токены какого-нибудь AMM в сети Ethereum - для этого можно воспользоваться dePort. Также dePort может использоваться проектами при создании utility для своих активов в других сетях.

Таким образом, dePort - это B2B продукт, предлагающий удобства для пользователей на уровне UI. Пользователь может просто подключить кошелек в одной сети и начать взаимодействовать через него с протоколом в любой другой сети - и для этого не нужно переключать кошельки, сети и т.д. Пользователь просто отправляет транзакцию в смарт-контракт deBridge в одной сети, а она через инфраструктуру deBridge автоматически выполняется в другой сети.

dePort также использует подход блокировки/минтинга, при котором нативный токен блокируется/минтится в смарт-контракте deBridge в нативной цепочке, а его синтетическое представление (deAsset) минтится/сжигается во вторичных цепочках.

На момент написания статьи, dePort поддерживает 7 сетей: Ethereum, BNB Chain, Polygon, Arbitrum, Avalanche, Heco, Fantom.

3. Структура и безопасность протокола

deBridge состоит из двух уровней:

  1. Уровень протокола
  2. Инфраструктурный уровень

Уровень протокола (on-chain) - представлен в виде смарт-контрактов, в каждой из сетей, поддерживаемых deBridge. Эти смарт-контракты используются для управления маршрутизации транзакций между блокчейнами, проверки подписей валидаторов и достижения консенсуса между валидаторами.

Уровень инфраструктуры (off-chain) - представлен в виде валидаторов, которые управляют узлом deBridge вместе с полными узлами каждого блокчейна, поддерживаемого протоколом.

Сейчас deBridge управляется 12 валидаторами (полный список можно найти - здесь). Валидаторы были отобраны проектом, по результатам активности в тестнете. После того, как проект выпустит свой токен, планируется, что валидаторы будут избираться через governance.

Про безопасность моста:

В своем Medium, deBridge подробно описал 10 аспектов, обеспечивающих безопасносность протокола. Полную статью можно найти - здесь. Я же тезисно выделю основные, на мой взгляд, моменты:

  1. Слешинг и делегированный стейкинг. Все валидаторы deBridge должны внести финансовое обеспечение в смарт-контракт. Это обеспечение действует как залог для предотвращения сговора валидаторов. В случае, если валидатор замечен в подделывании или цензурировании транзакций - он лишается своего залога. Слешинг создает экономические стимулы для честной работы валидаторов.

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

    Активы, которые могут быть использованы для стейкинга: ETH, USDT, USDC.

    Однако, следует отметить, что на текущий момент слешинг/делегированный стейкинг - еще не реализованы в deBridge.
  2. Финальность транзакций. Прежде чем подписать транзакцию, валидаторы ждут определенное кол-во подтверждений блоков, и подписывают их лишь после того, как они достигнут финальности. Это приводит к предотвращению двойной траты.
  3. Проверка последовательности nonce. Во всех поддерживаемых сетях, смарт-контракт deBridge присваивает уникальный порядковый номер каждой транзакции, проходящей через протокол. Этот номер называется “nonce” и добавляет дополнительный уровень защиты. Валидаторы всегда должны подтверждать транзакции в порядке возрастания одноразовых номеров, и любые коллизии этих номеров приведут к немедленной приостановке проверки для этой сети.
  4. Дополнительные подтверждения. Обычно необходимо 8 из 12 подписей валидаторов для выполнения транзакций в сети назначения. Однако, в случае, если сумма транзакции превышает пороговое значение, установленное governance, протокол автоматически потребует 2 избыточных подтверждения (10 из 12), чтобы убедиться в отсутствии сговора валидаторов.
  5. Аудиты и Bug-Bounty-программа. deBridge был проверен Halborn, Zokyo, Ackee Blockchain и Neodyme. Кроме того, deBridge запустил bug-bounty-программу в размере 200 000$ на Immununefi.

Подводя итог обзора на deBridge, можно сказать, что deBridge - это не только мост, это - целая инфраструктура, которая поверх своего протокола позволяет другим протоколам строить любые кроссчейн-взаимодействия.

Кроссчейн-свопы в deBridge осуществляются напрямую через Curve, используя роутинг 1inch. Такой подход является более капиталоэффективным решением, чем проектирование своего собственного AMM.

Основным уникальным преимуществом deBridge - является его возможность передавать активы (ликвидность) и произвольные данные одной транзакцией. Это открывает много возможностей для кроссчейн-совместимости протоколов, - протоколы могут стать совместимыми в разных сетях.

Статистику по мосту можно посмотреть на Dune [Ссылка] или на сайте проекта [Ссылка].

4. Бриджим через deBridge

На официальном сайте проекта открываем приложение deSwap [Ссылка]. Подключаем Метамаск (или другой кошелек). Выбираем активы и сети этих активов для перевода.

Я решил свапнуть BNB (BNB Chain) в MATIC (Polygon): указываю сумму для перевода. Система автоматически рассчитывает сколько я получу средств в сети назначения (все комиссии уже учтены, отображается фактический результат - сколько я получу "на руки"): в моем случае - это 3,863 MATIC:

Также система показывает маршрут, по которому будет проходить трансфер: Сначала, через 1inch, BNB свапается на deUSDC сети BNB. Затем deUSDC (BEP-20), через инфраструктуру deBridge, сжигается в сети BNB Chain, а в сети Polygon минтится deUSDC (ERC-20). После чего, deUSDC в сети Polygon, также через пул 1inch, свапается на MATIC.

При этом, указывается примерное время ожидания (ETA - Estimated Time of Arrival): в моем случае - это меньше минуты.

Обращаем внимание на взимаемые комиссии:

  1. Комиссия за газ;
  2. Комиссия протокола;
  3. Комиссия за выполнение - так называемый execution fee, который взимается киперами для выполнения транзакции в сети назначения.

Повторюсь, что все вышеперечисленные комиссии уже учтены. Итоговая сумма к получению - 3,863 MATIC. Меня все устраивает, нажимаю "Подтвердить перевод":

Система предлагает проверить трансфер, в случае чего - можно изменить рекомендованные настройки. Я - ничего не меняю, нажимаю "подтвердить перевод":

Все, что осталось сделать - подписать транзакцию в Метамаске. Подписав, выводится следующее информационное окно:

Сперва, необходимо дождаться 12 подтверждений блоков в сети BNB Chain, после чего - дождаться 11 подтверждений от валидаторов моста.

Все это, как и ожидалось, заняло меньше минуты. По итогу, я получил свои 3,8592 MATIC на кошелек:

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

Материал подготовлен каналом @shitcoinresearch

Также читайте:
Кроссчейн-мосты. Часть 1: Теория - Читать
Все про WBTC. Ну почти - Читать
Обзор Rainbow Bridge - Читать