Урок 3

Rollkit – модульная структура роллапа

В этом модуле представлен Rollkit как фреймворк с открытым исходным кодом, который соединяет среды выполнения с уровнем доступности данных Celestia. В нем описывается, как Rollkit заменяет традиционный консенсус, интегрирует блоб-объекты в рабочие процессы роллапы и поддерживает несколько сред выполнения, таких как Cosmos SDK, EVM и другие. В разделе подчеркивается роль Rollkit в обеспечении суверенных роллапов и его открытая, ориентированная на сообщество модель разработки.

Что такое Rollkit?

Rollkit — это фреймворк с открытым исходным кодом, разработанный для упрощения развертывания наборов данных путем отделения выполнения от консенсуса и доступности данных. Первоначально разработанный под названием Rollmint и позднее переименованный, Rollkit был создан, чтобы предоставить разработчикам нейтральный и модульный набор инструментов для создания роллапов на основе Celestia и других уровней доступности данных. Его цель — предоставить командам гибкость в разработке собственных блокчейнов, не ограничиваясь архитектурой монолитной цепи.

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

По своей сути Rollkit функционирует как фреймворк, заменяющий компонент консенсуса движка Tendermint из Cosmos SDK. В модели Cosmos Tendermint обеспечивает как консенсус, так и сетевое взаимодействие, в то время как Cosmos SDK управляет выполнением. Rollkit отличается от этой модели, удаляя уровень консенсуса и вместо этого подключаясь к Celestia для обеспечения доступности и упорядочивания данных. Это позволяет разработчикам сосредоточиться только на определении логики выполнения своего объединения, делегируя достижение консенсуса и публикацию данных Celestia.

Фреймворк взаимодействует с Celestia посредством транзакций блоб-объектов. Накопительный пакет на базе Rollkit собирает транзакции от своих пользователей, объединяет их в блок, а затем отправляет этот блок как объект в Celestia. Celestia гарантирует доступность и проверяемость этих данных. Затем узлы Rollkit используют функцию выборки доступности данных Celestia для подтверждения того, что данные действительно опубликованы. Такая схема создает легкую архитектуру роллапы, в которой цепочка выполнения защищена и не требует запуска собственного механизма консенсуса.

Гибкость исполнения

Одной из определяющих особенностей Rollkit является его гибкость с точки зрения сред исполнения. Разработчики не ограничены одной виртуальной машиной или движком смарт-контрактов. Вместо этого они могут интегрировать различные среды в зависимости от своих потребностей. Сборку можно выполнить с использованием Cosmos SDK для логики, специфичной для приложения, среды виртуальной машины Ethereum (EVM) для совместимости с существующими инструментами и смарт-контрактами или альтернативных виртуальных машин, таких как Solana VM или Move. Такая гибкость снижает барьеры для экспериментов, поскольку команды могут объединять свои предпочтительные модели программирования в единую структуру без перепроектирования базовой инфраструктуры.

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

Суверенные роллапы с Rollkit

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

В суверенном роллапе Rollkit выступает в качестве уровня производства блоков и сетевого взаимодействия. Он собирает пользовательские транзакции, применяет логику выполнения роллапа и создает блоки. Затем эти блоки преобразуются в блобы и отправляются в Celestia для проверки доступности. Поскольку Celestia не обеспечивает соблюдение действительности исполнения, суверенный роллап имеет полную власть над своим собственным состоянием. Такая конструкция делает суверенные роллапы привлекательными для проектов, стремящихся к инновациям, не будучи ограниченными управлением или исполнением родительского блокчейна.

Интеграция Rollkit и блобов

Интеграция Rollkit с блобами является основой его работы. Каждый блок, созданный роллапом на базе Rollkit, кодируется в блоб и отправляется в Celestia через транзакции PayForBlobs. Эти блобы хранятся в квадрате данных Celestia, где они проходят кодирование с восстановлением и маркируются по пространствам имен. Это позволяет каждому роллапу изолировать свои данные от других, используя при этом одну и ту же базовую инфраструктуру.

Для участников роллапа это означает, что для проверки роллапа требуется только проверка доказательств Celestia для соответствующего пространства имен. Узлы Rollkit используют функцию выборки доступности данных Celestia для подтверждения доступности своих двоичных объектов, обеспечивая безопасность без необходимости полной репликации данных. Эффективное взаимодействие Rollkit и Celestia демонстрирует практическое применение принципов модульного проектирования.

Разработка с открытым исходным кодом и силами сообщества

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

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

Почему Rollkit имеет значение

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

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

Отказ от ответственности
* Криптоинвестирование сопряжено со значительными рисками. Будьте осторожны. Курс не является инвестиционным советом.
* Курс создан автором, который присоединился к Gate Learn. Мнение автора может не совпадать с мнением Gate Learn.