Dymension. eIBC -протокол условного депонирования IBC

[NODERS]TEAM
6 min readApr 1, 2023

--

Привет, друзья

Пока все внимание сообщества опять направлено на активность в крупных проектах после недавних событий, мы продолжаем следить за более узконаправленными, но не менее интересными и перспективными разработками. Проект Dymension недавно представил протокол eIBC. Который выглядит многообещающе. О нем и будет сегодняшний материал.

О проекте

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

Rollups — это решение по масштабируемости, которое выполняет транзакции во внешней цепочке (уровень 2), за пределами основной сети(уровень 1), но данные или результаты этих транзакций размещаются на уровне 1. Так мы получаем низкие сборы за газ и почти мгновенные транзакции. Даже если сеть уровня 2 перестанет полностью функционировать, мы всё равно сможем вернуть наши средства на уровень 1, так как протокол продолжит работу.

ВАЖНО: Здесь не используются смарт-контракты — данные передаются в Celestia с помощью версии IBC, а расчеты и ссылка на данные публикуются в Dymension с помощью версии IBC. Также здесь не используются мосты для смарт-контрактов, потому что их использование небезопасно, и в прошлом их много раз взламывали.

Концентратор Dymension — это блокчейн Proof of Stake, который обеспечивает консенсус, безопасность и ликвидность для цепочек RollApp.

Протокол условного депонирования-IBC (eIBC) основан на межблокчейновой связи (IBC), и разработан для облегчения мгновенной передачи токенов с минимальным доверием через Optimistic Rollups. Это становится наиболее многообещающим решением для масштабирования технологии блокчейн; однако они страдают от нескольких проблем, включая период окна для споров о мошенничестве и дилемму верификатора.

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

Введение

RollApps (накопительные пакеты Dymension) интегрируются с экосистемой IBC через Dymension Hub. Но перемещение активов между накопительными пакетами и сетью уровня 1 с полным консенсусом в настоящее время происходит медленно из-за периодов защиты от мошенничества, которые лишают уровень расчетов права мгновенно доверять накопительному пакету.

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

Решение о внедрении eIBC основывается на следующих предположениях:

  1. Пользователи готовы платить дополнительную комиссию за мгновенный вывод токенов.
  2. Проверка сворачивания исключает риск отката для проверяющего.
  3. Верификаторы, столкнувшиеся с мошенничеством, должны представить доказательства.

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

Кроме того, поскольку риск отката для верификатора устраняется при надлежащей проверке состояния, верификаторы получают «бесплатную возможность» получать прибыль от вредоносных секвенсоров.

eIBC

Представим двух участников — Алиса, пользователь RollApp, и Вася, ретранслятор в экосистеме IBC. eIBC упаковывает стандартное сообщение IBC об ожидании завершения из RollApp на уровень расчетов (которое подтвердит окно после спора), чтобы обеспечить мгновенную передачу с минимальным доверием.

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

Если Вася решает выполнить запрос, он отправляет необходимые токены модулю промежуточного программного обеспечения eIBC на уровне расчетов, который, в свою очередь, мгновенно доставляет указанные токены Алисе на уровне расчетов и перенаправляет исходное ожидающее сообщение IBC Алисы на адрес Васи.

Последовательность:

  • Алиса инициирует транзакцию eIBC, отправляя запрос на RollApp, чтобы снять определенное количество токенов (например, 10 DYM) со своего счета
  • Вася, ретранслятор в экосистеме, получает сообщение eIBC от RollApp и передает его на расчетный уровень, который мягко проверяет и депонирует базовое сообщение IBC
  • Вася, который также имеет токены на расчетной цепочке назначения, решает выполнить запрос Алисы на eIBC, предоставив запрошенные токены (10 DYM) модулю eIBC на расчетном уровне
  • Модуль eIBC на расчетном уровне доставляет запрошенные токены Алисе и перенаправляет исходные токены, ожидающие завершения, Васе.

Чтоб не взрывать вам мозг, простой пример:

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

Можно сделать несколько ключевых замечаний относительно предлагаемого решения eIBC:

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

Во-вторых, поскольку к экосистеме присоединяется все больше участников рынка, таких как Вася, ожидается, что большее количество RollApps будет проверено другими участниками и поставщиками ликвидности. Тем не менее, предложенное решение требует, чтобы Алиса, как пользователь RollApp, ждала, пока один поставщик ликвидности, такой как Вася, решит выполнить ее запрос на токен на расчетном уровне. Однако, если Алиса готова заплатить дополнительную плату, ожидается, что другие поставщики в конечном итоге подтолкнут экосистему к более эффективному сценарию, который будет управляться пользовательскими приложениями, разработанными на основе протокола eIBC.

Потенциальная проблема возникает, когда Вася, выступающий одновременно в роли ретранслятора сообщений eIBC и поставщика ликвидности, имеет ограниченные средства и должен ждать, пока они станут доступны на расчетном уровне после проверки. Следовательно, Вася может публично пригласить лиц, которые доверяют его способности правильно проверять RollApps и обладать токенами на расчетном уровне, объединить ликвидность с ним, пообещав разделить комиссию за вывод средств. Учитывая этот сценарий, на базе протокола eIBC можно разработать следующее приложение:

Заявка на eIBC

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

  • Вася создает публичный “пул ликвидности верификатора”, который использует объединенные токены на расчетном уровне для обеспечения мгновенной ликвидности для пользователей eIBC определенного источника RollApp. Он управляет полным узлом RollApp и не обеспокоен недействительными обновлениями состояния, поскольку он будет активно подавать доказательства мошенничества в любом случае такового.
  • Петя, инвестор, желающий получить прибыль, решает объединить свои средства с “пулом ликвидности верификатора” Васи для исходного RollApp.
  • Алиса отправляет транзакцию eIBC на источник RollApp с запросом на снятие токенов (например, 10 DYM).
  • Вася передает сообщение eIBC от RollApp на расчетный уровень, где оно проходит мягкую верификацию.
  • Теперь пул ликвидности Васи может предоставить ликвидность Алисе, доставив токены, необходимые на расчетном уровне, модулю eIBC.
  • Модуль eIBC может распределить депонированные токены Алисе и перенаправить первоначальные токены Алисы, ожидающие завершения, в пул ликвидности Васи.
  • Петя может вывести прибыль из пула ликвидности Васи.

Используя услуги Васи, предлагаемое решение гарантирует, что Алиса сможет получить запрошенные ею токены мгновенно, из агрегированного источника ликвидности. Это становится возможным благодаря существованию приложения, которое обеспечивает необходимую ликвидность, позволяя протоколу eIBC проверять доставку токенов и распределять их соответствующим образом.

Предлагаемое решение также вводит “пулы верификаторов”, приложение пулов ликвидности, которые зависят от верификатора для снижения риска. Несмотря на выгодные возможности для операторов узлов и инвесторов, пулы верификаторов также сопряжены с риском для поставщиков ликвидности, которые должны доверять способностям и честности верификатора.

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

Протокол eIBC решает как дилемму верификатора, так и проблему доказательства мошенничества, используя общую среду мостов и проверенную в боях инфраструктуру IBC для поддержки кросс-ролл-ап мостов бесшовным способом с минимальным уровнем доверия.

Итого

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

Сообщество

Дискорд | Твиттер | Сайт | Документация

Любые вопросы по статьям вы можете задавать в чате.

Автор lofingv[NODERS]

--

--

[NODERS]TEAM

[NODERS]TEAM - a team of professional developers with more than five years of experience in the IT field.