Dymension — первое в своем роде модульное решение масштабирования 2 слоя (Layer2) для экосистемы Cosmos, поддерживающее виртуальную машины Ethereum (EVM) и протокол межсетевой связи Inter-Blockchain Communication (IBC). Dymension разрабатывается Evmos Core Teams в сотрудничестве с Celectia и ставит задачу создать максимально совместимый и масштабируемый блокчейн, ориентированный на рынок Web3.
Обзор Dymension
Dymension представляет из себя сеть легко развертываемых и молниеносных модульных блокчейнов под названием RollApps. В центре сети Dymension находится Dymension Hub, который обеспечивает консенсус, безопасность и ликвидность для всех подключаемых RollApps.
RollApps — это нативные блокчейны Dymension, созданные с помощью Dymension RollApp Development Kit (RDK) на основе популярного инструмента разработчиков Cosmos SDK. Разработчики RollApp могут выбирать свой сетевой токен, полностью настраиваемую бизнес-логику и среду выполнения децентрализованных приложений (например: RDK Go, EVM, CosmWasm и т. д.).
Создание своего блокчейна RollApp на основе Dymension не требует накладных расходов в виде набора валидаторов, при этом не жертвуя децентрализацией. Такой блокчейн является полностью суверенным, имеет свою собственную логику, параметры децентрализации и управления, но делегирует механизм консенсуса в базовый блокчейн Dymension Hub.
В отличии от децентрализованных приложений (dApps) в таких блокчейнах, как Ethereum, BNB Chain и.т.д., где пользователю необходимо оплачивать комиссии сети в газовом токене (например: ETH), в блокчейнах RollApp комиссия может быть оплачена с помощью токена приложения или любого другого токена, выбранного разработчиком RollApp. Это могут быть стейблкоины, другие токены, поддерживающие IBC или же разработчик может реализовать совершенно новую логику сбора комиссий за транзакции.
Благодаря тому, что блокчейны RollApp делегируют механизм консенсуса базовой сети Dymension Hub, они способны обеспечивать более высокую пропускную способность и более низкую задержку, чем блокчейны обремененные собственным механизмом консенсуса.
Как работает Dymension?
Dymension имеет модульную архитектуру, поэтому вместо одного монолитного блокчейна, используется несколько слоев, каждый из которых выполняет свою конкретную роль.
- Dymension Hub — базовый блокчейн, который отвечает за урегулирование и механизм консенсуса. Обеспечивает соблюдение правил, а состояние блокчейна согласовываются большинством участников.
- DA Providers — провайдеры доступности данных, контролирующие публикацию и доступность данных.
- RollApps — слой исполнения, обрабатывающий транзакции и вычисление состояния блокчейна.
Блокчейнов RollApps может быть бесконечное множество. Любой разработчик может развернуть собственный RollApps, настроить требуемые параметры и при этом использовать возможности подключения, безопасность и ликвидность Dymension Hub.
Разработчики RollApps могут сами выбирать провайдеров DA, в соответствии со своими предпочтениями по стоимости и уровню безопасности. Благодаря тому, что доступность данных вынесена на отдельный слой, RollApps не зависит от их виртуальной машины, что позволяет разработчикам любой, удобный для них набор инструментов (EVM, CosmWasm и т.д.).
Технические аспекты инфраструктуры Dymension не накладывают на разработчиков RollApps ограничения, он служит базовой инфраструктурой для развертывания блокчейнов RollApps и за их логику несут ответственность сами разработчики.
Как работает Dymension Hub?
Dymension Hub — это децентрализованный блокчейн, являющийся источником достоверной информации, безопасности и ликвидности для сети RollApps. Это блокчейн на основе Cosmos SDK (PoS), который использует модель репликации состояния Tendermint Core для создания сети и достижения консенсуса. Использование всего стека Cosmos SDK позволяет RollApps и Dymension Hub естественным образом передавать сообщения через экосистему Cosmos, с использованием протокола Inter-Blockchain Communication (IBC).
Dymension Hub встраивает в протокол логику обслуживания RollApps. Это означает, что Dymension Hub поддерживает регистратор развернутых приложений RollApps и соответствующую важную информацию, такую как состояние, список секвенсоров, текущий активный секвенсор и многое другое. Dymension Hub специально создан для обеспечения безопасности, функциональной совместимости и ликвидности RollApps.
- Безопасность. Безопасность блокчейнов RollApp обеспечивается валидаторами Dymension Hub и протоколом, защищенным от мошенничества. Полагаясь на честное большинство из набора валидаторов Dymension Hub, приложения RollApp могут работать с честным меньшинством (т. е. допущение о доверии 1/N) и значительно сократить накладные расходы.
- Совместимость. Разные приложения RollApp могут взаимодействовать друг с другом через специальные модули, которые существуют как в RollApp, так и в Dymension Hub. Inter-Blockchain Communication (IBC) использует общую основу всех RollApps — Dymension Hub. Dymension Hub упрощает взаимодействие пользователей RollApp в рамках экосистемы с минимальным доверием. Кроме того, приложения RollApp могут взаимодействовать с другими блокчейнами в экосистеме Cosmos с поддержкой IBC через Dymension Hub.
- Ликвидность . Единственная логика приложения в Dymension Hub, не имеющая строгого ограничения для работы с RollApps, — это встроенный автоматизированный маркет-мейкер (AMM). AMM предназначен для того, чтобы предоставить RollApps эффективную маршрутизацию активов, определение цен и, что наиболее важно, общую ликвидность для всей экосистемы в целом.
Как работают RollApps?
RollApps — это модульные блокчейны, которые обрабатывают транзакции для своего конкретного приложения. Как следует из названия, RollApps — это пакет приложений для конкретных приложений, которые представляют собой решение для масштабирования, созданное для увеличения пропускной способности транзакций, уменьшения задержки и вычислительных затрат блокчейнов. В отличие от dApps, построенных на универсальных накопительных пакетах, приложения, созданные как RollApps, представляют собой собственный блокчейн для конкретного приложения, за исключением узлов консенсуса и валидаторов.
RollApps похожи на Cosmos App-Chains, но передают накладные расходы по достижению консенсуса блокчейну Dymension Hub. Концентратор Dymension оптимистично принимает обновления состояния от секвенсора RollApp и может отменить любое изменение состояния, если оно окажется недействительным.
Секвенсор (Sequencer) — это операционная машина RollApp, которая проверяет, заказывает и выполняет транзакции. Секвенсоры объединяют блоки в более крупный блок RollApp и отправляют данные транзакции на выбранный уровень доступности данных (DA) и обновленный корень состояния RollApp вместе со ссылкой на DA в Dymension Hub. Публикация корневых данных и состояния гарантирует, что любой участник сети, независимо от того, движим он недоверием или экономическими стимулами, может независимо проверить, что секвенсор RollApp выполнял подлинные вычисления и честные переходы между состояниями.
Архитектура RollApp
RollApps состоит из двух основных служб: клиентскую и серверную.
- Серверная — это сторона приложения, предназначенная для развертывания RollApp для реализации пользовательской бизнес-логики вместе с предварительно упакованными модулями, которые составляют комплект разработки RollApp (RDK).
- Клиентская — компонент Dymint, форк от RollMint, разработанный Celestia и представляющий собой замену Tendermint. Данный компонет отвечает за создание блоков, распространение одноранговых сообщений и межслойное взаимодействие.
Dymint обеспечивает многослойную сеть, отвечающую за обработку Dymension Hub в качестве источника достоверной информации для RollApps. Поскольку Dymension Hub — это автономный блокчейн Proof-of-Stake (Pos), Dymint настроен так, чтобы указывать на Dymension Hub для обновления состояния и любых необходимых изменений. Поскольку в самом RollApp нет согласованных задач, Dymint может обеспечить требования к низкой задержке, необходимые для современных приложений.
Жизненный цикл транзакций RollApp начинается с отправки запроса секвенсору RollApp, который обрабатывает транзакцию. Транзакция, если она считается действительной, затем включается в блок после обработки соответствующим модулем RDK. После заданного количества блоков секвенсор создает пакет. На этом этапе секвенсор публикует пакет и метаданные пакета (например, корни состояний) на уровень доступности данных (DA) и Dymension Hub соответственно.
Совместимость с Cosmos
Инструменты разработчиков (RDK) от Dymension основаны на Cosmos SDK, поэтому в них постоянно добавляются новые модули и изменяя для обеспечения совместимости RollApp с экосистемой Cosmos. Новые модули разрабатываются специально для обработки логики приложения RollApp без валидаторов. RollApps могут взаимодействовать с любой сетью поддерживающей протокол IBC с помощью Dymension Hub и, таким образом, становятся частью экосистемы Cosmos.
Dymension как протокол предназначен для содействия росту Cosmos и его межсетевой экосистемы. Будучи изначально поддерживающим IBC, Dymension Hub облегчает передачу сообщений с минимальным доверием между RollApps, зонами Cosmos и другими экосистемами с поддержкой протокол IBC.
В отличие от традиционных Chain Apss, RollApp делегирует консенсус Dymension Hub. Таким образом, Dymension Hub действует как децентрализованный источник истинной информации и решает, когда RollApp находится в хорошем состоянии. Таким образом, Dymension Hub является промежуточным звеном при передаче данных в RollApps и из него. Используя существующий стек IBC, приложения RollApp могут быть подключены к экосистеме с поддержкой IBC даже без согласования.