Autor: Initia

Compilat de: Deep Wave TechFlow

Ecosistemul criptomonedelor a trebuit să se adapteze noilor realități de dezvoltare și tocmai în acest mediu s-a născut Initia.

Noi, ca industrie, trebuie să recunoaștem că o singură mașină de stat nu poate îndeplini obiectivele ambițioase ale criptomonedei. În timp ce crește volumul tranzacțiilor, este, de asemenea, necesar să se mențină costuri scăzute pentru utilizatori și operatori și să se mențină un nivel rezonabil de descentralizare, ceea ce este aproape imposibil de realizat printr-o singură abordare.

De fapt, ideea că un singur lanț poate avea succes nu mai este curentă. La începutul acestui an, discuția despre modularitate vs. singurătate a devenit un subiect fierbinte. Dar iată chestia: nu este o alegere ori/sau. Direcția viitoare este o combinație a celor două: un blockchain de nivel 1 rapid și programabil (L1), cuplat cu o serie de pachete specifice aplicației, care pot scala capabilitățile de execuție împreună cu L1.

Când ne uităm la Solana, putem vedea clar beneficiile unei abordări hibride (noi o numim împletită). În ultima jumătate de an, multe echipe au început să își dezvolte propriile „extensii de rețea” personalizate pe Solana. Cu toate acestea, Solana nu este cunoscută pentru propriile capacități de scalare? Nu acesta este nucleul mărcii lor?

De fapt, acumularea înseamnă mult mai mult decât extinderea capacităților de execuție. Ele implică, de asemenea, suveranitate – oferind dezvoltatorilor control complet asupra mediului lor de execuție. De exemplu, TPS mai mare, taxe mai mici sau lipsite de gaz, control asupra ordinii și procesării tranzacțiilor și proprietatea deplină asupra modelului lor economic de afaceri.

În mod clar, rollup-urile au devenit o parte integrantă și vor continua să fie.

Initia există pe baza ideii că este construit special pentru a susține un ecosistem înfloritor de rollup întrepătruns numit Minitias.

Viitorul este împletit

Initia este conceput pentru a găzdui mii de Minitias care lucrează împreună pentru a oferi aplicații diverse, puternice și unice printr-o experiență de design organic. În prezent, există două tipuri de ecosisteme. Unul este construit pentru lumea lanțurilor interconectate (cum ar fi Cosmos), iar celălalt este un pariu în faza târziu pe rollup (cum ar fi Ethereum și acum Solano). Fiecare abordare a avut un oarecare succes, dar a avut și neajunsuri, iar aceste lecții au fost de neprețuit atunci când se construiesc noi modele L1.

Initia face o punte între aceste două extreme, fiind un design L1 care acceptă o rețea L2 interconectată, asigurând dezvoltatorilor Minitia tot ce le trebuie pentru a reuși. Încă de la început, Initia a evitat confuzia de la mijloc printr-o abordare clară a designului și a pus o întrebare simplă: De ce are nevoie de fapt L2 de la un hub?

Pe Initia, rollup-ul vine de la sine. Cu Initia VIP, există o aliniere economică deplină între L1 și L2, o suită de produse curate și o tehnologie special concepută pentru a se asigura că Minitias are oracole, punți, lichiditate, interoperabilitate și monede stabile native din prima zi și alte funcții. Stiva intercalată facilitează echipelor să implementeze un Minitia folosind orice mașină virtuală (VM) pe care o aleg, fie că este EVM, MoveVM sau CosmWasm.

Deci, care sunt componentele cheie care fac posibilă rollup-ul pe Initia? Răspunsul este Interweld Stack, un cadru Optimistic Rollup construit de la zero special pentru SDK-ul Cosmos. Vrei să afli secretele acestui cadru? Să săpăm puțin mai adânc.

Stiva de intersudare

Cadrul Optimistic Rollup al Initia constă din trei componente strâns cuplate: OPHost, OPChild și OPinit Bots.

Aceste trei se potrivesc ca trei piese ale unui puzzle, formând un întreg care oferă un sprijin puternic pentru fiecare Minita.

OPHost și OPChild sunt module ale SDK-ului Cosmos care formează partea centrală a stivei interconectate și rulează în lanț. Deoarece stiva OPinit este implementată la nivel de lanț, mai degrabă decât la nivel de contract inteligent care se bazează pe o anumită mașină virtuală (VM), acest lucru ne permite să acceptăm o varietate de VM, oferind dezvoltatorilor Minitia mai multă libertate de alegere.

Pe Initia, rollup-urile sunt tratate ca cetățeni de primă clasă pe lanț. Acest lucru ne oferă flexibilitatea de a ajusta detaliile de implementare, rezultând o experiență mai bună pentru utilizator.

Modulul OPHost este situat pe Initia (adică L1) și este responsabil pentru a servi drept bază pentru toate Minitia-urile care rulează pe Initia. Sarcinile principale ale OPHost includ:

  • Gestionați punțile optimiste (conectează L1 și L2) și activele implicate.

  • Responsabil cu validarea propunerilor de rezultate de la Minitias.

  • Acționați ca un arbitru între contestatori și propuneri pentru a rezolva disputele.

OPChild există în fiecare Minitia, la fel ca bătăile inimii fiecărui pachet. Responsabilitățile sale includ:

  • Operatori care gestionează pachetele de pachete

  • Executați mesajele din L1

  • Actualizați datele despre prețul Oracle

  • Gestionați retragerile de jetoane L1

OPHost și OPChild formează împreună puntea optimistă pentru fiecare Minitia. Un OPHost pe Initia servește ca punct final al L1, conectând mai multe module OPChild în Minitia.

Este important de reținut că pentru rollup, bridge-ul local nu este doar pentru mesagerie, este de fapt sediul pentru rollup pe L1. Deoarece două sisteme de consens diferite nu pot înțelege mașinile de stări ale celeilalte, împingerea de pachete devine adevărata bază pentru rollup-uri pe L1 pentru a asigura corectitudinea lor prin transmiterea rădăcinilor de stare sau a rezultatelor similare verificabile. Acesta este motivul pentru care L1 este adesea numit stratul de decontare.

S-ar putea să vă întrebați: „Ce conectează OPHost și OPChild este un repetitor?” Nu, exact pentru asta sunt OPinit Bots! Ca o extensie a punctului anterior, două sisteme de consens diferite nu pot comunica direct fără asistența unui proces în afara lanțului, deoarece procesul în afara lanțului acționează ca o conexiune fizică între mașinile lor separate de stare.

OPinit Bots sunt procese în afara lanțului responsabile pentru gestionarea operațiunilor cheie între Initia și Minitias. Ele sunt împărțite în două tipuri: Executor și Challenger. Pe scurt, acești doi roboți sunt responsabili în comun pentru următoarele sarcini:

  • Efectuați transferul de jetoane

  • Trimiteți propunerea de rezultate către Initia L1

  • Trimiteți loturi de tranzacții către Celestia pentru a asigura disponibilitatea datelor (DA)

  • Oferiți actualizări ale prețurilor Oracle către Minitias.

În restul acestui articol, vom analiza cum sunt implementate caracteristicile specifice în The Interwoven Stack, ceea ce vă va ajuta să înțelegeți mai clar modul în care piesele funcționează împreună!

Transfer de jetoane pe podul optimist

Una dintre cele mai critice caracteristici ale tehnologiei Rollup este capacitatea sa de a moșteni securitatea casei sale de decontare de la L1.

Știați? O punte locală între L1 și rollup este de obicei cea mai sigură modalitate de a transfera active. Acest lucru se datorează faptului că utilizarea unei punți locale nu introduce ipoteze suplimentare de încredere - doar ai încredere în ambele lanțuri.

Înainte de a discuta despre mecanismul de transfer, să abordăm mai întâi o întrebare evidentă:

De ce să nu folosiți Comunicarea Inter-Blockchain (IBC)?

În timp ce toate lanțurile de pe The Interwoven Stack sunt construite pe Cosmos SDK, podurile native nu servesc pur și simplu ca canale IBC. Acest lucru se datorează faptului că natura instantanee a transferurilor IBC este incompatibilă cu ipotezele de încredere ale protocolului nostru. Să presupunem că într-o zi, un operator Minitia rău intenționat decide să introducă o tranzacție rău intenționată, să modifice soldul INIT pe L2 și să retragă toate INIT de pe Minitia lui la L1. Nu putem accepta această situație deoarece o astfel de greșeală ar fi catastrofală.

Există o întârziere de 7 zile pentru retragerile către Initia prin podul optimist. În această perioadă, Challenger poate contesta și anula retragerile suspecte în cazul în care este detectat un comportament rău intenționat.

Pe Initia, dorim să oferim o experiență ușoară utilizatorului în timpul mișcării activelor între Mintia și Initia L1. În acest scop, am dezvoltat o soluție personalizată securizată numită Miniswap pentru a permite migrarea rapidă din L2. Puteți afla mai multe aici: Miniswap — retragerile de la L2 la L1 au loc în câteva secunde, nu în zile.

Depunere de jetoane (L1 → L2)

Depunerile de jetoane de la Initia la Minitia sunt aproape instantanee. Procesul este după cum urmează:

1. Utilizatorul trimite o tranzacție de depunere pe Initia, care își blochează Tokenul pe L1 și declanșează un eveniment de depunere din modulul OPHost.

2. Executorul OPinit Bot continuă să asculte evenimente noi pe Initia Când este detectat evenimentul initiate_token_deposit:

2.a — Executorul va construi un mesaj FinalizeTokenDeposit și îl va trimite Minitia.

3. După ce Minitia primește mesajul, va bate Tokenul corespunzător pe L2 și îl va trimite utilizatorului.

Acest proces este simplu și sigur, asigurând o lucrare fără probleme!

Urmează retragerea jetonului (L2 → L1).

Operațiunile de retragere sunt puțin mai complicate. În timp ce procesul de depunere de la L1 la L2 este relativ simplu, încrederea L1 în Minitias, la rândul său, nu poate fi stabilită cu ușurință.

Motivul este următorul: Initia este securizat de un grup de validatori descentralizați cu o miză financiară, în timp ce Minitias sunt de obicei gestionate de un singur operator sau de un număr mic de operatori fără nicio miză financiară. Prin urmare, atunci când Minitia inițiază o cerere de retragere către L1, trebuie să dovedească că nu a acționat cu răutate.

Procesul specific de retragere este următorul:

1. Utilizatorii trimit o tranzacție de retragere pe Minitia, determinând modulul OPChild să-și distrugă Tokenul și să declanșeze evenimentul initiate_token_withdrawal. În același timp, Executorul va asculta toate blocurile de pe L2. Când evenimentul este surprins, acesta stochează cererea de retragere, dar nu o livrează imediat, așteaptă în schimb depunerea punctului de control.

3. Când este atins punctul de control de comitere, Executorul efectuează următoarele operațiuni:

3.a — Colectați toate cererile de retragere în această perioadă de timp.

3.b — Generați un Merkle Tree sortat pentru a organiza aceste solicitări de retragere.

3.c — Creați o ieșire L2 care conține rădăcina arborelui Merkle.

3.d — Trimiteți această ieșire către OPHost pe L1.

4. Ulterior, retragerea intră într-o perioadă de revizuire. În acest timp, dacă Challenger OPinit Bot detectează ceva suspect, poate contesta retragerea și poate anula operațiunea.

5. Dacă nu are loc nicio provocare în timpul perioadei de revizuire, utilizatorii pot apela funcția finalize_withdrawal de pe Initia pentru a-și debloca Tokenul.

5.a — Această funcție primește o cerere de retragere și dovada corespunzătoare.

5.b — Verificați dacă dovada prezentată este valabilă.

5.c — Dacă verificarea trece, Tokenul va fi trimis utilizatorului!

În timp ce procesul de retragere durează ceva timp, acesta este un preț necesar de plătit pentru securitate. Cu toate acestea, pentru a îmbunătăți experiența utilizatorilor Interwoven, Initia a dezvoltat Miniswap. Utilizând IBC și OPinit Bridge, Miniswap este capabil să permită retrageri instantanee, oferind în același timp un nivel destul de ridicat de securitate.

Acum că aveți o idee despre cum funcționează retragerile, mecanica provocării este încă puțin neclară - vom aborda în continuare acest lucru.

Ce se întâmplă când Minitia încearcă să înșală?

În secțiunea anterioară, am menționat că Minitia poate înșela. Acesta este motivul pentru care sunt stabilite perioade de retragere, pentru a preveni furtul fraudulos de jetoane prin OPinit Bridge.

Deci, cine este responsabil pentru oprirea retragerilor frauduloase? Această sarcină este întreprinsă de Challenger OPinit Bot.

1. Challenger monitorizează continuu ieșirea L2 transmisă la L1.

2. La fiecare commit, primește rezultatul de la Initia și calculează rezultatul în sine pe baza stării Minitia.

3. Dacă rezultatul trimis pe Initia nu este în concordanță cu rezultatul calculat de Challenger, Challenger va șterge propunerea de ieșire prin trimiterea unui mesaj DeleteOutput. Această funcție poate fi apelată doar de Challenger.

În plus, puteți utiliza Celestia pentru derularea sincronizării stării.

Da, atunci când o propunere nevalidă este ștearsă, înseamnă că starea actuală a pachetului devine nevalidă? Într-adevăr, acesta este motivul pentru care avem un mecanism de rollback bine conceput.

După o provocare de succes, nodurile Minitia pot sincroniza starea din datele publicate anterior în Celestia, deoarece toate loturile de tranzacții agregate sunt publicate în Celestia pentru disponibilitatea datelor (DA), ceea ce este util dacă este necesară restaurarea.

Pentru a asigura integritatea statului Minitia si a impiedica Executorul sa efectueze operatiuni malitioase, cei doi Boti, Executor si Challenger, sunt proiectati ca entitati independente.

Cu toate acestea, îi dă acest lucru Challenger-ului prea multă putere? Ce se întâmplă dacă Challenger acționează cu răutate și începe să ștergă rezultatul valid?

Pentru a preveni acest lucru, Initia a stabilit un sistem de control și echilibru prin sistemul de guvernanță al L1.

Dacă Provocatorii și Proponerii (entitățile responsabile cu transmiterea rezultatelor) se comportă rău intenționat, aceștia pot fi înlocuiți prin propuneri de guvernare. Pentru Challenger, comportamentul rău intenționat înseamnă ștergerea rezultatelor valide pentru Proposer, înseamnă trimiterea rezultatelor nevalide;

Când sunt create propuneri de guvernare, validatorii L1 ai Initia votează prin rularea nodurilor L2 pentru a identifica cine s-a comportat inadecvat. Acest sistem asigură că nicio entitate nu poate cenzura tranzacțiile sau interfera cu procesul de retragere.

Cireasa de pe tort

Nu s-ar numi munca Initiei dacă ne-am mulțumi doar cu norma și nu am merge mai departe.

Initia face incredibil de ușor să construiți propriul pachet. După cum mulți dintre voi știți, construirea unui pachet este mai mult decât doar găzduirea acestuia.

Știați? Interwoven Stack oferă toate funcționalitățile de care aveți nevoie.

Skip Connect - serviciu Oracle încorporat

Skip permite Initia să furnizeze date rapide și actualizate despre prețul activelor pentru sine și pentru întregul Minitia construit pe Interwoven Stack.

Connect este un serviciu Oracle sidecar încorporat, condus de validatorii Initia, responsabil cu împingerea actualizărilor de preț în lanț. Această implementare profită de două caracteristici noi introduse în Cosmos SDK versiunea 0.50: ABCI++ și extensii de vot. Aceste caracteristici permit validatorilor să trimită date arbitrare și să le stocheze în lanț, împiedicând părțile rău intenționate să blocheze actualizările de preț prin completarea blocurilor cu spam.

Odată ce actualizările de preț sunt în lanț, dezvoltatorii le pot interoga prin interfața de linie de comandă (CLI), interfața de programare a aplicațiilor (API) sau la nivelul contractului inteligent.

În plus, prețurile Connect sunt livrate pentru fiecare Minitia din Interwoven Stack, asigurându-se că au acces ușor la cele mai recente prețuri din prima zi.

În acest fel, Minitia nu trebuie să suporte povara conducerii infrastructurii necesare și nici nu trebuie să găsească, să încheie acorduri cu sau să aloce resurse integrărilor cu furnizori de oracle terți. Totul este îngrijit pentru ei!

Apel de contract cross-chain

Pentru a realiza o interconectare adevărată, Initia are nevoie de o metodă de comunicare încrucișată sigură și eficientă. Dezvoltatorii au mai multe opțiuni, dintre care una este prin intermediul cârligelor de legătură pe Podul Optimistic. Funcția cârligului de punte este similară cu cârligul IBC, permițând declanșarea apelurilor contractuale atunci când se efectuează transferul de token. Cârligul bridge-ului OPinit este folosit pentru a declanșa apeluri contractuale în timp ce se transferă active prin OPinit Bridge.

Pe OPHost, hook-ul bridge-ului este responsabil pentru actualizarea metadatelor bridge-ului pe OPChild, hook-ul permite executarea arbitrară a tranzacțiilor în timpul fazei FinalizeTokenDeposit.

Am proiectat sistemul pentru a suporta mai multe mașini virtuale, așa că fie că este EVM, MoveVM sau CosmWasm, cârligul bridge este capabil să efectueze tranzacții arbitrare pe baza câmpurilor de date din mesaj.

De exemplu, acesta este formatul de date potrivit pentru lanțurile EVM.

Indexator încorporat

Minitia vine cu un indexator încorporat care indexează și stochează automat toate datele relevante din lanț. Prin intermediul API-ului REST, aceste date pot fi accesate pentru a interoga istoricul.

Fie că este vorba despre Tokenul contului, informațiile NFT sau înregistrările tranzacțiilor, toate aceste funcții sunt deja încorporate.

Indexarea este o dificultate majoră atunci când construiești aplicații în lanț, iar acest indexator încorporat simplifică foarte mult procesul! Rularea propriului indexator este adesea costisitoare și greoaie. Cu acest indexator încorporat, dezvoltatorii pot afișa informații precum soldul tokenului, NFT și istoricul tranzacțiilor fără a-și construi propriul sau a se baza pe indexatori terți.

Acest indexator încorporat oferă, de asemenea, asistență imediată pentru Initia Scan, un browser bloc pentru L1 și fiecare L2.

în concluzie

Săpat mai adânc în The Interwoven Stack a fost o experiență foarte plăcută. Această tehnologie este frumos proiectată și susține viziunea Interwoven a Initia. Prin construirea Interwoven Stack ca modul Cosmos SDK, Initia a transformat cu succes SDK-ul într-o stivă tehnologică pentru construirea de agregari optimiste, păstrând în același timp toate beneficiile SDK-ului Cosmos, ceea ce este remarcabil.

Există multe mai multe în The Interwoven Stack în care nu am putut să ne aprofundăm astăzi și vă recomand cu căldură să verificați baza sa de cod, precum și baza de cod robotică asociată, pentru a obține o înțelegere mai profundă a acestei tehnologii.

În cele din urmă, un lucru care rămâne constant este că Initia este locul în care tehnologia de agregare ar trebui cu adevărat. Initia a fost conceput încă de la început pentru dezvoltarea Minitias. Ecosistemul Interwoven declanșează deja inovații, iar Minitias precum Blackwing, Control, MilkyWay și Inertia sunt colecții noi specifice aplicației, care vor fi disponibile în prima zi! Toate aceste inovații sunt alimentate de The Interwoven Stack.