Rollup як суверенні чейни
Більшість програм, які використовують Celestia як рівень консенсусу та доступності даних, розміщуватимуться на rollup. Як нове рішення рівня 2, яке вперше було запропоновано для збільшення пропускної здатності транзакцій, rollup може стати майбутнім домом для майже всіх блокчейн-програм, незалежно від того, чи використовують вони Celestia, Ethereum або іншу платформу для консенсусу та доступності даних.
У цій публікації ми обговоримо, що таке rollup, як вони зараз працюють на Ethereum і як вони працюватимуть на Celestia.
З поточними rollup Ethereum чейн Ethereum закріплюється в rollup як рівень врегулювання, що робить rollup Ethereum фактично «дочерніми чейнами» до Ethereum, де правильний rollup чейн визначається смарт-контрактом на Ethereum. Це також можна порівняти з моделлю парачейнів Polkadot, де чейн ретрансляції закріплено як рівень врегулювання для парачейнів.
Однак у Celestia ми передбачаємо новий тип rollup: чейни суверенних rollup. Це незалежні суверенні чейни, де правильний чейн rollup визначається самою підмережею rollup, подібно до незалежного L1, і за бажанням, може мати довірені або з мінізованою довірою мости з іншими чейнами або рівнями врегулювання.
https://twitter.com/ptrwtts/status/1509869606906650626?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1509869606906650626%7Ctwgr%5Ea781cc52b5718763a4e67c6c2d0b4ec0923ab47d%7Ctwcon%5Es1_c10&ref_url=https%3A%2F%2Fblog.celestia.org%2Fsovereign-rollup-chains%2F
Зміст статті
- Що таке rollup?
- Rollup на Ethereum (закріплене врегулювання)
- Rollup на Celestia (суверенні)
- Суверенні крос-rollup комунікації
- Чому суверенні?
Що таке rollup?
Rollup — це блокчейни, які розміщують свої блоки в іншому блокчейні та успадковують консенсус і доступність даних цього блокчейну (так званий «рівень консенсусу та доступності даних»).
Типові rollup обслуговуються трьома основними сторонами: секвенсорами, повними rollup нодами, легкими клієнтами rollup. Усі rollup дані мають стан, яким можуть бути, наприклад, усі адреси облікових записів і баланси токенів користувачів rollup в певний момент.
Секвенсери — це ноди, які отримують нові транзакції rollup від користувачів, об’єднують транзакції в блок і публікують цей блок на рівні консенсусу та доступності даних. Блок складається з двох компонентів: заголовка блоку та фактичних даних транзакції. Заголовок блоку містить, серед іншого, криптографічне зобов’язання щодо стану чейну — зазвичай це корінь Merkle.
Повні rollup ноди — це ноди, які завантажують усі заголовки блоків rollup та дані транзакцій, обробляють і перевіряють усі транзакції, щоб обчислити стан rollup та перевірити, чи всі транзакції дійсні. Якщо повна нода стикається з недійсною транзакцією в блоці rollup, він відхиляє та ігнорує цей блок. Тому секвенсори не можуть створювати дійсні блоки з недійсними транзакціями, тому що ноди відхилять їх від свого перегляду.
Легкі клієнти rollup лише завантажують заголовки rollup блоків, а не завантажують і не обробляють жодних даних транзакцій, і таким чином, не можуть самостійно обчислити останній стан або перевірити дійсність стану rollup. Натомість вони можуть дізнатися про останні зобов’язання стану з останнього заголовка rollup блоку та запитати повні rollup ноди для частин стану. Вони також опосередковано перевіряють дійсність rollup транзакцій, використовуючи такі методи, як докази фальсифікації або докази дійсності.
Коли rollup ноди синхронізують чейн rollup, вони використовують порядок, накладений на блоки rollup за допомогою консенсусу та рівня доступності даних. Вони завершують блок rollup, якщо він є першим дійсним блоком на своїй висоті в межах rollup, який буде опубліковано на рівні доступності даних — незалежно від того, перевіряється дійсність безпосередньо (повні ноди) чи опосередковано (легкі клієнти).
Для більш детального та технічного пояснення rollup ми рекомендуємо прочитати цю статтю на форумі Celestia про rollup.
Rollup на Ethereum (закріплене врегулювання)
Поточні rollup в Ethereum розміщують свої блоки безпосередньо в смарт-контракті на основі EVM, також відомому як мостовий контракт. Цей контракт ефективно реалізує легкого клієнта у мережі для rollup, який отримує заголовки блоків і обробляє докази фальсифікації або дійсності. У цій моделі є закріплений, жорстко закодований міст з мінімізованою довірою до основного чейна Ethereum.
Використовуючи мостовий контракт, користувачі можуть вносити та знімати активи між rollup і чейнами виконання, на якому живе мостовий контракт, мінімізуючи довіру, оскільки контракт не прийматиме недійсні блоки від секвенсорів завдяки доказам фальсифікації або дійсності.
Чейн Ethereum, діючи як рівень консенсусу та доступності даних, записує та завершує лише ті блоки, які є дійсними відповідно до мостового контракту. Таким чином, rollup повні ноди і легкі клієнти (за межами смарт-контракту) вважають легкого клієнта Ethereum у чейні основним джерелом правди щодо того, що таке канонічний (правильний) чейн rollup. У цій моделі ми вважаємо, що Ethereum закріплено як зв’язаний рівень врегулювання для rollup, де rollup є «чейном малюком» для Ethereum, а не окремим незалежним чейном.
Rollup на Celestia (суверенні)
Суверенні rollup на Celestia не публікують свої блоки в смарт-контракті, а безпосередньо в чейні як вихідні дані. Рівень консенсусу та доступності даних Celestia не інтерпретує та не виконує жодних обчислень щодо блоків rollup, а також не запускає легкий клієнт мережі для rollup.
Натомість rollup фактично працює як блокчейн рівня 1: повні ноди та легкі клієнти завантажують блоки rollup безпосередньо з власної однорангової rollup мережі. Основна відмінність полягає в тому, що вони також перевіряють, що дані блоку rollup були включені та впорядковані на рівні доступності даних Celestia через підтвердження Merkle. Тому, подібно до блокчейну рівня 1, канонічний чейн визначається нодами, які локально перевіряють правило вибору форка та транзакції rollup, а не закріпленим легким клієнтом у чейні.
Докази фальсифікації та дійсності працюють так само, як вони працювали б у блокчейні рівня 1. Докази фальсифікації передаються клієнтам безпосередньо через однорангову мережу, а докази дійсності просто включаються в заголовок блоку (наприклад, див. Mina Protocol). Оскільки затримка мережевої синхронізації в одноранговій мережі, ймовірно, буде значно меншою, ніж затримка отримання доказу фальсифікації, включеного в чейн, це означає, що період перевірки для доказів фальсифікації в одноранговому зв’язку може бути значно нижче, що призводить до швидшого завершення для легких клієнтів.
У цій моделі немає закріпленого мосту між rollup і будь-яким рівнем врегулювання, оскільки блоки rollup просто розміщуються безпосередньо на рівні доступності даних, а не в смарт-контракті. Це узгоджується з філософією дизайну Cosmos, де міст до Cosmos Hub не закріплений у зонах Cosmos, але є необов’язковим і може бути доданий, дозволяючи зонам зберігати свій суверенітет. Rollup все ще може з’єднуватися з іншими rollup у спосіб мінімізації довіри, що ми обговоримо в наступному розділі.
Rollup чейн є суверенним, якщо він не закріплює рівень врегулювання для визначення канонічного чейну та правил дійсності транзакцій rollup. Натомість канонічний rollup чейн визначається нодами в одноранговій мережі rollup (за умови, що блоки доступні на рівні доступності даних). Це означає, що рівень врегулювання не може примусово включати транзакції в rollup.
«Не закріплювати рівень врегулювання» — це перш за все соціальна відмінність, а не технічна, що означає, що існує соціальний договір між спільнотою rollup, згідно з яким правила дійсності транзакцій rollup визначаються спільнотою, а не незмінним контрактом L1. На практиці це означає, що мости до rollup, які не закріплені, повинні бути змінними, щоб існував шлях оновлення, який визнає хардфорки на суверенному rollup (обговорюється в наступному розділі).
Отже, це означає, що спільнота rollup може оновити чейн за допомогою хардфорка без необхідності хардфорка рівня врегулювання або рівня доступності даних або вбудовування управління в чейні, яке перемагає природу чейна з мінімізованою довірою. Це особливо актуально, якщо є активи, які карбуються нативно в суверенному rollup чейні, а не всі активи, отримані з інших чейнів.
Суверенні rollup можуть використовувати Ethereum лише як рівень доступності даних без закріплення Ethereum для врегулювання, однак це додає більше витрат порівняно з використанням «чистого» рівня доступності даних, такого як Celestia, оскільки ноди rollup повинні проявляти інтерес до дійсності усіх транзакцій на рівні врегулювання Ethereum, щоб запустити ноду для рівня доступності даних Ethereum.
На Celestia також можна створити «rollup врегулювання», яке є різновидом суверенного rollup. Rollup врегулювання може мати несуверенні rollup, які використовують його як закріплений рівень врегулювання. Однак рівень врегулювання є суверенним так само, як суверенний Ethereum L1, оскільки його спільнота часто оновлює його за допомогою хардфорків через соціальний консенсус.
Суверенні крос-rollup комунікації
Як згадувалося вище, rollup Celestia не мають закріпленого мосту між rollup і будь-яким рівнем врегулювання. Таким чином, рівень врегулювання та рівень виконання rollup роз’єднані та модульні. Отже, як rollup Celestia може зв’язатися з іншими мережами? Відсутність закріпленого рівня врегулювання дозволяє нам мати ширший простір проектування для перехресних мостів чейнів. Нижче ми досліджуємо простір дизайну та різні варіанти.
Припустимо, що якийсь суверенний чейн rollup A хоче з’єднати з іншим чейном B, який, як ми припустимо, також є rollup.
Однорангове та он-чейн врегулювання
Чейни A і B можуть безпосередньо вставляти легкі клієнти один для одного в обох легких клієнтах чейна. Наприклад, обидва чейни запустять легкий клієнт для чейнів A і B. Таким чином, легкі клієнти отримають заголовки блоків і будь-які пов’язані докази фальсифікації або дійсності безпосередньо через однорангову мережу. Ми називаємо це одноранговим врегулюванням.
Мостовий контракт існуватиме в обох чейнах, що дозволить виводити та зберігати активи в будь-якому чейні (наприклад, за допомогою механізму блокування та мінтингу), а також контролювати (прямо чи опосередковано через ретранслятор) секвенсори або валідатори кожного чейну для виконання переказів.
З іншого боку, легкі клієнти також можуть бути реалізовані як смарт-контракти в чейні, а заголовки блоків і докази фальсифікації/ZK надсилатимуться до смарт-контрактів у чейні. Це статус-кво зі rollup Ethereum. Ми називаємо це он-чейн врегулюванням.
Зірка(Hub-and-spoke) та точкові(point-to-point) мости
Наразі очікується, що rollup мости перемикатимуться на єдиний рівень врегулювання, який діє як центр врегулювання, наприклад Ethereum (міст “Зірка”). Якщо rollup чейни A і B підключені до одного хабу, вони можуть з’єднувати активи один з одним, використовуючи хаб як посередника для врегулювання.
Однак, як і IBC, rollup програми також можуть вибрати напрямок між собою замість використання зіркового мостового чейну (точкові мости).
Динамічні та статичні мости
Залежно від середовища виконання rollup чейнів, для з’єднання нових чейнів може знадобитися оновлення чейну або хардфорк. Це пояснюється тим, що чейни A і B повинні підтримувати середовища виконання один одного, щоб підтримувати докази фальсифікації або ZK один одного.
Припустимо, що кінцевий автомат оптимістичного rollup чейну A написаний безпосередньо на Golang (наприклад, за допомогою Cosmos SDK), а не в середовищі смарт-контрактів, наприклад EVM або CosmWasm. Для з’єднання з чейном B, чейну B потрібно буде оновити програмне забезпечення своєї ноди, щоб включити кінцевий автомат чейну A як бібліотеку, щоб перевірити докази фальсифікації чейну A. Це тому що чейн B не може автоматично додавати код кінцевого автомата чейну А, оскільки він може бути зловмисним або недетермінованим, що створює загрозу безпеці. Тому для створення такого мосту необхідний соціальний консенсус або управління. Це також буде потрібно у випадку rollup валідності, яке використовує конструкцію доказу ZK, яку не розуміє чейн B. Ми називаємо це статичним мостом, оскільки мости повинні бути явно додані шляхом оновлення чейну. Такий міст може бути реалізований як легкий клієнт IBC.
З іншого боку, якщо оптимістичний rollup чейн A написаний у середовищі смарт-контрактів із ізольованим програмним середовищем, наприклад EVM або CosmWasm, тоді чейн B може дозволити додавати код кінцевого автомата чейну A безпосередньо в кінцевий автомат чейну B без будь-якої потреби для соціального консенсусу чи управління, наприклад, за допомогою смарт-контракту. Подібним чином, якби чейн A був ZKrollup, його можна було б динамічно з’єднати з чейном B, якщо чейном B здатний зрозуміти докази ZK чейну A. Ми називаємо це динамічним мостом.
Незакріплені та закріплені рівні врегулювання
Якщо rollup чейн розміщує свої блоки та докази на рівні врегулювання, який діє як центр врегулювання, наприклад Ethereum, ми говоримо, що рівень врегулювання закріплено, якщо канонічний чейн і правила дійсності транзакцій визначаються рівнем врегулювання.
З іншого боку, якщо rollup розміщує свої блоки та докази на рівні врегулювання, але канонічний rollup чейн в кінцевому рахунку визначається самою мережею rollup, ми говоримо, що рівень врегулювання незакріплений. Для того, щоб незакріплений рівень врегулювання мав сенс, він повинен мати спосіб оновлення rollup, який не потребує хардфорку рівня врегулювання.
Мости на базі комітетів та доказів
Для того, щоб міст між двома rollup чейнами був з мінімізованою довірою, rollup чейни повинні перевіряти докази фальсифікації або ZK один одного, що означає, що вони повинні розуміти стан машини один одного (мости на основі доказів).
Однак існують також мости на основі комітетів (наприклад, мости IBC), де замість того, щоб покладатися на докази валідності стану, міст покладається на комітет для підтвердження дійсності блоків. Такий міст не має довіри, оскільки комітет може вкрасти кошти. Однак такі мости можуть мати нижчу складність, оскільки чейн призначення не потребує функціональності для обробки доказів фальсифікації або ZK вихідного чейну.
У поточних мостах IBC комітет є набором валідаторів вихідного чейну. Однак можна уявити собі світ, де комітетом керують спеціалізовані постачальники мостів, які підтверджують кілька мереж. Це можна вважати безпекою між чейнами лише для мостів, а не блокового виробництва. У такій установці мостовий комітет відокремлюється від набору валідаторів вихідного чейну.
Поновлювані та непоновлювані мости
Кінцева мета поточних rollup Ethereum полягає в тому, щоб rollup не можна було оновлювати за допомогою multisig або комітету, тому що, якщо вони можуть, вони не мінімізуються довірою, оскільки кошти можуть бути вкрадені через оновлення. У цій моделі rollup можна оновити лише хардфорком L1, оскільки канонічний чейн визначається рівнем врегулювання L1, тобто rollup не мають суверенітету.
Однак, щоб суверенні rollup були практичними, має бути шлях оновлення, який визнає, що rollup є суверенними, а не закріпленими на рівні врегулювання. Є кілька підходів, які можна розглянути, які впливають на те, мінімізовано міст довіри чи ні. Вважайте, що rollup чейн A є хардфорком, а чейн B потребує оновлення свого легкого клієнта для чейну A:
- Для статичного мосту чейн B також потребує хардфорку. Такий шлях оновлення означатиме, що міст мінімізує довіру, оскільки не задіяно multisig або комітет.
- Для динамічного мосту комітет (наприклад, DAO), керований чейном A, може оновити легкий клієнт у чейні B. Це буде надійний міст.
- Для динамічного мосту комітет (наприклад, DAO), керований чейном B, може оновити легкого клієнта у чені B. Якщо чейн B є рівнем врегулювання, це покладає на рівень врегулювання обов’язок впровадження оновлень, що може бути бажаним, якщо рівень врегулювання має спеціалізоване управління для цього або має високу економічну безпеку. Це також буде надійним мостом.
Чому суверенітет?
https://twitter.com/evansforbes/status/1540772513516511233?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1540772513516511233%7Ctwgr%5Ea781cc52b5718763a4e67c6c2d0b4ec0923ab47d%7Ctwcon%5Es1_c10&ref_url=https%3A%2F%2Fblog.celestia.org%2Fsovereign-rollup-chains%2F
За своєю суттю rollup — це просто блокчейни, а rollup мости — це просто легкі клієнти для цих блокчейнів. Поточний статус-кво для rollup, популяризованих Ethereum, спрямований на rollup без можливості оновлення із закріпленим рівнем врегулювання. Це еквівалентно запуску клієнта для блокчейну, який ніколи не можна оновити, чиї блоки дійсні, лише якщо вони прийняті одним закріпленим у чейні екземпляром легкого клієнта для rollup. Як ми показали вище, це лише невелика частина простору дизайну для rollup.
У Celestia Labs ми зацікавлені в суверенних rollup без закріпленого рівня врегулювання, тому що вважаємо, що найважливішим рівнем у блокчейнах є соціальний консенсус. Зокрема, блокчейни є інструментом, який дозволяє спільнотам суверенно соціально координуватися, не обтяжуючись статус-кво. Це означає розглядати хардфорки як функцію, а не помилку, оскільки хардфорки дають суверенним спільнотам можливість досягти соціального консенсусу. Це особливо важливо як механізм соціального захисту, коли щось йде не так, наприклад, коли Ethereum роздвоюється після злому DAO.
Суверенні rollup стануть потужним способом для суверенних спільнот мати комп’ютери спільнот для відстеження та виконання соціально-економічних цінностей і угод, без накладних витрат на завантаження або підтримку власних рівнів консенсусу та наборів валідаторів і без підпорядкування соціальному консенсусу закріпленого рівня врегулювання, з яким вони можуть або не можуть узгоджуватися.
Суверенні rollup також надають розробникам більше гнучкості щодо середовища виконання, оскільки вони не пов’язані з обмеженнями закріпленого рівня врегулювання, який має обробляти докази фальсифікації або ZK для своїх rollup, оскільки в багатьох випадках є докази фальсифікації або ZK, що певні рівні врегулювання можуть бути не в змозі обробляти тривіально або ефективно.
Слідкуйте за наступною публікацією, де ми докладніше розглянемо, чому суверенітет має значення в блокчейнах.