Introducereduction
Recent, piața s-a răcit semnificativ, determinând chiar și veteranii industriei să pună la îndoială scopul industriei. Aș dori să împărtășesc câteva dintre gândurile mele personale: Cred că multe dintre marile viziuni din trecut au fost „dezmințite” pentru că nu au fost niciodată coerente logic de la început.
Dapps non-financiare au încercat adesea să pună accentul pe descentralizare pentru a acoperi faptul că produsele în sine nu erau suficient de bune. Realitatea este că îmi cer să nu am încredere în Google, Twitter și YouTube și să cred în schimb că portofelele lor cu semnături multiple și configurațiile cu un singur server sunt sigure.
Multe viziuni nu au fost infirmate, dar nu au fost niciodată testate cu adevărat. Eu încă mai cred că, chiar dacă majoritatea viziunilor nu sunt mărețe, ele au un sens – ele pot avea nevoie doar de o fundație solidă care să le susțină. În cele din urmă, se poate oferi cel puțin una dintre descentralizare sau experiența utilizatorului comparabilă cu Web2.
La fel cum TON și Solana au fost cândva subestimate, dar acum îi ajung din urmă pe predecesorii lor în multe aspecte. Lanțurile publice care susțin aplicațiile au nevoie de inovare, care în fiecare ciclu determină progresul industriei. Prin urmare, astăzi vom explora un tip de lanț public care a fost mult timp trecut cu vederea – ecosistemul Move.
1. Mutare
Limbajul de programare Move a fost creat inițial pentru proiectul abandonat al Meta, Diem (numit inițial Libra), care urmărea să dezvolte o monedă stabilă mai stabilă și mai reglementată ca bază pentru viziunea sa metaversală.
Cu toate acestea, proiectul s-a confruntat cu o opoziție puternică și cu presiuni continue din partea autorităților de reglementare globale. Acestea s-au temut că amploarea proiectului Diem și vasta bază de utilizatori a Facebook ar putea amenința stabilitatea financiară, politica monetară și confidențialitatea datelor. Leadership-ul administrației Biden în aplicarea presiunii a forțat în cele din urmă Meta să abandoneze proiectul Diem.
Din fericire, nucleul lui Diem nu a fost aruncat. Diferite facțiuni separate de echipa inițială au continuat să exploreze și să dezvolte Move, care a evoluat în gemenii Move pe care îi cunoaștem astăzi – Sui și Aptos. În plus, alte proiecte precum Linera (un blockchain bazat pe Rust inspirat de Move) și recent promovata Movement sunt încă la început.
De ce a fost atât de semnificativ impactul rezidual al unui proiect abandonat? Move, ca limbaj de programare blockchain dezvoltat de o companie Web2 de top, are o bază solidă. Acesta a fost conceput cu accent pe rezolvarea problemelor de performanță și securitate predominante în limbajele blockchain existente, în special Solidity. Obiectivele sale de proiectare au fost de a crea un sistem de tip adaptat pentru gestionarea activelor și controlul accesului. Rezum punctele cheie după cum urmează:
- Securitate: Proiectarea lui Move acordă prioritate securității, folosind verificări statice de tip și gestionarea resurselor pentru a preveni vulnerabilitățile comune, cum ar fi erorile de depășire a limitelor și atacurile de reentranță. În comparație cu alte mașini virtuale pentru limbaje, Move suportă diverse caracteristici de securitate, după cum ilustrează comparația de mai jos de la Nansen.
- Compozabilitate: Move susține modularitatea și componibilitatea, permițând dezvoltatorilor să creeze și să combine cu ușurință diferite contracte inteligente pentru a construi aplicații mai complexe.
- Performanță: Mașina virtuală Move este optimizată (suportă procesarea paralelă, gestionarea memoriei, optimizări ale compilatorului) pentru a executa eficient contractele inteligente, îmbunătățind viteza și randamentul tranzacțiilor.
Într-o piață saturată de lanțuri modulare EVM, Move reprezintă o încercare curajoasă de a face ceva diferit. S-ar putea să fi întâlnit afirmații similare în prezentările multor proiecte de lanțuri publice, dar vă sugerez să experimentați direct pentru a înțelege cu adevărat aceste concepte.
2. Sui
2.1 Arhitectură
Fiind unul dintre gemenii Move, Sui a fost criticat la început pentru problemele legate de mecanismele de lansare a jetoanelor. Cu toate acestea, lăsând la o parte aceste probleme și concentrându-se exclusiv asupra proiectului în sine, Sui a demonstrat excelență atât în ceea ce privește performanța, cât și experiența utilizatorului, în special în sectorul jocurilor.
Acest succes este strâns legat de arhitectura sa, care a fost îmbunătățită în mod special pentru adoptarea generală. Iată o scurtă prezentare a inovațiilor arhitecturale ale Sui:
- Modelul de stocare a obiectelor: Această componentă este nucleul îmbunătățirilor aduse de Sui la Move. Modelul de stocare a obiectelor stochează datele ca obiecte individuale, fiecare având un identificator unic. Spre deosebire de sistemele tradiționale de baze de date, modelul de stocare a obiectelor nu are o structură de date fixă și poate stoca diverse tipuri de date, precum text, imagini, clipuri video și audio. Acest model permite execuția paralelă și scalarea orizontală (adăugarea de noduri pentru extinderea capacității de stocare). Proiectul lui Sui se învârte în jurul acestui model.
- Ordonarea cauzală: Asigură că tranzacțiile sunt executate într-o ordine care respectă relațiile cauzale, evitând conflictele și inconsistențele datelor. Acest lucru permite Sui să gestioneze volume mari de tranzacții simultane, menținând în același timp coerența datelor.
- Narwhal și Bullshark Consensus Engines: Sui utilizează Narwhal și Bullshark ca motoare de consens. Narwhal este responsabil de ordonarea și validarea tranzacțiilor prin menținerea unui fond local de tranzacții, sortarea tranzacțiilor pe baza relațiilor cauzale și difuzarea acestora. Bullshark, la primirea listei de tranzacții sortate de la Narwhal, votează lista folosind consensul Byzantine Fault Tolerance (BFT) pentru a se asigura că toate nodurile sunt de acord cu ordinea tranzacțiilor.
- Sui Move: Sui extinde limbajul Move prin adăugarea de noi caracteristici, cum ar fi suportul pentru NFT-uri, gestionarea activelor și stocarea datelor.
- Cadrul Sui: Sui oferă un cadru complet pentru a ajuta dezvoltatorii să creeze și să implementeze rapid aplicații, inclusiv instrumente și biblioteci precum Sui Wallet, Sui SDK și Sui CLI.
Arhitectura Sui îi permite să proceseze volume mari de tranzacții simultane, menținând în același timp o viteză ridicată, taxe reduse și securitate. De asemenea, limbajul Move și cadrul Sui oferă dezvoltatorilor instrumente puternice pentru a crea aplicații sigure, scalabile și ușor de utilizat.
2.2 Consensul
Lanțul de blocuri Sui utilizează un mecanism de consens numit Mysticeti, un consens Byzantine Fault Tolerant (BFT) proiectat pentru latență scăzută și randament ridicat.
Mysticeti permite validatorilor multipli să propună blocuri în paralel, utilizând pe deplin lățimea de bandă a rețelei și oferind rezistență la cenzură. În plus, protocolul necesită doar trei runde de mesaje pentru a finaliza un bloc din graful aciclic direcționat (DAG), corespunzând minimului teoretic, la fel ca pBFT.
Regulile de depunere permit votarea paralelă și certificarea liderului de bloc, reducând și mai mult latența mediană și de coadă. De asemenea, regulile de depunere tolerează liderii indisponibili fără a crește semnificativ latența.
Mysticeti a funcționat pe rețeaua de testare timp de trei luni înainte de lansarea rețelei principale Sui, prezentând rezultate semnificative, cum ar fi o reducere cu 80% a latenței. Acum, rețeaua Sui poate procesa zeci de mii de tranzacții pe secundă, cu o latență de la un capăt la altul mult sub o secundă.
Lanțul de blocuri Sui utilizează, de asemenea, un tip specific de consens Proof-of-Stake (PoS) denumit Delegated Proof-of-Stake (DPoS). Atunci când are loc o tranzacție care implică obiecte partajate (denumite tranzacții complexe), Sui utilizează motoarele de consens Narwhal și Bullshark menționate mai sus pentru ordonarea tranzacțiilor. Comparativ cu alte mecanisme de consens BFT, avantajele și dezavantajele lui Sui pot fi rezumate în șase puncte:
Avantaje:
- Latență redusă și randament ridicat: Protocolul Mysticeti reduce semnificativ latența consensului și crește randamentul rețelei prin propuneri de blocuri paralele și fluxuri de mesaje optimizate, permițând Sui să gestioneze zeci de mii de tranzacții pe secundă cu o latență end-to-end mult sub o secundă.
- Rezistența la cenzură: Protocolul Mysticeti permite validatorilor multipli să propună blocuri în paralel, îmbunătățind rezistența rețelei la cenzură.
- Toleranța la eșec a liderului: Regulile de depunere tolerează liderii indisponibili fără a crește semnificativ latența, alegând automat un nou lider care să preia conducerea atunci când nodul lider cedează.
Dezavantaje:
- Complexitate: Designul protocolului Mysticeti este relativ complex și necesită o înțelegere tehnică mai profundă pentru a înțelege pe deplin mecanismele sale operaționale.
- Securitate: Deși protocolul Mysticeti a funcționat bine pe rețeaua de testare, securitatea sa trebuie validată în continuare în aplicații reale.
- Scalabilitate: Scalabilitatea protocolului Mysticeti necesită observații suplimentare pentru a se asigura că se poate adapta la creșterea viitoare a dimensiunii rețelei și a volumului tranzacțiilor.
2.3 Conturi abstracte
Modelul de cont abstract al lui Sui (abstractizarea contului) este un mecanism care permite utilizatorilor să își gestioneze conturile și tranzacțiile într-un mod mai simplu și mai sigur, prin abstractizarea logicii contului și a tranzacției de protocolul blockchain de bază, atingând un nivel mai ridicat de gestionare a contului și de procesare a tranzacțiilor.
În modelul abstract de cont al lui Sui, conturile nu mai sunt simple perechi de chei publice-private, ci obiecte cu atribute și comportamente mai bogate. Fiecare cont are un identificator unic, numit ID de cont, care este asociat cu perechea de chei publice și private a contului.
Modelul de cont abstract al Sui include următoarele componente cheie:
- Obiectul contului: unitatea fundamentală a conturilor în Sui. Fiecare obiect cont are un ID de cont unic și conține atributele și comportamentele contului.
- Date de cont: Componenta principală a obiectului cont, care conține informații de bază despre cont, cum ar fi ID-ul contului și perechea de chei publice-private.
- Contextul tranzacției: unitatea de bază a tranzacțiilor în Sui, care conține informații legate de tranzacții, cum ar fi ID-ul tranzacției, ID-ul contului și datele tranzacției.
- Logica contului: Colecția de comportamente și reguli ale conturilor în Sui, care definește modul în care conturile efectuează tranzacții și își gestionează starea.
Procesul de gestionare a tranzacțiilor în modelul contului abstract al lui Sui implică următorii pași:
- Crearea tranzacției: Utilizatorii creează o tranzacție și o trimit către rețeaua Sui.
- Validarea tranzacției: Rețeaua Sui validează validitatea și integritatea tranzacției.
- Consultare cont: Rețeaua Sui găsește obiectul cont corespunzător pe baza ID-ului contului din tranzacție.
- Executarea logicii contului: Rețeaua Sui execută logica contului pentru a procesa tranzacția și a actualiza starea contului.
- Confirmarea tranzacției: Rețeaua Sui confirmă rezultatul tranzacției și îl scrie în blockchain.
În termeni simpli, modelul de cont abstract al lui Sui este un mecanism inovator care simplifică gestionarea conturilor și procesarea tranzacțiilor, făcând aplicațiile mai asemănătoare aplicațiilor.
2.4 Jocuri de noroc
Pentru ca un blockchain să iasă în evidență, trebuie mai întâi să construiască o fundație solidă. M-am referit mai devreme la ecosistemul Move ca la un experiment îndrăzneț din două motive principale.
În primul rând, într-o eră în care conceptul de modularizare devine larg răspândit, ecosistemele native Move (în special gemenii Move) reprezintă ultima încercare de soluții de nivel 1, mergând împotriva tendinței actuale.
Cu toate acestea, creșterea recentă a mai multor lanțuri eterogene poate dovedi că modularizarea nu este singurul răspuns.
În al doilea rând, reconstruirea unui blockchain folosind un nou limbaj de programare este similară cu încercarea de a crea un nou sistem de operare pentru a contesta iOS și Android pe piața actuală a smartphone-urilor – o cale inevitabil plină de provocări.
Dacă ecosistemul Move va străluci ca Solana în următorii ani depinde în mod semnificativ de direcția pe care o va alege. Răspunsul lui Sui la această provocare este jocul.
Jocurile sunt una dintre principalele porți de acces către Web3, însă majoritatea blockchain-urilor nu suportă bine jocurile. Acest lucru se datorează faptului că tehnologia blockchain a fost concepută inițial în jurul aplicațiilor financiare, iar arhitectura sa descentralizată are în mod inerent o performanță mai scăzută, ceea ce o face nepotrivită pentru jocuri.
Sui, însă, este diferit. Modelul său este potrivit atât pentru aplicațiile DeFi, cât și pentru aplicațiile nefinanciare, inclusiv jocurile. După cum am menționat anterior, în Sui, totul este un obiect. În Sui, obiectele pot deține alte obiecte, ceea ce face posibilă modelarea unor ierarhii complexe de active tipice în jocuri sau aplicații.
Imaginați-vă că jucați un joc în care un personaj erou are un inventar, iar acel inventar conține alte active digitale care aparțin personajului. Sui poate modela aceste ierarhii de date în moduri pe care alte blockchains nu le pot face. Acest lucru le oferă dezvoltatorilor posibilitatea de a crea aplicații fără a fi nevoiți să lucreze în jurul limitărilor inerente ale lanțului.
În plus, Sui colaborează activ cu giganții tradiționali ai Web2. Anul trecut, Sui a stabilit parteneriate cu trei dintre cei patru giganți sud-coreeni majori în domeniul jocurilor (Netmarble, NHN și NCSoft). Anul acesta, Sui s-a asociat cu TikTok pentru a dezvolta jocuri blockchain și proiecte SocialFi, aducând giganți tradiționali în spațiul Web3.
3. Aptos
Aptos, un alt blockchain Layer 1 bazat pe limbajul Move, se angajează, de asemenea, să construiască o infrastructură Web3 performantă și scalabilă. Designul său arhitectural prezintă multe asemănări cu Sui, dar introduce și unele caracteristici unice.
3.1 Arhitectură
- Design modular: Aptos adoptă o arhitectură modulară care permite dezvoltatorilor să dezvolte și să actualizeze în mod independent diferite module, sporind viteza și flexibilitatea dezvoltării.
- Motor de execuție paralelă (Block-STM): Spre deosebire de alte blockchains care necesită dependențe de date pre-declarate, motorul de execuție paralelă al Aptos poate procesa tranzacții în paralel fără cunoașterea prealabilă a locațiilor datelor, crescând astfel randamentul și reducând latența.
- Procesarea tranzacțiilor cu conducte: Aptos împarte procesarea tranzacțiilor în mai multe etape, cum ar fi propagarea, ordonarea metadatelor și stocarea loturilor, executând aceste etape în paralel prin pipelining pentru a maximiza randamentul și a minimiza latența.
- Limbaj de programare Move: Aptos utilizează limbajul de programare Move, concentrându-se mai degrabă pe rafinare decât pe inovație în comparație cu Sui. De exemplu, standardizează limbajul, introduce un suport de funcții mai robust și îmbunătățește capacitățile de personalizare.
- Sincronizarea flexibilă a stărilor: Permite nodurilor să aleagă diferite strategii de sincronizare a stării, cum ar fi sincronizarea întregului istoric sau doar a ultimei stări, îmbunătățind flexibilitatea nodurilor.
- Mecanismul de consens AptosBFT: AptosBFT este un mecanism de consens Byzantine Fault Tolerance utilizat de Aptos. Acesta optimizează comunicarea și sincronizarea între validatori pentru a îmbunătăți randamentul și a reduce latența. Comparativ cu Sui, care poate fi văzut ca o versiune îmbunătățită a DiemBFT, AptosBFT a făcut anumite progrese în ceea ce privește eficiența și recuperarea în caz de accident, astfel încât va fi menționat pe scurt aici.
Arhitectura Aptos îi permite să gestioneze un număr mare de tranzacții simultane, menținând în același timp o viteză ridicată, comisioane reduse și securitate. În plus, limbajul Move și cadrul Aptos oferă dezvoltatorilor instrumente puternice pentru a crea aplicații sigure, scalabile și ușor de utilizat.
3.2 Bloc-STM
Să aprofundăm inovația de bază a Aptos, motorul de execuție paralelă Block-STM:
Principiile de bază ale Block-STM:
- Execuție secvențială predefinită: Block-STM se bazează pe o secvență predefinită de tranzacții în cadrul unui bloc. Toate tranzacțiile trebuie să fie executate în această ordine pentru a asigura coerența stării finale.
- Optimistic Concurrency Control: Block-STM execută optimist tranzacțiile în paralel, presupunând că nu vor apărea conflicte. Această metodă de control se bazează pe presupunerea că conflictele sunt rare, permițând tranzacțiilor să acceseze și să modifice datele fără blocare. Aceasta presupune că probabilitatea apariției unor conflicte simultane este scăzută, astfel încât modificările pot continua, cu verificări ale conflictelor înainte de confirmarea finală.
- Structură de date cu mai multe versiuni: Pentru a susține controlul optimist al simultaneității, Block-STM utilizează o structură de date cu mai multe versiuni pentru a stoca datele. Fiecare operațiune de scriere creează o nouă versiune de date, în timp ce operațiunile de citire accesează versiunea de date corespunzătoare.
- Validare și reintroducere: După executarea unei tranzacții, Block-STM verifică dacă versiunile datelor pe care le-a citit sunt încă valide. Dacă validarea eșuează, indicând un conflict, tranzacția este marcată ca fiind invalidă și re-executată.
- Programarea colaborativă: Block-STM utilizează un programator colaborativ pentru a coordona executarea și sarcinile de validare ale diferitelor fire, maximizând paralelismul.
Fluxul de lucru Block-STM:
- Gruparea tranzacțiilor: Gruparea tranzacțiilor în cadrul unui bloc și atribuirea acestora la diferite fire de execuție paralelă.
- Execuție optimistă: Fiecare fir execută în mod optimist tranzacțiile care îi sunt atribuite și înregistrează setul de citire/scriere al fiecărei tranzacții.
- Validare: După ce un fir finalizează o tranzacție, acesta verifică dacă versiunile de date din setul său de citire sunt încă valabile.
- Reîncercați: Dacă validarea eșuează, indicând un conflict, tranzacția este marcată ca fiind invalidă și re-executată.
- Angajare: După ce toate tranzacțiile trec de validare, rezultatele lor sunt scrise în starea blockchain, finalizând tranzacția commit.
Avantajele Block-STM:
- Randament ridicat: Prin utilizarea controlului optimist al concurenței și a programării colaborative, Block-STM utilizează pe deplin procesoarele multi-core, obținând un randament ridicat.
- Latență redusă: Deoarece tranzacțiile pot fi executate în paralel, Block-STM reduce semnificativ timpul de confirmare a tranzacțiilor.
- Mecanismele predefinite de execuție secvențială și de validare ale Securitate: Block-STM asigură coerența și securitatea în starea finală.
Pe scurt, Block-STM este un motor eficient de execuție a tranzacțiilor paralele care combină controlul optimist al concurenței, structurile de date multi-versiune și programarea colaborativă pentru a maximiza randamentul blockchain, asigurând în același timp securitatea și corectitudinea.
3.3 Abstracția contului
Spre deosebire de abordarea mai directă a abstractizării conturilor de către Sui, Aptos suportă o dimensiune de abstractizare mai limitată și nu dispune de standarde predefinite specifice. Capacitățile sale de abstractizare a conturilor se manifestă în principal în următoarele domenii:
- Modular Account Management: Utilizează module Move pentru definirea și gestionarea conturilor, permițând dezvoltatorilor să creeze module personalizate pentru diferite tipuri de conturi și funcționalități.
- Gestionarea flexibilă a cheilor: Permite utilizatorilor să utilizeze chei diferite pentru operațiuni de cont diferite, cum ar fi utilizarea unei chei pentru semnarea tranzacțiilor și a alteia pentru gestionarea contului.
- Verificarea programabilă a tranzacțiilor: Dezvoltatorii pot defini logica personalizată de verificare a tranzacțiilor în modulele Move, cum ar fi semnăturile multiple sau limitele, pentru a răspunde diferitelor scenarii de aplicații.
3.4 Parteneriat cu Microsoft
În comparație cu Sui, care se concentrează mai mult pe dezvoltarea jocurilor, Aptos nu are un obiectiv specific de dezvoltare. Sloganul său este să fie blockchain-ul cel mai potrivit pentru producție.
Un aspect notabil este colaborarea continuă dintre Aptos și Microsoft, cu scopul de a integra tehnologia AI a Microsoft în blockchain. Primul lor produs de colaborare, Aptos Assistant, un asistent AI generativ construit pe rețeaua Aptos, este deja funcțional pe site-ul oficial. Alte produse AI vor fi anunțate în lunile următoare.
4. Ecosistemul Move
Deși Sui a înregistrat recent performanțe bune, ecosistemul Move necesită încă timp pentru a se maturiza în comparație cu lanțurile bazate pe EVM, Solana, Ton și alte lanțuri eterogene. În ciuda faptului că Sui și Aptos sunt în centrul atenției și fac progrese tehnologice, amploarea și activitatea globală a ecosistemului Move nu sunt încă la nivelul altor ecosisteme mature.
Numărul de dezvoltatori, tipurile de aplicații și baza de utilizatori au încă nevoie de timp pentru a crește. În ceea ce privește colaborările și operațiunile externe, atât Sui, cât și Aptos manifestă o puternică mentalitate Web2, lipsită de o parte din esența Web3, ceea ce a menținut proiectele lor relativ discrete în cadrul industriei.
Cu toate acestea, având în vedere potențialul ecosistemului Move, acesta este foarte promițător. Unii dezvoltatori recunosc deja valoarea viitoare a Move. După cum s-a menționat în prefață, există deja proiecte care încorporează Move în soluțiile Ethereum Layer 2. În viitor, ecosistemul Move ar putea străluci în cadrul spațiului ETH Layer 2. În prezent, accentul este pus pe modul de promovare în continuare a ecosistemului Move.