TL;DR
- Мы делимся подробным планом Regenesis, который был сформирован в результате обширных обсуждений с сообществом StarkNet. Особая благодарность Kuba@SWM.
- Regenesis последует за выпуском Cairo 1.0, что сделает систему более безопасной за счет более простых и безопасных контрактов StarkNet.
- Пользователи должны быть готовы обновить свой кошелек на этапе перехода.
- Разработчики должны будут перенести свои контракты на Cairo 1.0.
Вступление
StarkNet Alpha продвигается к Regenesis, что является важным шагом на пути к производству. В этом обновлении мы хотим поделиться более подробной информацией об основной мотивации Regenesis — Cairo 1.0 — и начать объяснять, что это потребует от пользователей и разработчиков. После Regenesis StarkNet будет работать только с контрактами на основе Cairo 1.0 и начнет с нового генезисного блока с существующим состоянием.
Что Regenesis потребует от пользователей? Простое обновление своего кошелька. Что это потребует от разработчиков децентрализованных приложений StarkNet? Перенос их контрактов на Cairo 1.0 и выполнение простого руководства по обновлению. В частности, не будет перезапуска из чистого состояния, и мы останемся с тем же экземпляром StarkNet, что означает отсутствие необходимости в миграции .
План Regenesis состоит в том, чтобы полностью сохранить состояние приложений и не допускать простоев приложений. Таким образом, приложения, которые следуют рекомендациям, которые мы предоставим, смогут сразу же запускаться в основной сети StarkNet Alpha без каких-либо помех для их работы и их пользователей в процессе восстановления. Мы стремимся работать с сообществом и предоставляем всю необходимую поддержку, чтобы сделать этот процесс как можно более плавным.
Мы придерживаемся этого направления в результате обширных обсуждений с сообществом, которые включали важное предложение от команды Software Mansion.
Почему Regenesis ?
Cairo 1.0 и Sierra
Основной мотивацией для Regenesis является использование новых возможностей, появившихся в Cairo 1.0, а именно секвенсоров, защиты от DOS, устойчивости к цензуре и учета газа, которые необходимы для StarkNet как децентрализованной сети.
Cairo 1.0 гарантирует, что каждая транзакция может быть доказана. Это позволит StarkNet включать отмененные транзакции в блоки и генерировать доказательства их выполнения. Этот механизм позволит секвенсорам платить за выполнение отмененных транзакций, повышая защиту DOS от злоумышленников. Кроме того, Cairo 1.0 будет поддерживать учет газа, что позволит StarkNet перейти на более интуитивно понятный рынок комиссий. Наконец, это позволит StarkNet вводить принудительные транзакции из L1 и повысит возможности защиты сети от цензуры.
Чтобы воспользоваться этими преимуществами, нельзя смешивать контракты Cairo v0 и Cairo 1.0. Нельзя доказать, что неверные заявления неверны, и нельзя отследить газ, если у нас есть фрагменты контрактов Cairo v0. С этой целью нам нужно будет полностью исключить код Cairo v0 из состояния StarkNet, а значит, Regenesis.
После Regenesis у нас будет система StarkNet, полностью основанная на Cairo 1.0.
Упрощение кода и протокола
StarkNet, еще находясь в альфа-версии, уже претерпел множество изменений. Каждая версия до сих пор изменяла ОС StarkNet, блоки и структуру транзакций. Это привело к тому, что часть кода устарела. Тем не менее, полные узлы и поставщики инфраструктуры (такие как индексаторы и исследователи состояния) должны знать и реализовывать все прошлые варианты поведения альфа-версий StarkNet, чтобы синхронизировать состояние без доверия. Без Regenesis это бремя могло бы стать серьезным сдерживающим фактором для разработчиков, которые рассматривали бы возможность создания таких сервисов для StarkNet.
Поэтому, прежде чем перейти к производству и в качестве подготовки к децентрализованному миру с множеством реализаций инструментов инфраструктуры, мы намерены уменьшить сложность протокола. Мы достигли бы этого, не требуя от будущей инфраструктуры выполнения какого-либо кода StarkNet 0.x и отмечая первый блок после периода перехода как точку генезиса.
Wen Regenesis ? Общая хронология
Regenesis последует за выпуском Cairo 1.0, который планируется выпустить к концу 2022 года. В течение первого квартала 2023 года StarkNet будет обновлен для поддержки Cairo 1.0, и мы стремимся полностью перейти на сеть на основе Cairo 1.0 к концу 2022 года. конец 1 квартала.
Пользователи и приложения должны будут совершить переход в течение этого периода.
Итак, что мне нужно знать?
Разработчики приложений должны знать о следующих аспектах Regenesis:
- Убедитесь, что ваш контракт готов к обновлению. Полные технические детали плана представлены на форуме сообщества StarkNet . Как только детали будут согласованы, мы поделимся кратким руководством.
- Убедитесь, что вы готовы перенести свой код в Cairo 1.0. Все последние подробности смотрите в следующем разделе.
Перенос вашего контракта в Cairo 1.0
Cairo 1.0 имеет большие перспективы для разработчиков StarkNet. Улучшение существующего Cairo, которое будет безопаснее, лучше и проще для написания контрактов, с улучшенным синтаксисом, полноценной системой типов (у кого-нибудь родной uint256?) и многим другим. Разработчики должны будут перенести свои существующие контракты StarkNet на синтаксис Cairo 1.0. Однако, поскольку логика и структура кода останутся прежними, ожидается, что эти усилия будут незначительными по сравнению с усилиями, которые потребовались для разработки приложения в первую очередь.
В этом контексте стоит отметить, что вы можете повторно проверить версию Cairo 1.0 своего приложения. Если ваше приложение уже проходило аудит в прошлом, процесс повторного аудита будет значительно дешевле и проще, поскольку аудиторы уже знакомы с вашей логикой.
Мы выпустим всю документацию по Cairo 1.0, а также учебные пособия и семинары в четвертом квартале 2022 года.
Я пользователь StarkNet . Что я должен делать?
Как пользователь, вам, вероятно, придется предпринять несколько действий во время Regenesis. По крайней мере, вам придется обновить контракт с учетной записью. Невыполнение этого требования в течение переходного периода (несколько месяцев) приведет к потере вашей учетной записи. В зависимости от пути обновления, выбранного разработчиками приложений StarkNet, которые вы используете, вам, возможно, придется предпринять дополнительные шаги.
Напоминаем всем, что StarkNet все еще находится в альфа-фазе, и пользователи должны внимательно следить за сообщениями StarkNet и приложений, которые они используют. Вы несете ответственность за своевременное обновление до новой системы. Быть первопроходцем не всегда легко, и мы рассчитываем на то, что вы внесете свой вклад!
Заключить
Cairo 1.0 не за горами и предлагает множество интересных преимуществ и улучшений для StarkNet и его разработчиков. Чтобы пожинать их, необходимо событие Regenesis сети. К счастью, у нас есть дизайн, который делает этот процесс минимально разрушительным — полностью бесшовным для пользователей и довольно простым для приложений.
Мы призываем вас принять участие в обсуждении сообщества и поделиться своими комментариями и опасениями, а также быть в курсе шагов, которые вам необходимо предпринять в качестве разработчика приложений в StarkNet.