Модульный мир
Архитектура
В настоящее время большинство функционирующих и публичных блокчейнов представляют собой монолитные структуры. Под монолитной мы подразумеваем цепь, которая самостоятельно обрабатывает доступность данных, расчеты и исполнение. Существуют некоторые разновидности монолитных цепей, особенно в отношении роллапов на Ethereum и подсетей на Avalanche, которые имеют модульные компоненты. Однако это не модульные блокчейны в самом подлинном смысле этого слова.
Давайте определим, что мы имеем в виду, когда говорим "модульный", чтобы не было неправильных толкований. Когда мы говорим "модульный", мы имеем в виду тот факт, что обычно объединенные слои разделены. Что же это значит? Это означает, что один из трех компонентов цепочки отделен, то есть либо исполнение, либо консенсус, либо доступность данных. Это означает, что к роллапам можно применить термин "модульный", поскольку они занимаются только исполнением. В то время как Ethereum обрабатывает все остальное как монолитное целое.
В случае с Celestia мы можем применить к ней термин "модульная", поскольку она занимается только обеспечением доступности данных и консенсусом. В то время как расчеты и исполнение делегируются другим уровням. Эти уровни также являются модульными, поскольку они сами обрабатывают только часть компонентов. Это означает, что в случае с Ethereum мы не можем назвать его модульным блокчейном, поскольку передача компонентов на аутсорсинг происходит только на его текущих роллапах в отношении исполнения. Тем не менее, Ethereum по-прежнему способен самостоятельно справляться с исполнением, позволяя при этом роллапам осуществлять пакетные транзакции вне цепочки. Это означает, что в своей текущей реализации Ethereum остается монолитной цепочкой. Тем не менее, Ethereum по-прежнему остается идеальным расчетным уровнем и в то же время самой децентрализованной и безопасной цепочкой смарт-контрактов.
Теперь вы можете сказать, а как же Polkadot или Avalanche? В случае с Avalanche, это не модульные сети, а скорее просто разделенные сети, которые способны обрабатывать все компоненты блокчейна. Это означает, что они не масштабируются модульно, а скорее масштабируются за счет горизонтального использования других монолитных сетей. Парачейны Polkadot выполняют свои функции, подобно роллапам, отправляя блоки в ретрансляционную цепочку для достижения консенсуса и доступности данных. Однако ретрансляционная цепочка по-прежнему обеспечивает достоверность транзакций.
Со временем, по мере роста монолитных цепочек, это приводит к огромным перегрузкам и неэффективности. Использование одной цепи для всех целей просто нецелесообразно, если мы хотим привлечь больше людей. Поскольку это приводит к чрезвычайно высоким комиссиям и задержкам для конечного пользователя. Именно поэтому мы видим, как все больше и больше сетей принимают решение о разделении своих сетей. Мы все слышали о знаменитом Merge, который переведет Ethereum на цепочку Proof-of-Stake. Однако они также планируют со временем перейти к шардингу. Шардинг - это разделение блокчейна по горизонтали на несколько частей. Эти шарды будут заниматься исключительно обеспечением доступности данных.
Именно так, вместе с роллапами, сообщество Ethereum планирует решить проблемы масштабируемости. Существуют ли другие способы? Безусловно, они есть - мы также видели, как Avalanche движется в сторону небольшого модульного будущего с помощью Subnets, однако, как объяснялось ранее, мы бы не стали относить это к полной модульности.
Чтобы лучше понять, как функционирует каждая из различных "модульных" архитектур, давайте попробуем нарисовать их, чтобы лучше понять различия.
Сравнение архитектур
Сначала давайте рассмотрим самый большой блокчейн со смарт-контрактом - Ethereum. Давайте посмотрим, как выглядит их текущая архитектура и как она будет выглядеть в будущем, когда будет включена функция шардинга.
В настоящее время Ethereum обрабатывает все компоненты блокчейна. Однако он также перекладывает часть выполнения на L2 rollups, которые затем пакетно передают транзакции для расчетов на Ethereum. В будущем, благодаря шардингу, архитектура будет выглядеть примерно так:
Это превратит Ethereum в единый расчетный уровень, в то время как шарды будут обеспечивать доступность данных. Это означает, что шарды будут просто DA-средой, в которую роллапы будут отправлять данные. На шардах валидаторам нужно хранить данные только для того шарда, который они проверяют, а не для всей сети. В конечном итоге шардинг позволит вам запускать Ethereum на легких узлах, подобно Celestia.
Для Avalanche их основное предложение по масштабированию заключается в использовании единичных блокчейнов, которые можно легко создавать - их подсети. Архитектура Avalanche выглядит примерно так:
Подсеть - это набор новых валидаторов, которые проверяют блокчейн. Каждый блокчейн проверяется ровно одной подсетью. Все подсети Avalanche самостоятельно обеспечивают консенсус, доступность данных и исполнение. Каждая подсеть также будет иметь свой собственный газовый токен, определенный валидаторами. Примером подсети, которая работает в настоящее время, является подсеть DefiKingdoms, которая использует JEWEL в качестве своего газового токена.
Прежде чем мы перейдем к рассмотрению архитектуры Celestia, давайте сначала посмотрим на Cosmos. Из которого Celestia многое заимствует и с которым будет тесно взаимодействовать через IBC, поскольку он также построен с использованием Cosmos SDK и версии Tendermint - Optimint. Архитектура Cosmos значительно отличается от других существующих архитектур, поскольку она позволяет создавать dApps в качестве приложения самого блокчейна, а не предоставлять ВМ. Это означает, что суверенная цепочка Cosmos SDK должна только определить типы транзакций и традиции состояния, которые ей необходимы, полагаясь при этом на Tendermint как на механизм консенсуса. Цепочки Cosmos разделяют прикладную часть блокчейн и используют ABCI для соединения с сетью (p2p) и консенсусом. ABCI - это интерфейс, соединяющий прикладную часть блокчейна с механизмом репликации состояния Tendermint, который обеспечивает консенсус и сетевые механизмы. Его архитектура часто пропагандируется в таком виде:
Теперь давайте посмотрим, как будет выглядеть архитектура Celestia, когда экосистема начнет создаваться.
Вот как может выглядеть ранняя экосистема на Celestia. Celestia будет работать как общий уровень консенсуса и доступности данных между всеми различными типами роллапов, работающих в рамках модульного стека. Расчетные уровни будут существовать для обеспечения связи и ликвидности между различными модулями, расположенными поверх нее. Хотя, скорее всего, вы также увидите суверенные роллапы, функционирующие независимо, без расчетных уровней.
Теперь, когда мы определили различные степени модульности, как они функционируют и как выглядят, давайте рассмотрим некоторые уникальные возможности и функционал, которые обеспечивают чисто модульные блокчейны, такие как Celestia.
Shared Security(Общая безопасность)
Одна из прекрасных вещей в монолитных блокчейнах заключается в том, что все пользователи, приложения и роллапы, которые используют их, получают безопасность от базового уровня. Как же это работает в условиях модульного стека?
Все очень просто - Celestia обеспечивает рудиментарную функциональность, необходимую цепочкам для создания общей безопасности - доступность данных. Это происходит потому, что каждый отдельный уровень, использующий Celestia, должен сбрасывать все свои данные о транзакциях на уровень доступности данных, чтобы доказать, что данные действительно доступны. Это означает, что цепочки могут соединяться, наблюдать и взаимодействовать друг с другом без особых усилий. Благодаря постоянной безопасности базового уровня DA становится очень легко проводить жесткие и мягкие форки, о чем мы поговорим позже.
Аналогичным образом, Celestia позволяет одновременно запускать различные типы уровней выполнения экспериментов, даже не полагаясь на расчетный уровень, и при этом имеет преимущество общего уровня доступности данных. Это означает, что скорость итераций станет намного быстрее, поскольку она, скорее всего, будет линейно увеличиваться с ростом числа пользователей. Поэтому наш тезис заключается в том, что со временем это приведет к многократному улучшению уровней исполнения, поскольку мы не ограничены монолитными сущностями с централизованными уровнями исполнения, так как исполнение и доступность данных разделены. Беспрепятственная природа модульности позволяет экспериментировать и дает разработчикам гибкость выбора.
Доступность данных Отбор проб и проверка блоков
Верификация блоков в Celestia работает совершенно иначе, чем в других существующих блокчейнах, поскольку блоки могут быть проверены за сублинейное время. Это означает, что пропускная способность увеличивается с сублинейным ростом стоимости по сравнению с линейным ростом стоимости. Как же это выглядит на бумаге? Давайте посмотрим.
Это возможно, поскольку легкие клиенты Celestia не проверяют транзакции, они только проверяют, что каждый блок имеет консенсус и что данные блока доступны сети.
Celestia избавляет от необходимости проверять действительность транзакций, поскольку она проверяет только наличие консенсуса и доступность данных в блоках, как показано выше.
Вместо того чтобы загружать весь блок, узлы Celestia light просто загружают небольшие случайные образцы данных из блока. Если все образцы доступны, то это служит доказательством того, что доступен весь блок. В принципе, выбирая случайные данные из блока, вы можете вероятностно проверить, что блок действительно полный.
Это означает, что Celestia сводит проблему проверки блоков к проверке доступности данных, которую мы знаем, как сделать эффективно с сублинейными затратами, используя выборку доступности данных.
Доказательства DA - это когда вы требуете, чтобы пересылаемые блоки были закодированы стиранием. Это означает, что исходные данные блока теперь удваиваются в размере, а новые данные затем кодируются избыточными данными. Кодирование стирания Celestia увеличивает размер блока в 4 раза, при этом 25% блока занимают оригинальные данные, а 75% - реплицированные данные. Следовательно, если злоумышленник или подобный ему секвенсор захочет совершить мошенничество, он должен будет скрыть более 75% данных блока.
Следовательно, это позволяет легким клиентам с очень высокой вероятностью проверить, что все данные для блока были опубликованы, просто загрузив очень маленький фрагмент блока (DA sampling). Каждый раунд выборки уменьшает вероятность недоступности данных, пока не будет уверенности, что все данные доступны. Это чрезвычайно эффективно, поскольку вместо того, чтобы каждый узел загружал каждый отдельный блок, вы просто имеете много легких узлов, загружающих небольшие части каждого блока, но с теми же гарантиями безопасности, что и раньше. Это означает, что до тех пор, пока существует достаточное количество узлов, выполняющих выборку на предмет доступности данных, можно увеличивать пропускную способность по мере увеличения количества узлов, выполняющих выборку. Вы можете быть знакомы с этим типом сети в повседневной жизни (DA proofs), даже если вы не использовали блокчейн, используя такие протоколы, как BitTorrent.
Масштабируемость
Когда мы говорим о масштабируемости, первая мысль, которая приходит на ум большинству людей, - это транзакции в секунду. Однако это не должно быть фактическим обсуждением масштабируемости. Когда речь идет о масштабируемости специализированного уровня DA, основным препятствием для преодоления должно быть не количество транзакций в секунду, а количество мб/с. Мб/с становится объективным показателем мощности цепочки, а не tp's, поскольку транзакции различаются по размеру. Здесь Celestia находится в неплохом положении, поскольку она разгружает уровень DA и использует выборку доступности данных для увеличения количества мб/с, с которыми может справиться система.
Под этим мы подразумеваем, что реальное ограничение количества транзакций, которые может обрабатывать блокчейн, основано на вводе и выводе данных. Таким образом, отделив доступность данных от процесса ввода и вывода, которым будут заниматься роллапы, Celestia сможет производить гораздо больше байт в секунду, чем монолитные структуры.
Все это вытекает из проблемы доступности данных. Это количество данных в предлагаемом блоке, которое секвенсор или аналогичное устройство может проверить на доступность, но при этом ограничено пропускной способностью базового уровня DA. В случае монолитных блокчейнов, использующих полные узлы, обычным шагом для решения этой проблемы было бы повышение требований к аппаратному обеспечению полных узлов. Однако если вы это сделаете, то полных узлов станет меньше, а вместе с этим снизится и децентрализация сети.
Поэтому, используя технологию, которую мы затронули ранее в части верификации блоков, мы можем увеличить масштабирование без увеличения требований к узлам, сделав полные узлы равными легким узлам с помощью выборки DA. В свою очередь, рост узлов приводит к увеличению пропускной способности, поскольку выборка DA вызывает сублинейный рост - поскольку она масштабируется с количеством добавляемых легких узлов. В монолитном дизайне увеличение размера блока в равной степени увеличивает стоимость проверки сети, но в Celestia это не так.
Хотя Ethereum также стремится решить некоторые проблемы масштабируемости с помощью EIP-4844, который позволит создать новый тип транзакций - blob-транзакции. Они будут содержать большой объем данных, которые не могут быть доступны при выполнении EVM, но при этом могут быть доступны Ethereum. Это делается потому, что в настоящее время роллапы на Ethereum полагаются на мизерное количество доступных данных о вызовах для осуществления своих транзакций. Шардинг также поможет в этом, но до его внедрения еще далеко, однако после выхода он должен выделить около 16 МБ пространства данных для роллапов на блок. Однако еще предстоит выяснить, насколько конкурентной станет борьба за пространство для транзакций в блобах. Хотя, как только вы решите одну из дилемм масштабируемости, может возникнуть другая. Поэтому, переходя к модульным слоям, мы можем позволить различным частям стека специализироваться на конкретных ресурсах, которые они используют больше всего.
Forks
В большинстве случаев, когда хардфорк происходит на монолитных цепочках, вы теряете безопасность базового уровня, поскольку среды исполнения не имеют одинаковой безопасности. Это означает, что обычно хардфорки нецелесообразны или нежелательны, поскольку в этом случае новый форк не будет иметь безопасности доступности данных и уровня консенсуса. Это та же идея, когда мы говорим, что вы можете внести изменения в код блокчейна, но вам придется убедить всех согласиться с вашим изменением. Возьмем, к примеру, Биткойн. Код биткойна можно изменить довольно легко, но вот заставить всех согласиться с изменениями - это самое сложное. В случае, если вы хотите сделать хардфорк монолитного блокчейна, вам также придется сделать форк уровня консенсуса, что означает потерю безопасности исходной цепи. Потеря безопасности зависит от количества майнеров или валидаторов, которые не подтверждают новую каноническую цепочку. Однако если все валидаторы перейдут на один и тот же форк, то безопасность не будет потеряна. В модульных блокчейнах это не так, поскольку если вы хотите форкнуть расчетный или исполнительный уровень, у вас все равно останется безопасность базового уровня консенсуса. В этом случае форки жизнеспособны, так как все среды исполнения имеют одинаковую безопасность. Однако это невозможно для роллапов на расчетном уровне, поскольку расчетный уровень выступает в качестве источника доверия для добавленных блоков.
Доводы в пользу того, что хардфорки могут быть неограниченными и легко достижимыми для сред исполнения, заключаются в том, что дикие идеи могут быть проверены и опробованы. Кроме того, это позволяет работать поверх чужой работы, не теряя безопасности базового уровня. Если вы подумаете об идеях свободного рынка (а некоторые могут с этим не согласиться), он часто может создавать конкурирующие реализации, которые могут дать лучшие результаты.
Модульный Stack
Модульный стек - это концепция, уникальная для Celestia. Она подразумевает разделение всех различных слоев обычного блокчейна на отдельные слои. Поэтому, когда мы говорим "стек", мы подразумеваем, что все слои функционируют вместе.
Какие же слои существуют? Безусловно, существует слой консенсуса и доступности данных Celestia, но есть и другие слои. Здесь мы имеем в виду расчетный слой, который представляет собой цепочку, с которой у ролл-апов есть мост с минимальным доверием для унифицированной ликвидности и моста между ролл-апами. Эти расчетные уровни могут быть разных типов. Например, вы можете иметь ограниченные расчетные уровни, которые допускают только простые мосты и контракты на урегулирование для расположенных поверх них расчетных уровней. Однако можно также иметь расчетные слои, на которых есть свои собственные приложения, а также рулонные контракты. Хотя существуют и другие типы роллапов, которые не зависят от расчетного слоя, а функционируют сами по себе исключительно в Celestia - они называются суверенными роллапами, и мы поговорим о них в следующей главе.
Теперь также возможен стек, в котором уровни исполнения не отправляют данные блока непосредственно в расчетный слой, а вместо этого напрямую в Celestia. В этом случае уровни исполнения просто отправляют заголовки своих блоков на расчетный уровень, который затем проверяет, все ли данные для определенного блока были включены в слой DA. Это делается с помощью контракта на расчетном уровне, который получает от Celestia дерево Меркла данных транзакций. Это то, что мы называем заверением данных.
Еще одним огромным преимуществом модульного стека является его суверенитет. В модульном стеке управление может быть разделено на определенные приложения и уровни и не пересекается с другими. Если возникает проблема, управление может устранить ее, не вмешиваясь в работу других приложений в кластере.
Суверенные Rollups
Суверенный роллап - это роллап, который работает независимо от любого расчетного слоя. Это означает, что он не полагается на расчетный слой с возможностями смарт-контракта, где он обеспечивал бы обновление состояния и доказательства, а функционирует исключительно с пространством имен на Celestia. Обычно роллапы функционируют в рамках экосистемы, например Ethereum, где у них есть смарт-контракт роллапа (контракт разрешения). Этот смарт-контракт роллапа также обеспечивает минимизированное доверие между расчетным уровнем и роллапом. Однако в Ethereum все роллапы конкурируют за ценные данные о звонках. Поэтому в настоящее время ведется работа над проектом EIP-4844, который обеспечит новый тип транзакций - blob-транзакции. Это также увеличит размер блока. Однако даже с блоб-транзакциями, скорее всего, сохранится жесткая конкуренция за расчеты.
Большинство монолитных блокчейнов способны работать с умными контрактами. Например, в Ethereum существует внутрицепочечный смарт-контракт, который обрабатывает корень состояния, являющийся корнем Меркла текущего состояния сворачивания. Этот контракт постоянно проверяет, подходит ли корень предыдущего состояния к партиям сворачивания его текущего корня. Если это так, то создается новый корень состояния. Однако на Celestia это невозможно, поскольку Celestia не будет работать с умными контрактами.
В отличие от Celestia, суверенные роллапы размещают свои данные непосредственно в Celestia. Здесь данные не вычисляются и не обрабатываются, а просто хранятся в заголовках блоков. Заголовок блока - это то, что идентифицирует конкретный блок в блокчейне, и каждый блок уникален. Внутри заголовка блока существует корень Меркла, состоящий из всех хэшированных транзакций.
Итак, как это работает? У роллапа есть своя собственная одноранговая сеть, из которой узлы как полные, так и легкие загружают блоки. Однако они также проверяют, что все данные блоков роллапа были отправлены и упорядочены на Селестии (отсюда и название data availability) с помощью дерева Меркла - примеры которого мы видели ранее. Таким образом, каноническая история цепочки задается локальными узлами, которые проверяют правильность транзакций роллапа. Следствием этого является то, что суверенный роллап обязан публиковать каждую транзакцию на уровне доступности данных, чтобы любой узел мог следить за правильным состоянием. В результате полные узлы, которые функционируют как наблюдатели за пространством имен роллапа (считайте, что пространство имен - это смарт-контракт роллапа), могут также обеспечивать безопасность легких узлов. Это происходит потому, что на Celestia легкие узлы почти равны полным узлам.
Более подробно о пространствах имен: На Celestia деревья Меркла сортируются по пространствам имен, что позволяет любому роллапу на Celestia загружать только данные, относящиеся к их цепочке, и игнорировать данные для других роллапов. Деревья Меркла пространств имен (NMT) позволяют узлам роллапов получать все данные роллапов, которые они запрашивают, без разбора всей цепочки Celestia или роллапов. Более того, они также позволяют узлам валидатора доказать, что все данные были включены в Celestia правильно.
Почему же суверенные роллапы представляют собой уникальную перспективу? Потому что предыдущие реализации роллапов, например, на Ethereum, ограничены, поскольку узлы Ethereum должны хранить состояние, связанное с выполнением, в результате монолитности. Однако в модульной конструкции мы можем иметь специализированные узлы для различных целей, что должно значительно удешевить эксплуатацию сети. Таким образом, затраты на эксплуатацию сети зависят от стоимости легких узлов, а не полных узлов, поскольку, как мы объясняли ранее, легкие узлы = полные узлы.
Давайте рассмотрим, как некоторые реализации роллапов могут функционировать в качестве суверенных роллапов. Во-первых, важно прояснить, как различные системы доказательства роллапов функционируют на Селестии.
Optimistic rollups зависят от доказательств мошенничества. Доказательства мошенничества будут передаваться между клиентами одноранговым способом через полные узлы и легкие узлы на стороне роллапов. Мы рассмотрим реализацию этой идеи ниже. Суверенные роллапы меняют способ распространения доказательств мошенничества. Вместо того чтобы проверять их на контракте расчетного уровня, теперь они распространяются в одноранговой сети роллапов и проверяются локальными узлами. С суверенными оптимистичными роллапами на Celestia мы, возможно, также сможем минимизировать период оспаривания, что означает, что мы устраним одно из основных препятствий для нынешних OR, поскольку в настоящее время они очень консервативны со своими окнами оспаривания на Ethereum. Это возможно, поскольку в настоящее время все мошеннические взаимодействия происходят на цепочке в высококонкурентном блокчейн-пространстве Ethereum, что приводит к затягиванию финализации. Однако при суверенном роллапе любой легкий узел имеет полную безопасность узла, если он соединен с полным узлом, и поэтому взаимодействие с мошенниками должно происходить гораздо быстрее.
ZK-роллапы зависят от доказательств валидности (например, zksnarks). ZK-роллапы, действующие как суверенные роллапы, будут функционировать совершенно аналогично тому, как работают текущие реализации. Однако вместо того, чтобы отправлять ZK-доказательство в смарт-контракт, оно будет распространяться в одноранговой сети на роллапе для проверки узлами. Суверенные ZK-роллапы, подобно ZK-роллапам на унифицированных расчетных уровнях, позволяют различным исполнительным машинам функционировать друг над другом как суверенные цепочки, поскольку их транзакции не интерпретируются Celestia. Здесь исполнительные механизмы поверх ZK rollup могут функционировать по-разному. Это может быть время выполнения, сохраняющее конфиденциальность, время выполнения, специфичное для конкретного приложения, и многое другое. Это то, что называется фрактальным масштабированием.
Теперь, когда мы определили концепцию суверенных роллапов и имеем представление о том, как они будут реализованы на Celestia, давайте посмотрим, как могут выглядеть две различные архитектуры роллапов:
Так зачем им нужна Селестия? Оптимистичные роллапы требуют DA, чтобы можно было обнаружить доказательства мошенничества, а ZK-роллапы требуют DA, чтобы было известно состояние цепочки роллапов.
Также важно всегда контраргументировать, когда вы смотрите на что-то. Потому что в противном случае вы часто можете быть ослеплены собственными убеждениями. В этом разделе я постараюсь объяснить некоторые негативные моменты, связанные с суверенными роллапами.
Суверенные роллы будут в значительной степени зависеть от новых экосистем, создаваемых на их основе, dApps и т.д. Однако если у роллапа есть реализация VM, которая уже имеет большую активность в разработке, и dApps с открытым исходным кодом, то это становится гораздо проще сделать. Несмотря на это, ликвидность все еще остается главной проблемой, которую необходимо преодолеть. Ликвидность часто будет разделена на суверенный роллап и его время выполнения. Таким образом, роллапы будут в значительной степени зависеть от безопасных, минимизированных по доверию мостов к другим уровням, таким как другие суверенные роллапы или уровни расчетов. Мы рассмотрим некоторые возможные реализации этого позже. Кроме того, реализация суверенных роллапов в значительной степени зависит от создания инфраструктуры, способной поддерживать их различные функциональные возможности.
Optimistic Rollup Реализация
В этом разделе мы попытаемся объяснить, как может работать возможная реализация оптимистичного сворачивания Sovereign. Эта часть в значительной степени заимствована из исследовательской работы "Легкие клиенты для ленивых блокчейнов", написанной Эртемом Нусретом Тасом, Дионисом Зиндросом, Лей Яном и Дэвисом Тсе.
Один из способов построения уникального способа предоставления доказательств мошенничества заключается в том, чтобы полные и легкие узлы на свертке играли в игру бисекции. Игра в биссекцию проводится между двумя узлами, один из которых является претендентом, а другой - ответчиком. Претендент посылает запрос отвечающему узлу через третий узел, выступающий в роли верификатора. Ответ ответчика на этот запрос происходит по тому же каналу. После получения вызова верификатор направляет запрос ответчику, который затем выдает ответ, отправляемый обратно верификатору и претенденту. Верификатор последовательно выполняет проверку, чтобы убедиться, что между ними нет несоответствий и что они не являются злоумышленниками. Верификатор действует, чтобы убедиться, что отвечающий не посылает неправильные деревья Меркла, а претендент действует, чтобы убедиться, что отвечающий следует правильному корню. Если отвечающий может защитить себя, то игра продолжается как обычно. В результате этой игры с биссектрисой честный претендент всегда выигрывает, а честный отвечающий всегда выигрывает.
Доступность данных на Селестии, поселение на X
Также можно не использовать расчетный уровень, подключенный исключительно к Celestia для моста, и не функционировать как суверенный роллап. Поскольку Celestia просто предоставляет базовый уровень DA с общей безопасностью, любой расчетный уровень может использоваться до тех пор, пока Celestia может отправить корень Меркла доступных данных о транзакциях контракту расчетного уровня. Это означает, что любой расчетный уровень может быть использован для роллапов, если они того пожелают. Зачем же им это делать? Многие существующие расчетные уровни, такие как Ethereum, имеют уже существующую и процветающую экосистему. Таким образом, там уже есть ликвидность и пользователи, которыми можно воспользоваться. Это особенно выгодно для роллапов, которые не хотят полагаться на создание целой экосистемы с нуля. Это не ограничивается только Ethereum в качестве расчетного слоя. Вы также можете использовать Mina, например, в качестве ZK-роллапа. Это означает, что вы можете отправлять данные о своих транзакциях в Celestia, а обновления состояния и zk-доказательства - в Mina. Таким образом, у вас уже есть расчетный уровень, который по умолчанию имеет подтверждение действительности.
Если вы являетесь оператором роллапа и хотите воспользоваться ликвидностью и пользователями, использующими другие блокчейны, то этот тип решения будет весьма привлекательным для вас. Также можно стать оператором роллапа по типу plug and play. У вас могут быть разные секвенсоры, подключенные к разным расчетным уровням. Например, один секвенсор ZK rollup может быть подключен к Mina и предоставлять обновления состояния и подтверждения достоверности. В то время как другой секвенсор на другом zk-роллапе может быть подключен к Ethereum для расчетов через Quantum Bridge (легендарные Celestiums). Всех их объединяло бы то, что они отправляли бы все свои данные о транзакциях в Celestia, а затем Celestia управляла бы смарт-контрактом или подобным ему на уровне расчетов, где она отправляла бы дерево Меркла имеющихся данных (подтверждение).
Давайте рассмотрим, как это может выглядеть архитектурно на примере рулона ZK:
Стоимость Начисление
Источником дохода для самой Celestia будут транзакционные сборы от транзакционных партий, представленных различными роллапами. Комиссия за транзакции Celestia будет весьма похожа на то, как сейчас работает Ethereum с EIP-1559, то есть на механизм типа burn. Это означает, что будет динамическая базовая комиссия, которая будет сжигаться, а также "чаевые" для валидаторов, которые будут продвигать определенную транзакцию быстрее, эти валидаторы также будут получать ценность от эмиссии токенов после новых блоков. Однако это с точки зрения валидаторов Celestia, а как бы это выглядело с точки зрения пользователя? Давайте сначала определим, как будут выглядеть различные комиссии в зависимости от того, какие уровни вы используете, а затем мы сможем сделать вывод о том, как будет выглядеть пользовательский опыт.
Структура вознаграждения за исполнение роллапов будет состоять в основном из операционных расходов + расходы на публикацию DA. Вероятно, будут и накладные расходы, чтобы роллап приносил прибыль. Это означает, что для пользователя вы, скорее всего, будете платить одну плату, включающую эти три составляющие + плату за перегрузку - которая, вероятно, будет намного ниже в результате меньшей перегрузки.
Источником дохода для расчетного уровня является плата за расчетный контракт, которую рулонная компания будет платить, чтобы иметь возможность проводить расчеты на нем. Кроме того, через расчетный уровень будет осуществляться доверительное минимизированное мостовое соединение между роллапами, поэтому он также сможет взимать плату за мостовое соединение.
Тогда как насчет суверенных роллапов, которые функционируют без расчетного уровня? В суверенных роллапах пользователям придется платить за газ, чтобы получить доступ к вычислениям на роллапе. Роллап устанавливает плату, скорее всего, решается руководством, а затем, вероятно, вводится плата за перегрузку, которую также необходимо оплачивать. Эти сборы с роллапа будут покрывать стоимость публикации данных в Celestia и небольшие накладные расходы на валидаторы роллапов. Вы откажетесь от платы за расчеты, что, вероятно, приведет к чрезвычайно низкой плате для конечного пользователя.
В заключение, мы можем создать структуру платы за услуги, как различные платы будут выглядеть для конечного пользователя. Конечный пользователь модульного стека, скорее всего, получит 3 постоянные комиссии, а возможно и 4. Это плата за публикацию DA, плата за расчетный контракт и плата за исполнение роллапа. Четвертой возможной платой будет плата за перегрузку во время высоких нагрузок. Пользователь платит только один сбор на уровне исполнения, этот сбор будет включать в себя затраты всех уровней в модульном стеке. Итак, давайте посмотрим, как будет выглядеть структура платы с точки зрения пользователей:
Что же это означает для будущего?
Если Celestia окажется более дешевым и быстрым уровнем доступности данных для роллапов, обеспечивая при этом децентрализованную и общую безопасность, то можно будет увидеть, как роллапы все чаще используют ее для обеспечения доступности данных. Если учесть, сколько сейчас платят роллапы за использование Ethereum для обеспечения безопасности, то роллапы на Celestia будут платить гораздо меньше. Однако для устранения проблем с перегрузками в Ethereum уже разработаны исправления, в первую очередь это касается блоб-транзакций, стейкинга и шардинга.
Тогда как насчет MEV? В настоящее время роллапы используют секвенсоры для сбора и упорядочивания транзакций пользователей в мемпуле, прежде чем они будут выполнены и опубликованы на уровне DA. Это является проблемой для MEV, поскольку в текущих реализациях секвенсор в основном централизован, и поэтому он не защищен от цензуры. Текущим решением этой проблемы является децентрализация секвенсоров, что планируют сделать многие текущие роллапы, хотя это влечет за собой целый ряд проблем. Другим способом решить эту проблему в какой-то форме было бы разделение валидаторов и упорядочивания списков транзакций (посмотрите статью Виталика, если вам интересно).
В заключение следует отметить, что уровни модульного стека получают доход за счет стоимости транзакций. Пользователи получают ценность от транзакций на уровне и, таким образом, знакомы с оплатой сборов. Таким образом, под стоимостью понимается ценность, которую получает пользователь от того, что его транзакции включены в слой.
Bridging
Как мы уже обсуждали ранее, если у роллапа есть расчетный уровень, у него будет мост с минимальным уровнем доверия к другим роллапам через расчетный уровень. Но что произойдет, если роллап является суверенным или если он хочет установить мост с другим кластером? Давайте рассмотрим межролевую коммуникацию.
В случае двух суверенных роллапов, которые хотят общаться, они могут использовать технологию легкого клиента, подобно тому, как функционирует IBC. Легкие клиенты будут получать заголовки блоков от двух роллапов, а вместе с ними и доказательства, которые используют роллапы, через сеть p2p. Это может работать как через механизм блокировки и майнинга, как в IBC, так и через валидаторы через ретранслятор. В цепочках, созданных с использованием Cosmos SDK, и в цепочках, использующих Tendermint или Optimint, объединение становится гораздо более простым, так как вы можете использовать все преимущества IBC с ICS. Однако для этого необходимо, чтобы обе цепочки включали в себя машины состояний друг друга и чтобы валидаторы соединяющих цепочек списывали транзакции. Могут существовать и другие способы соединения. Мы можем, например, представить себе третью цепочку, которая функционирует с некими легкими клиентами. На них две цепочки, которые хотят установить мост, могут передавать заголовки своих блоков, которые затем будут функционировать как расчетный уровень для обеих цепочек. Или вы можете положиться на цепочку Cosmos, чтобы она действовала как "межкластерный центр роллапов", где валидаторы цепочки могли бы управлять мостом, следуя условиям роллапов. Существует также широкий спектр цепочек "мост как услуга", таких как Axelar и многие другие.
Однако, безусловно, самым простым способом облегчить создание мостов является использование одним и тем же расчетным уровнем роллапов, поскольку они будут иметь на нем минимизированные по доверию мостовые контракты.
Причина, по которой мосты между уровнями так важны, заключается в том, что они позволяют обеспечить единую ликвидность. Во-вторых, позволяя протоколам и уровням быть совместимыми друг с другом посредством обмена состоянием, мы открываем новые уровни совместимости. Под совместным использованием состояния понимается способность одной цепи делать вызовы другой цепи. Здесь особый интерес представляют, в частности, возможности межцепочечных счетов с ICS-27.
Таким образом, мы можем сделать вывод, что легкие клиенты имеют решающее значение для стандартов операционной совместимости, таких как IBC. В результате легкие клиенты Celestia обеспечат более безопасное взаимодействие между цепочками в различных кластерах. Что касается связи Celestia с IBC, то они планируют использовать управление для составления белых списков соединений определенных цепочек с Celestia, чтобы ограничить раздувание штата.
Верификация для конечного пользователя
Хотя все различные подходы к монолитному и модульному проектированию последних нескольких лет являются инновационными, а количество талантов, создающих их, просто поражает. Есть один фундаментальный вопрос, лежащий в основе различных компромиссов, который существует в нашем пространстве уже довольно давно. Мы считаем, что он связан с проверкой конечного пользователя и ее необходимостью.
Можно бесконечно спорить, о различных компромиссах в различных конструкциях. Но в конечном итоге все сводится к вопросу - имеет ли значение возможность проверки конечным пользователем. Многие компромиссы в дизайне (например, размер блока) связаны с простотой запуска полного узла, а DAS позволяет легким клиентам быть "гражданами первого класса", сравнимыми с полными узлами.
В основе такого предположения лежит предположение, что пользователи вообще будут заботиться о том, чтобы быть первоклассными гражданами. Тот факт, что пользователи могут легко проверить цепочку, запустив легкий клиент/полный узел, не означает, что они это сделают, или что они будут ценить возможность сделать это.
Аргумент в пользу этого довольно прост. Если пользователи не заботятся о проверке, вы можете с тем же успехом использовать централизованную базу данных. Она всегда будет более эффективной, поскольку децентрализация часто происходит за счет эффективности. Следовательно, причина, по которой мы вообще создаем криптопротоколы, заключается в том, чтобы конечные пользователи могли проверять вычисления.
Аргумент против заключается в том, что пока сеть достаточно децентрализована, верификация конечного пользователя сама по себе не имеет значения. Пользователи не будут заботиться об этом, пока UX будет хорошим. На сегодняшний день нет четкого ответа на вопрос, насколько важна верификация конечного пользователя. Однако мы считаем, что возможность проверки цепочки конечными пользователями - это достойная цель и причина, по которой многие строят в этом пространстве.
Будущее модульного стека
Этот раздел послужит способом представить, как может выглядеть модульный стек, построенный поверх Celestia, в будущем. Мы рассмотрим архитектурный обзор того, как мы видим модульный стек, и какие слои мы можем увидеть.
Ниже приведена диаграмма многих возможных уровней, которые могут функционировать в рамках модульного стека. Все они имеют одну общую черту - они все используют Celestia для доступности данных. Скорее всего, мы увидим различные суверенные роллапы, как оптимистические, так и ZK, которые будут функционировать без расчетного слоя. Мы также можем увидеть роллапы, использующие Cevmos в качестве расчетного уровня, наряду с различными цепочками приложений. Существует также вероятность того, что мы увидим другие типы расчетных слоев. Эти расчетные уровни могут быть ограниченными, что означает, что они будут либо иметь предустановленные контракты только для мостов и роллапов, либо полагаться на управление, которое будет составлять "белый список" контрактов.
В правой части диаграммы находятся другие неродные расчетные цепочки, которые также могут иметь роллапы, использующие их для ликвидности и расчетов, полагаясь при этом на Celestia для обеспечения сертификации данных о транзакциях на расчетном уровне.
Все эти кластеры будут соединены через различные мостовые службы, как новые, так и старые.
Что вы не видите, так это все инфраструктуры, которые будут созданы для обеспечения легкого доступа к различным функциональным возможностям Celestia, такие как конечные точки RPC, API и многое другое.
Celestia Сайт : https://celestia.org/
Twitter: https://twitter.com/CelestiaOrg
GitHub: https://github.com/celestiaorg/
Оригинал статьи: https://maven11.substack.com/p/the-modular-world?s=r