Initia: Interwoven Stack та модульний блокчейн

Розширений10/13/2024, 7:49:38 PM
Ця стаття знайомить з інтервованою стековою системою Initia, яка має на меті підтримку модульної екосистеми блокчейна, зокрема покращення масштабованості та суверенітету через оптимістичні скрутапи. Initia надає платформу L1, яка співпрацює з кількома Minitias, ці прикладно-специфічні скрутапи можуть незалежно керувати середовищами виконання, контролювати порядок транзакцій та оптимізувати комісії за газ. Завдяки модулям OPHost та OPChild, а також ботам OPinit, досягається безшовна взаємодія між L1 та L2, що забезпечує безпеку, гнучкість та ефективний переказ активів.

Криптовалютна екосистема змушена була адаптуватися до нової реальності — в ній з'явився Ініціа.

Як індустрія, нам довелося прийняти той факт, що один державний автомат не може масштабуватися, щоб відповідати амбіціям криптовалюти. Масштабування пропускної здатності, зберігаючи при цьому низькі витрати для користувачів та операторів, всі це при тому, що залишається прийнятним рівень децентралізації, це битва, яку майже неможливо виграти монолітичним підходом.

Реальність полягає в тому, що успіх чисто монолітних ланцюгів став контрарним поглядом. Входьте в дебати про модульність проти монолітності, які зайняли центральне місце раніше цього року. Але ось головне: немає жодних дебатів. Майбутнє не є чи одне, чи інше - це змішування обох. Швидка програмована L1, спарена з набором спеціалізованих для додатків rollups, які масштабують виконання разом з L1.

Переваги змішаного (або, як ми його називаємо, взаємодія) підходу стають очевидними, коли ви дивитесь на Solana. За останні шість місяців команди почали будувати свої власні "мережеві розширення", які встановлюються на Solana. Але зачекайте - чи не повинен Solana обробляти масштаб самостійно? Чи не це їхня вся брендовість?

Бачите, rollups - це не лише масштабування виконання. Це також про суверенітет - надання будівникам повного контролю над їхнім середовищем виконання. Більше TPS, нижчі газові комісії (чи можливо ж жодних), контроль над порядком виконання та обробкою tx, та власність над цілим економічним стеком їх бізнесу - лише кілька прикладів.

На цьому етапі очевидно: ролапи необхідні, і вони тут, щоб залишитися.

Існування Initia будується навколо цієї тези. Він спеціально створений для розміщення процвітаючої екосистеми переплетених ролапів 🪢 , відомої як Minitias.

Майбутнє сплетено разом

Initia розроблена, щоб стати домівкою для тисяч Minitias, які працюють разом в унісон, щоб забезпечити різноманітні, потужні та унікальні програми завдяки цілісному досвіду, який переплітається з дизайном.

До цього часу існували два види екосистем. Одні, спеціально побудовані для світу взаємопов'язаних ланцюгів (Cosmos), а інші - ті, хто зробив ставку на роллапи після факту (Ethereum, а тепер Solano). Кожен з них знайшов певну міру успіху, але не без своїх вад, які є невичерпними уроками для побудови нової моделі L1.

Initia зводить ці екстремуми, це L1, призначений для підтримки мережі взаємопов'язаних L2, які забезпечують Minitia builders все необхідне для успіху. Він був побудований з першого дня, щоб уникнути безладної середини, маючи власні дизайни та задавши просте питання - що насправді хочуть від хабу L2?

На Initia rollups просто належать. Існує повна економічна взаємодія між L1 та L2 через@initiafdn/introducing-vip-5fe1a0177055">Initia VIP, набір продуктів дійсно чіткий, а технологія створена з метою забезпечення Minitias мають оракули, мости, ліквідність, сумісність, власні стабільні монети та інше прямо з Gate. Розплетений стек дозволяє командам легко розгортати Minitia з будь-якою віртуальною машиною, яку вони оберуть — EVM, MoveVM або CosmWasm.

Зараз, який найважливіший компонент, який дозволяє роллапи на Initia? Interwoven Stack - оптимістична рамка роллапу, побудована з нуля для Cosmos SDK.

Готові побачити магію під капотом? Давайте зануримося в структуру.

Взаємопроникливий стек

Фреймворк оптимистичного ролапу на Initia складається з трьох компонентів, які ... ви вгадали, дуже взаємопов'язані 😛

OPHost, OPChild та OPinit Bots прекрасно поєднуються, як три частини головоломки, щоб створити колектив, який живить кожну Minita.

OPHost та OPChild - це модулі Cosmos SDK, які формують основу Стеку, вони є частинами, які працюють на ланцюжку. Оскільки Стек OPinit реалізований на рівні ланцюжка, а не на рівні розумного контракту певної віртуальної машини, це дозволило нам побудувати підтримку для кількох віртуальних машин і надати розробникам Minitia свободу вибору.

На Initia rollups є громадянами першого класу, побудованими безпосередньо в ланцюгу. Це дало нам можливість гнучко налаштовувати реалізації та забезпечити переважний досвід.

Модуль OPHost знаходиться на Initia (L1). Він відповідає за те, щоб служити базою для всіх Minitias, які оселяються на Initia. Ключові завдання OPHost включають:

  • Управління оптимістичним мостом (між L1 та L2) та активами, які проходять через нього.
  • Нагляд за завершенням вихідних пропозицій від Minitias.
  • Діючи як судова зала для викликача та пропонента, щоб обговорити свою справу.

OPChild, з іншого боку, живе на кожному Minitia. Це схоже на серцебиття кожного роллапа, він відповідальний за:

  • Управління операторами rollup.
  • Виконання повідомлень, отриманих з L1.
  • Оновлення цінових стрічок оракула.
  • Керування виведенням токенів на L1.

OPHost & OPChild разом утворюють Оптимістичний міст для кожної Minitia. Один OPHost на Initia виступає як кінцева точка L1 для кількох модулів OPChild на багатьох Minitias.

Важливо зазначити, що для ролапів місцевий міст робить більше, ніж пересилання повідомлень, він служить головним офісом ролапу на L1. Дві різні системи згоди не знають про станові машини одна іншої, але міст ролапу діє як джерело правди ролапу на L1, надсилаючи корені стану або подібний вихід, що може бути перевірений на відповідність стану ролапу, щоб забезпечити правильність. Це те, чому L1 часто називають шаром врегулювання.

Але тепер ви можете подумати — «Що пов'язує OPHost і OPChild? Ретранслятори?» ні, це те, що роблять боти OPinit! Як продовження вищесказаного, дві різні системи консенсусу не можуть спілкуватися одна з одною без офчейн-процесу, який допомагає їм, діючи як фізична сполучна ланка між їхніми ізольованими державними машинами.

OPinit Bots - це процеси позаланцюгових мереж, які обробляють критичні дії між Initia та Minitias. Існує два різних боти - виконавець та викликач. У кінцевому підсумку, обидва боти разом відповідають за:

  • Виконання токенів.
  • Подання пропозицій щодо виведення результатів на початковий рівень Initia L1.
  • Подання пакету транзакцій до Celestia для доступності даних (DA).
  • Передача оновлень цінового каналу оракулу до Minitias.

У решті статті ми заглибимося у те, як конкретні функції реалізовані в The Interwoven Stack, і це повинно дати вам чітку картину того, як усі частини працюють разом!

Переказ токенів на Оптимістичному мосту

Одним з найважливіших аспектів роллапу є те, що він успадковує безпеку L1, на якому він вирішується.

Ти знаєш, що ще цікаво? Внутрішній міст між L1 та rollup зазвичай є найбільш безпечним способом передачі активів між ними. Це тому, що використання внутрішнього моста не викликає жодних додаткових довірчих припущень — ти довіряєш тільки двом ланцюгам, що взаємодіють.

Перш ніж ми зануримося в роботу переказів, давайте звернемося до слона в кімнаті.

Чому не IBC?

Беручи до уваги той факт, що всі ланцюжки на The Interwoven Stack будуються за допомогою Cosmos SDK - чому нативний міст просто не може бути каналом IBC?

Ну, це через те, що перекази IBC є миттєвими за своєю природою, і це не працює з припущеннями про довіру нашого протоколу. Одного прекрасного дня злоякісний оператор Minitia може прокинутися і вирішити злоякісно вставити транзакції, які змінюють баланси INIT на L2 та зняти всі INIT на їхньому Minitia назад на L1. Ми не хочемо цього, подібна помилка була б катастрофічною.

Оскільки виведення на Initia через Оптимістичний міст мають затримку 7 днів, під час якої Челенджер може викликати виклик та скасувати виведення у разі виявлення його зловмисності.

На Initia ми все ще хочемо забезпечити безшовний UX переміщення активів між Mintia та Initia L1. Щоб забезпечити швидкі перекази з L2s, ми побудували безпечне та спеціалізоване рішення під назвою Minitswap, ви можете дізнатися більше про це тут: @initiafdn/minitswap-l2-to-l1-withdrawals-in-seconds-not-days-e6de645879b3">Minitswap — L2 до L1 Виводи в секунди, а не в дні.

Депозити токенів (L1 → L2)

Депозит токенів з Initia на Minitia майже миттєвий. Ось як це працює:

  1. Користувач подає транзакцію на депозит на Initia, яка блокує їх токени на L1 та спричиняє подію депозиту з модуля OPHost.
  2. Бот Executor OPinit постійно слухає нові події на Initia, і коли він бачить подію initiate_token_deposit: \
    2.a — Виконавець конструює відповідне повідомлення FinalizeTokenDeposit і відправляє його в Minitia.
  3. Отримавши повідомлення, Minitia мінтує відповідні токени на L2 та відправляє їх користувачеві.

Досить прямолінійно, чи не правда? Виконує роботу без втручання в безпеку!

Виведення токенів (L2 → L1)

Виведення коштів - це те, де речі стають трохи складнішими. Хоча поповнення з L1 до L2 є простим, припущення, що Minitias завжди може довіряти L1, не працює в зворотному напрямку.

Ось чому: Initia захищена децентралізованим набором перевіряючих з економічним стейком, але Minitias часто працюють від одного або невеликої кількості операторів, причому без економічного стейку. Тому, коли Minitia ініціює виведення на L1, вона повинна довести, що не діє зловмисно.

Ось як працює виведення:

  1. Користувач подає транзакцію на виведення коштів на Minitia, що призводить до спалення їх жетонів модулем OPChild і випуску події ініціалізації зняття токенів.
  2. Знову, Виконавець прислуховується до всіх блоків на L2. Він сприймає подію та зберігає запит на виведення, але не передає його негайно, Бот чекає на подання контрольної точки.
  3. Після досягнення контрольної точки подання виконавець:
    3.a — Завантажує всі запити на виведення коштів у заданому інтервалі.
    3.b — Генерує відсортоване дерево Меркля виведень.
    3.c — Створює вихід L2 з коренем Меркла дерева.
    3.d — Подає вихід на OPHost на L1.
  4. Виведення потім потрапляє в період виведення, де бот Challenger OPinit може викликати виведення та скасувати його, якщо буде виявлено щось підозріле.
  5. Якщо термін виведення мине без будь-яких викликів, користувач може викликати finalize_withdrawal на Initia, щоб розблокувати свої токени.
    5.a — Ця функція приймає запит на виведення та доказ для нього.
    5.b — Перевіряє подане доказове засіб.
    5.c - І якщо все пройшло добре, відправте токени користувачу!

Виведення коштів триває трохи часу, але, хей, це компроміс між забезпеченням безпеки! Але, для забезпечення кращого користувацького досвіду для користувачів Interwoven, Initia також побудувала@initiafdn/minitswap-l2-to-l1-withdrawals-in-seconds-not-days-e6de645879b3">Minitswap — який дозволяє миттєві виведення з досить непоганими гарантіями безпеки за допомогою IBC та моста OPinit.

Тепер ви знаєте, як працює виведення коштів, але механізм виклику все ще залишається чорною скринькою — давайте зануримося в нього далі!

Що стається, коли Мінітія бреше? 🤥

Таким чином, ми вивчили у попередньому розділі, що Minitia може потенційно брехати. Саме тому існує період виведення - щоб запобігти шахрайській поведінці, яка може вкрасти токени на мосту OPinit.

Але хто відповідальний за припинення шахрайського зняття? Це завдання бота Challenger OPinit.

  1. Челенджер постійно контролює виводи L2, які надсилаються на L1.
  2. При кожному поданні він отримує вихідні дані від Initia та незалежно обчислює вихідні дані на основі стану Minitia.
  3. Якщо надісланий вихідний результат на Initia та обчислений вихідний результат Challenger не збігаються, Challenger видаляє пропозицію виходу, відправивши повідомлення DeleteOutput. Тільки Challenger має право викликати цю функцію.

Відкати синхронізації станів за допомогою Celestia ✨

Так, але коли ви видаляєте недійсну пропозицію, це означає, що поточний стан rollup тепер недійсний? Так, і тому у нас є добре розроблений механізм відкату.

Після успішного виклику вузол Minitia може синхронізувати стан з даними, які раніше були розміщені в Celestia, оскільки всі пакети транзакцій роллапу розміщуються в Celestia для DA, що дуже зручно у разі необхідності відкату.

Для забезпечення цілісності стану Minitia та впевненості в тому, що Executor не діє зловмисно, дві Боти - Executor та Challenger - розроблені як окремі сутності.

Але зачекайте, чи це не надає величезної влади Викликачеві? Що, якщо Викликач буде діяти зловмисно і почне видаляти дійсні виходи? Так.

Щоб цього уникнути, Initia має систему контролю та балансів, що обробляється за допомогою управління L1.

Як Передовик, так і Пропозер (той, хто подає результат) можуть бути замінені за допомогою пропозиції щодо управління, якщо вони діють зловісно. Для Передовика зловісна поведінка означає видалення дійсних результатів. Для Пропозера це означає подання недійсних результатів.

Коли створюється пропозиція, валідатори L1 Initia голосують за неї, запускаючи власний вузол L2, щоб перевірити, хто має рацію і хто неправий. Ця система гарантує, що жодна окрема сутність не може цензурувати транзакції або перешкоджати потоку зняття коштів.

The Bells & Whistles 💫

Це не було б продуктом роботи Initia, якби ми просто задовольнились тим, що є нормою, не роблячи додаткового кроку.

Initia зробила це дуже просто, щоб побудувати свій власний rollup. Тепер багато з вас, можливо, знають, що для створення rollup потрібно набагато більше, ніж просто його розміщення. Як будівельник, вам потрібно об'єднати багато периферійної інфраструктури. Наприклад, індексатори, оракули, мости тощо.

Здогадайтеся що? Інтервовен-стек поставляється з усім необхідним заздалегідь. 🔥

Пропустити Підключення — Універсальний Оракул

З Пропустити, Initia може надавати швидкі та актуальні дані про ціни активів Initia та кожній Minitia, побудованій на The Interwoven Stack.

Connect - це законодавчий сервіс оракула, що працює від імплементаторів Initia для передачі оновлень цін на ланцюжок. Реалізація використовує дві нові функції, введені в Cosmos SDK версії 0.50: ABCI++іРозширення голосуванняякі дозволяють самим валідаторам надсилати довільні дані, які потім зберігаються на ланцюжку, щоб усунути можливість цензури оновлення цін зловживаючою стороною, заповнюючи блоки спамом.

Як тільки оновлення ціни знаходиться на ланцюжку, розробники можуть отримати до нього доступ через CLI, API або рівень смарт-контракту.

Але це ще не все. Ціни Connect передаються кожному Minitia на The Interwoven Stack, щоб вони мали легкий доступ до свіжих цін з коробки відразу в перший день.

Таким чином, Minitia не обтяжений запуском необхідної інфраструктури, їм також не потрібно знаходити постачальника стороннього оракула, укладати з ним угоду та витрачати ресурси на інтеграцію. Все це робиться для них!

Виклики контрактів міжланцюжкового зв'язку

Щоб бути по-справжньому переплетеним, повинні бути безпечні та ефективні способи спілкування між ланцюжками на Initia. Є кілька способів це зробити на розсуд розробника, один з них - через місткий гак на Оптимістичному Мосту. Місткі гачки схожі наIBC Гачкиу функціональності, які використовуються для того, щоб дозволити передачу токенів для ініціювання викликів контрактів. OPinit Bridge Hooks використовуються для ініціювання викликів контрактів разом з передачею активів, які були переброшені через міст OPinit.

Bridge Hooks на оновленні OPHost оновлюють метадані моста, а Hooks на OPChild дозволяють довільне виконання транзакцій на FinalizeTokenDeposit.

Ми побудували його таким чином, що він підтримує кілька віртуальних машин, чи то EVM, MoveVM, або CosmWasm, Hукі моста можуть виконувати довільні транзакції на основі поля даних у повідомленні.

Наприклад, це формат даних для EVM-ланцюгів

Enshrined Indexers

Minitias також мають вбудований індексатор, який автоматично індексує та зберігає всі відповідні дані на ланцюжку. Дані потім відкриваються через REST API, який можна використовувати для запиту історичних даних.

Токени за рахунком, інформація про NFT, операції за рахунком, ви називаєте це. Все вже вбудовано.

Індексація - одна з найбільших проблем при побудові додатків on-chain, і це точно робить багато важкої роботи! Запуск власного індексатора може бути як коштовним, так і незручним. За допомогою встановленого індексатора розробники можуть показувати баланс токенів, NFT, історію транзакцій та багато іншого, не запускаючи свій власний індексатор або отримуючи підтримку від стороннього індексатора.

Цей Відомий Індексатор також дозволяє готову підтримку для Initia Scan — блокчейн-дослідник Initia для L1 та кожного L2.

Висновок

Ну, було дуже цікаво зануритися в The Interwoven Stack. Це красиво спроектований кусок технології, який підтримує візію Interwoven від Initia. Створивши The Interwoven Stack як модулі Cosmos SDK, Initia передумовив SDK в стек для створення оптимістичних rollups, зберігаючи всі переваги Cosmos SDK - що досить круто.

Є так багато речей в The Interwoven Stack, які ми сьогодні не досліджували, я наполегливо раджу вамподивитися на кодову базуікодова база ботівщоб розуміти його більш глибоко.

Коли все сказано і зроблено, залишається одна істина: Initia – це те, до чого справді належать роллапи. З нуля Initia була побудована для процвітання Minitias. Переплетена екосистема вже започаткувала інновації з такими Minitias, як Чорнокрил, Contro, Чумацький Шлях, Інерція — Усі вони є новими ролапами для конкретних додатків, які будуть доступні для використання з першого дня! Всі вони стали можливими завдяки The Interwoven Stack.

Дякую заManan, Zon, і Sawitза внесок у цю статтю.

Відмова від відповідальності:

  1. Ця стаття передрукована з [середній], Усі авторські права належать оригінальному автору [Ініціа]. Якщо є заперечення проти цього передруку, будь ласка, зв'яжіться з Gate Learnкоманда, і вони негайно займуться цим.
  2. Відповідальність за відмову: погляди і думки, висловлені у цій статті, належать тільки автору і не становлять жодної інвестиційної поради.
  3. Переклади статті на інші мови виконує команда Gate Learn. Якщо не зазначено інше, копіювання, поширення або плагіат перекладених статей заборонено.

Initia: Interwoven Stack та модульний блокчейн

Розширений10/13/2024, 7:49:38 PM
Ця стаття знайомить з інтервованою стековою системою Initia, яка має на меті підтримку модульної екосистеми блокчейна, зокрема покращення масштабованості та суверенітету через оптимістичні скрутапи. Initia надає платформу L1, яка співпрацює з кількома Minitias, ці прикладно-специфічні скрутапи можуть незалежно керувати середовищами виконання, контролювати порядок транзакцій та оптимізувати комісії за газ. Завдяки модулям OPHost та OPChild, а також ботам OPinit, досягається безшовна взаємодія між L1 та L2, що забезпечує безпеку, гнучкість та ефективний переказ активів.

Криптовалютна екосистема змушена була адаптуватися до нової реальності — в ній з'явився Ініціа.

Як індустрія, нам довелося прийняти той факт, що один державний автомат не може масштабуватися, щоб відповідати амбіціям криптовалюти. Масштабування пропускної здатності, зберігаючи при цьому низькі витрати для користувачів та операторів, всі це при тому, що залишається прийнятним рівень децентралізації, це битва, яку майже неможливо виграти монолітичним підходом.

Реальність полягає в тому, що успіх чисто монолітних ланцюгів став контрарним поглядом. Входьте в дебати про модульність проти монолітності, які зайняли центральне місце раніше цього року. Але ось головне: немає жодних дебатів. Майбутнє не є чи одне, чи інше - це змішування обох. Швидка програмована L1, спарена з набором спеціалізованих для додатків rollups, які масштабують виконання разом з L1.

Переваги змішаного (або, як ми його називаємо, взаємодія) підходу стають очевидними, коли ви дивитесь на Solana. За останні шість місяців команди почали будувати свої власні "мережеві розширення", які встановлюються на Solana. Але зачекайте - чи не повинен Solana обробляти масштаб самостійно? Чи не це їхня вся брендовість?

Бачите, rollups - це не лише масштабування виконання. Це також про суверенітет - надання будівникам повного контролю над їхнім середовищем виконання. Більше TPS, нижчі газові комісії (чи можливо ж жодних), контроль над порядком виконання та обробкою tx, та власність над цілим економічним стеком їх бізнесу - лише кілька прикладів.

На цьому етапі очевидно: ролапи необхідні, і вони тут, щоб залишитися.

Існування Initia будується навколо цієї тези. Він спеціально створений для розміщення процвітаючої екосистеми переплетених ролапів 🪢 , відомої як Minitias.

Майбутнє сплетено разом

Initia розроблена, щоб стати домівкою для тисяч Minitias, які працюють разом в унісон, щоб забезпечити різноманітні, потужні та унікальні програми завдяки цілісному досвіду, який переплітається з дизайном.

До цього часу існували два види екосистем. Одні, спеціально побудовані для світу взаємопов'язаних ланцюгів (Cosmos), а інші - ті, хто зробив ставку на роллапи після факту (Ethereum, а тепер Solano). Кожен з них знайшов певну міру успіху, але не без своїх вад, які є невичерпними уроками для побудови нової моделі L1.

Initia зводить ці екстремуми, це L1, призначений для підтримки мережі взаємопов'язаних L2, які забезпечують Minitia builders все необхідне для успіху. Він був побудований з першого дня, щоб уникнути безладної середини, маючи власні дизайни та задавши просте питання - що насправді хочуть від хабу L2?

На Initia rollups просто належать. Існує повна економічна взаємодія між L1 та L2 через@initiafdn/introducing-vip-5fe1a0177055">Initia VIP, набір продуктів дійсно чіткий, а технологія створена з метою забезпечення Minitias мають оракули, мости, ліквідність, сумісність, власні стабільні монети та інше прямо з Gate. Розплетений стек дозволяє командам легко розгортати Minitia з будь-якою віртуальною машиною, яку вони оберуть — EVM, MoveVM або CosmWasm.

Зараз, який найважливіший компонент, який дозволяє роллапи на Initia? Interwoven Stack - оптимістична рамка роллапу, побудована з нуля для Cosmos SDK.

Готові побачити магію під капотом? Давайте зануримося в структуру.

Взаємопроникливий стек

Фреймворк оптимистичного ролапу на Initia складається з трьох компонентів, які ... ви вгадали, дуже взаємопов'язані 😛

OPHost, OPChild та OPinit Bots прекрасно поєднуються, як три частини головоломки, щоб створити колектив, який живить кожну Minita.

OPHost та OPChild - це модулі Cosmos SDK, які формують основу Стеку, вони є частинами, які працюють на ланцюжку. Оскільки Стек OPinit реалізований на рівні ланцюжка, а не на рівні розумного контракту певної віртуальної машини, це дозволило нам побудувати підтримку для кількох віртуальних машин і надати розробникам Minitia свободу вибору.

На Initia rollups є громадянами першого класу, побудованими безпосередньо в ланцюгу. Це дало нам можливість гнучко налаштовувати реалізації та забезпечити переважний досвід.

Модуль OPHost знаходиться на Initia (L1). Він відповідає за те, щоб служити базою для всіх Minitias, які оселяються на Initia. Ключові завдання OPHost включають:

  • Управління оптимістичним мостом (між L1 та L2) та активами, які проходять через нього.
  • Нагляд за завершенням вихідних пропозицій від Minitias.
  • Діючи як судова зала для викликача та пропонента, щоб обговорити свою справу.

OPChild, з іншого боку, живе на кожному Minitia. Це схоже на серцебиття кожного роллапа, він відповідальний за:

  • Управління операторами rollup.
  • Виконання повідомлень, отриманих з L1.
  • Оновлення цінових стрічок оракула.
  • Керування виведенням токенів на L1.

OPHost & OPChild разом утворюють Оптимістичний міст для кожної Minitia. Один OPHost на Initia виступає як кінцева точка L1 для кількох модулів OPChild на багатьох Minitias.

Важливо зазначити, що для ролапів місцевий міст робить більше, ніж пересилання повідомлень, він служить головним офісом ролапу на L1. Дві різні системи згоди не знають про станові машини одна іншої, але міст ролапу діє як джерело правди ролапу на L1, надсилаючи корені стану або подібний вихід, що може бути перевірений на відповідність стану ролапу, щоб забезпечити правильність. Це те, чому L1 часто називають шаром врегулювання.

Але тепер ви можете подумати — «Що пов'язує OPHost і OPChild? Ретранслятори?» ні, це те, що роблять боти OPinit! Як продовження вищесказаного, дві різні системи консенсусу не можуть спілкуватися одна з одною без офчейн-процесу, який допомагає їм, діючи як фізична сполучна ланка між їхніми ізольованими державними машинами.

OPinit Bots - це процеси позаланцюгових мереж, які обробляють критичні дії між Initia та Minitias. Існує два різних боти - виконавець та викликач. У кінцевому підсумку, обидва боти разом відповідають за:

  • Виконання токенів.
  • Подання пропозицій щодо виведення результатів на початковий рівень Initia L1.
  • Подання пакету транзакцій до Celestia для доступності даних (DA).
  • Передача оновлень цінового каналу оракулу до Minitias.

У решті статті ми заглибимося у те, як конкретні функції реалізовані в The Interwoven Stack, і це повинно дати вам чітку картину того, як усі частини працюють разом!

Переказ токенів на Оптимістичному мосту

Одним з найважливіших аспектів роллапу є те, що він успадковує безпеку L1, на якому він вирішується.

Ти знаєш, що ще цікаво? Внутрішній міст між L1 та rollup зазвичай є найбільш безпечним способом передачі активів між ними. Це тому, що використання внутрішнього моста не викликає жодних додаткових довірчих припущень — ти довіряєш тільки двом ланцюгам, що взаємодіють.

Перш ніж ми зануримося в роботу переказів, давайте звернемося до слона в кімнаті.

Чому не IBC?

Беручи до уваги той факт, що всі ланцюжки на The Interwoven Stack будуються за допомогою Cosmos SDK - чому нативний міст просто не може бути каналом IBC?

Ну, це через те, що перекази IBC є миттєвими за своєю природою, і це не працює з припущеннями про довіру нашого протоколу. Одного прекрасного дня злоякісний оператор Minitia може прокинутися і вирішити злоякісно вставити транзакції, які змінюють баланси INIT на L2 та зняти всі INIT на їхньому Minitia назад на L1. Ми не хочемо цього, подібна помилка була б катастрофічною.

Оскільки виведення на Initia через Оптимістичний міст мають затримку 7 днів, під час якої Челенджер може викликати виклик та скасувати виведення у разі виявлення його зловмисності.

На Initia ми все ще хочемо забезпечити безшовний UX переміщення активів між Mintia та Initia L1. Щоб забезпечити швидкі перекази з L2s, ми побудували безпечне та спеціалізоване рішення під назвою Minitswap, ви можете дізнатися більше про це тут: @initiafdn/minitswap-l2-to-l1-withdrawals-in-seconds-not-days-e6de645879b3">Minitswap — L2 до L1 Виводи в секунди, а не в дні.

Депозити токенів (L1 → L2)

Депозит токенів з Initia на Minitia майже миттєвий. Ось як це працює:

  1. Користувач подає транзакцію на депозит на Initia, яка блокує їх токени на L1 та спричиняє подію депозиту з модуля OPHost.
  2. Бот Executor OPinit постійно слухає нові події на Initia, і коли він бачить подію initiate_token_deposit: \
    2.a — Виконавець конструює відповідне повідомлення FinalizeTokenDeposit і відправляє його в Minitia.
  3. Отримавши повідомлення, Minitia мінтує відповідні токени на L2 та відправляє їх користувачеві.

Досить прямолінійно, чи не правда? Виконує роботу без втручання в безпеку!

Виведення токенів (L2 → L1)

Виведення коштів - це те, де речі стають трохи складнішими. Хоча поповнення з L1 до L2 є простим, припущення, що Minitias завжди може довіряти L1, не працює в зворотному напрямку.

Ось чому: Initia захищена децентралізованим набором перевіряючих з економічним стейком, але Minitias часто працюють від одного або невеликої кількості операторів, причому без економічного стейку. Тому, коли Minitia ініціює виведення на L1, вона повинна довести, що не діє зловмисно.

Ось як працює виведення:

  1. Користувач подає транзакцію на виведення коштів на Minitia, що призводить до спалення їх жетонів модулем OPChild і випуску події ініціалізації зняття токенів.
  2. Знову, Виконавець прислуховується до всіх блоків на L2. Він сприймає подію та зберігає запит на виведення, але не передає його негайно, Бот чекає на подання контрольної точки.
  3. Після досягнення контрольної точки подання виконавець:
    3.a — Завантажує всі запити на виведення коштів у заданому інтервалі.
    3.b — Генерує відсортоване дерево Меркля виведень.
    3.c — Створює вихід L2 з коренем Меркла дерева.
    3.d — Подає вихід на OPHost на L1.
  4. Виведення потім потрапляє в період виведення, де бот Challenger OPinit може викликати виведення та скасувати його, якщо буде виявлено щось підозріле.
  5. Якщо термін виведення мине без будь-яких викликів, користувач може викликати finalize_withdrawal на Initia, щоб розблокувати свої токени.
    5.a — Ця функція приймає запит на виведення та доказ для нього.
    5.b — Перевіряє подане доказове засіб.
    5.c - І якщо все пройшло добре, відправте токени користувачу!

Виведення коштів триває трохи часу, але, хей, це компроміс між забезпеченням безпеки! Але, для забезпечення кращого користувацького досвіду для користувачів Interwoven, Initia також побудувала@initiafdn/minitswap-l2-to-l1-withdrawals-in-seconds-not-days-e6de645879b3">Minitswap — який дозволяє миттєві виведення з досить непоганими гарантіями безпеки за допомогою IBC та моста OPinit.

Тепер ви знаєте, як працює виведення коштів, але механізм виклику все ще залишається чорною скринькою — давайте зануримося в нього далі!

Що стається, коли Мінітія бреше? 🤥

Таким чином, ми вивчили у попередньому розділі, що Minitia може потенційно брехати. Саме тому існує період виведення - щоб запобігти шахрайській поведінці, яка може вкрасти токени на мосту OPinit.

Але хто відповідальний за припинення шахрайського зняття? Це завдання бота Challenger OPinit.

  1. Челенджер постійно контролює виводи L2, які надсилаються на L1.
  2. При кожному поданні він отримує вихідні дані від Initia та незалежно обчислює вихідні дані на основі стану Minitia.
  3. Якщо надісланий вихідний результат на Initia та обчислений вихідний результат Challenger не збігаються, Challenger видаляє пропозицію виходу, відправивши повідомлення DeleteOutput. Тільки Challenger має право викликати цю функцію.

Відкати синхронізації станів за допомогою Celestia ✨

Так, але коли ви видаляєте недійсну пропозицію, це означає, що поточний стан rollup тепер недійсний? Так, і тому у нас є добре розроблений механізм відкату.

Після успішного виклику вузол Minitia може синхронізувати стан з даними, які раніше були розміщені в Celestia, оскільки всі пакети транзакцій роллапу розміщуються в Celestia для DA, що дуже зручно у разі необхідності відкату.

Для забезпечення цілісності стану Minitia та впевненості в тому, що Executor не діє зловмисно, дві Боти - Executor та Challenger - розроблені як окремі сутності.

Але зачекайте, чи це не надає величезної влади Викликачеві? Що, якщо Викликач буде діяти зловмисно і почне видаляти дійсні виходи? Так.

Щоб цього уникнути, Initia має систему контролю та балансів, що обробляється за допомогою управління L1.

Як Передовик, так і Пропозер (той, хто подає результат) можуть бути замінені за допомогою пропозиції щодо управління, якщо вони діють зловісно. Для Передовика зловісна поведінка означає видалення дійсних результатів. Для Пропозера це означає подання недійсних результатів.

Коли створюється пропозиція, валідатори L1 Initia голосують за неї, запускаючи власний вузол L2, щоб перевірити, хто має рацію і хто неправий. Ця система гарантує, що жодна окрема сутність не може цензурувати транзакції або перешкоджати потоку зняття коштів.

The Bells & Whistles 💫

Це не було б продуктом роботи Initia, якби ми просто задовольнились тим, що є нормою, не роблячи додаткового кроку.

Initia зробила це дуже просто, щоб побудувати свій власний rollup. Тепер багато з вас, можливо, знають, що для створення rollup потрібно набагато більше, ніж просто його розміщення. Як будівельник, вам потрібно об'єднати багато периферійної інфраструктури. Наприклад, індексатори, оракули, мости тощо.

Здогадайтеся що? Інтервовен-стек поставляється з усім необхідним заздалегідь. 🔥

Пропустити Підключення — Універсальний Оракул

З Пропустити, Initia може надавати швидкі та актуальні дані про ціни активів Initia та кожній Minitia, побудованій на The Interwoven Stack.

Connect - це законодавчий сервіс оракула, що працює від імплементаторів Initia для передачі оновлень цін на ланцюжок. Реалізація використовує дві нові функції, введені в Cosmos SDK версії 0.50: ABCI++іРозширення голосуванняякі дозволяють самим валідаторам надсилати довільні дані, які потім зберігаються на ланцюжку, щоб усунути можливість цензури оновлення цін зловживаючою стороною, заповнюючи блоки спамом.

Як тільки оновлення ціни знаходиться на ланцюжку, розробники можуть отримати до нього доступ через CLI, API або рівень смарт-контракту.

Але це ще не все. Ціни Connect передаються кожному Minitia на The Interwoven Stack, щоб вони мали легкий доступ до свіжих цін з коробки відразу в перший день.

Таким чином, Minitia не обтяжений запуском необхідної інфраструктури, їм також не потрібно знаходити постачальника стороннього оракула, укладати з ним угоду та витрачати ресурси на інтеграцію. Все це робиться для них!

Виклики контрактів міжланцюжкового зв'язку

Щоб бути по-справжньому переплетеним, повинні бути безпечні та ефективні способи спілкування між ланцюжками на Initia. Є кілька способів це зробити на розсуд розробника, один з них - через місткий гак на Оптимістичному Мосту. Місткі гачки схожі наIBC Гачкиу функціональності, які використовуються для того, щоб дозволити передачу токенів для ініціювання викликів контрактів. OPinit Bridge Hooks використовуються для ініціювання викликів контрактів разом з передачею активів, які були переброшені через міст OPinit.

Bridge Hooks на оновленні OPHost оновлюють метадані моста, а Hooks на OPChild дозволяють довільне виконання транзакцій на FinalizeTokenDeposit.

Ми побудували його таким чином, що він підтримує кілька віртуальних машин, чи то EVM, MoveVM, або CosmWasm, Hукі моста можуть виконувати довільні транзакції на основі поля даних у повідомленні.

Наприклад, це формат даних для EVM-ланцюгів

Enshrined Indexers

Minitias також мають вбудований індексатор, який автоматично індексує та зберігає всі відповідні дані на ланцюжку. Дані потім відкриваються через REST API, який можна використовувати для запиту історичних даних.

Токени за рахунком, інформація про NFT, операції за рахунком, ви називаєте це. Все вже вбудовано.

Індексація - одна з найбільших проблем при побудові додатків on-chain, і це точно робить багато важкої роботи! Запуск власного індексатора може бути як коштовним, так і незручним. За допомогою встановленого індексатора розробники можуть показувати баланс токенів, NFT, історію транзакцій та багато іншого, не запускаючи свій власний індексатор або отримуючи підтримку від стороннього індексатора.

Цей Відомий Індексатор також дозволяє готову підтримку для Initia Scan — блокчейн-дослідник Initia для L1 та кожного L2.

Висновок

Ну, було дуже цікаво зануритися в The Interwoven Stack. Це красиво спроектований кусок технології, який підтримує візію Interwoven від Initia. Створивши The Interwoven Stack як модулі Cosmos SDK, Initia передумовив SDK в стек для створення оптимістичних rollups, зберігаючи всі переваги Cosmos SDK - що досить круто.

Є так багато речей в The Interwoven Stack, які ми сьогодні не досліджували, я наполегливо раджу вамподивитися на кодову базуікодова база ботівщоб розуміти його більш глибоко.

Коли все сказано і зроблено, залишається одна істина: Initia – це те, до чого справді належать роллапи. З нуля Initia була побудована для процвітання Minitias. Переплетена екосистема вже започаткувала інновації з такими Minitias, як Чорнокрил, Contro, Чумацький Шлях, Інерція — Усі вони є новими ролапами для конкретних додатків, які будуть доступні для використання з першого дня! Всі вони стали можливими завдяки The Interwoven Stack.

Дякую заManan, Zon, і Sawitза внесок у цю статтю.

Відмова від відповідальності:

  1. Ця стаття передрукована з [середній], Усі авторські права належать оригінальному автору [Ініціа]. Якщо є заперечення проти цього передруку, будь ласка, зв'яжіться з Gate Learnкоманда, і вони негайно займуться цим.
  2. Відповідальність за відмову: погляди і думки, висловлені у цій статті, належать тільки автору і не становлять жодної інвестиційної поради.
  3. Переклади статті на інші мови виконує команда Gate Learn. Якщо не зазначено інше, копіювання, поширення або плагіат перекладених статей заборонено.
Розпочати зараз
Зареєструйтеся та отримайте ваучер на
$100
!