Un ecosistem centrat pe L2 se fragmentează într-un adevărat sens tehnic.

Scris de: Vitalik Buterin

Compilat de: Peng Sun, Foresight News

În urmă cu doi ani și jumătate, am menționat în articolul „Endgame” că diferitele căi de dezvoltare ale blockchain-ului în viitor arată foarte asemănătoare, cel puțin din punct de vedere tehnic. În ambele cazuri, există un număr mare de tranzacții în lanț, iar procesarea acestor tranzacții necesită: (1) multă calcule (2) multă lățime de bandă a datelor; Nodurile obișnuite Ethereum (cum ar fi nodul de arhivă reth de 2 TB care rulează acum pe computerul meu), chiar și cu performanțe puternice de inginerie software și arbori Verkle, nu sunt suficiente pentru a verifica direct cantitatea uriașă de date și calcule. În schimb, atât în ​​schemele „Sharding L1”, cât și în schemele centrate pe Rollup, ZK-SNARK este utilizat pentru a verifica calculele și DAS este utilizat pentru a verifica disponibilitatea datelor. Fie că este vorba de sharding L2 sau Rollup, DAS este același, iar tehnologia ZK-SNARK este aceeași. Ambele sunt un cod de contract inteligent și o funcție a protocolului. Într-un adevărat sens tehnic, Ethereum este sharding, iar Rollup este sharding.

Acest lucru ridică în mod firesc întrebarea: Care este diferența dintre cele două? Una dintre ele este că consecințele vulnerabilităților codului sunt diferite: în Rollup, jetoanele vor fi furate în sharding, consensul se va rupe. Dar mă aștept ca, pe măsură ce protocolul se stabilizează și tehnicile formale de verificare se îmbunătățesc, impactul vulnerabilităților codului va deveni din ce în ce mai mic. Deci, ce alte diferențe există între aceste două opțiuni potențial pe termen lung?

Diversitate în mediile de execuție

O idee pe care am discutat-o ​​pe scurt în Ethereum în 2019 a fost mediile de execuție. În esență, Ethereum va avea „zone” diferite care pot avea reguli diferite pentru conturi (inclusiv metode complet diferite precum UTXO), cum funcționează mașina virtuală și alte funcții. Acest lucru permite o diversitate de metode în diferite părți ale stivei, ceea ce ar fi dificil de realizat dacă Ethereum ar încerca să reunească mai multe funcții într-una singură.

În cele din urmă, am abandonat unele dintre planurile mai ambițioase și am păstrat doar EVM-ul. Cu toate acestea, se poate spune că Ethereum L2 (inclusiv rollup-uri, valdiumuri și plasme) funcționează în cele din urmă ca mediu de execuție. În prezent, ne concentrăm adesea pe echivalentul EVM L2, dar ignorăm diversitatea adusă de multe alte metode:

  • Arbitrum Stylus, care adaugă un al doilea oracol bazat pe WASM pe lângă EVM;

  • Fuel, care folosește o arhitectură bazată pe UTXO similară cu Bitcoin (dar cu mai multe caracteristici);

  • Aztec, care introduce un nou limbaj și paradigmă de programare concepute în jurul unor contracte inteligente care păstrează confidențialitatea bazate pe ZK-SNARK.

Arhitectură bazată pe UTXO, sursă: documentație de combustibil

Putem încerca să construim EVM într-o super-mașină virtuală care să acopere toate paradigmele posibile, dar acest lucru va reduce mult eficiența fiecărei funcții. Este mai bine să lăsăm aceste platforme să-și facă lucrurile profesionale.

Compensație de securitate: scalare și viteza tranzacției

Ethereum L1 oferă securitate foarte puternică. Dacă blocul final de pe L1 conține anumite date, atunci întregul consens (inclusiv consensul social în cazuri extreme) va lucra din greu pentru a se asigura că aceste date nu vor fi modificate și că orice execuție declanșată de aceste date nu va fi inversată au acces la date. Pentru a obține această garanție de securitate, Ethereum L1 este dispus să accepte un cost ridicat. La momentul redactării acestui articol, taxele de tranzacție sunt relativ mici: Layer2 percepe mai puțin de 1 cent pe tranzacție și chiar și pe L1, un transfer de bază ETH este mai mic de 1 USD. Dacă tehnologia avansează suficient de repede și creșterea spațiului disponibil în bloc ține pasul cu cererea, atunci aceste taxe pot rămâne scăzute în viitor, dar este posibil să nu fie așa. Pentru multe aplicații non-financiare, cum ar fi rețelele sociale sau jocurile de noroc, chiar și 0,01 USD per tranzacție este prea mare.

Dar rețelele sociale și jocurile de noroc nu necesită același model de securitate ca L1. Nu contează dacă pentru un milion de dolari cineva își poate restabili recordul de pierdere a unui joc de șah sau poate face ca unul dintre tweet-urile tale să pară că a fost postat la trei zile după ce a fost postat efectiv. Prin urmare, aceste aplicații nu ar trebui să plătească aceleași costuri de securitate. Schemele L2 realizează acest lucru prin susținerea unei game de metode de disponibilitate a datelor, de la pachete la plasmă la validium.

Diferite tipuri L2 sunt potrivite pentru diferite cazuri de utilizare. Mai multe de citit.

Un alt compromis apare în jurul problemei transferului de active de la L2 la L2. Prevăd că în următorii 5 până la 10 ani, toate Rollup-urile vor fi ZK Rollup-uri, iar sistemele de dovezi ultra-eficiente, cum ar fi Binius și Circle STARK cu căutări, cuplate cu un strat de agregare a probei, vor permite L2 să ofere rădăcina finală a stării la fiecare slot devine posibil. Dar, în prezent, putem doar să combinăm în mod complicat Optimistic Rollup și ZK Rollup și să folosim diferite ferestre de timp pentru probe. Dacă implementăm execution sharding în 2021, modelul de securitate pentru a menține shard-urile sincere va fi Optimitic Rollup, nu ZK, așa că L1 va trebui să gestioneze logica complexă anti-fraudă a sistemului on-chain, iar timpii de retragere vor fi de până la un săptămână , pentru a transfera active între cioburi. Dar, ca și erorile de cod, cred că această problemă este în cele din urmă temporară.

Viteza tranzacției este al treilea și mai permanent aspect al compromisului de securitate. Ethereum produce blocuri la fiecare 12 secunde și nu poate deveni mai rapid, altfel nivelul de centralizare ar fi prea mare. Cu toate acestea, mulți L2 explorează comprimarea timpilor de bloc la sute de milisecunde. 12 secunde nu este prea rău: în medie, utilizatorii trebuie să aștepte aproximativ 6-7 secunde după trimiterea unei tranzacții înainte de a fi incluși într-un bloc (și nu doar 6 secunde, deoarece blocul următor poate să nu le includă). Acesta este comparabil cu timpul de așteptare pe care trebuie să îl aștept când plătesc cu un card de credit. Cu toate acestea, multe aplicații necesită viteze mai mari, iar L2 poate oferi acest lucru.

Pentru a fi mai rapid, L2 are un mecanism de preconfirmare: validatorii proprii L2 promit digital să includă o tranzacție la un moment dat și sunt pedepsiți dacă tranzacția nu este inclusă. Mecanismul StakeSure duce acest mecanism și mai departe.

pre-confirmare L2

Acum putem încerca să implementăm toate aceste caracteristici în L1. L1 poate include un sistem de „pre-confirmare rapidă” și „confirmare finală lentă”. Poate conține diferite fragmente cu diferite niveluri de securitate. Cu toate acestea, acest lucru crește complexitatea protocolului. În plus, realizarea întregii lucrări în L1 riscă supraîncărcarea consensului, deoarece multe abordări la scară mai mare sau cu debit mai mare au riscuri de centralizare mai mari sau necesită forme mai puternice de „guvernare” dacă sunt realizate în L1. Impactul acestor cerințe mai puternice va fi se răspândesc în alte părți ale acordului. Ethereum poate evita în mare măsură aceste riscuri oferind un compromis cu L2.

Beneficiile stratului 2 pentru organizații și cultură

Imaginează-ți o țară împărțită în două, cu o jumătate devenind o țară capitalistă și cealaltă jumătate devenind o țară extrem de dominată de guvern (spre deosebire de ceea ce se întâmplă în realitate, să spunem în acest experiment de gândire că acesta nu este rezultatul vreunui război traumatizant, Dar într-o zi granița apare firesc și atât). În partea capitalistă, restaurantele sunt toate formate din diferite proprietăți descentralizate, blockchain și drepturi de vot. Într-o țară dominată de guvern, toate sunt ramuri ale guvernului, la fel ca departamentul de poliție. În prima zi, nu se vor schimba multe. Oamenii vor urma în mare măsură obiceiurile existente, iar ceea ce funcționează și ce nu depinde de realitățile tehnice, cum ar fi competențele de muncă și infrastructura. Cu toate acestea, după un an, vedeți schimbări uriașe, deoarece diferitele structuri de stimulare și control duc la schimbări uriașe de comportament, care afectează cine vine și rămâne, ce este construit, ce este întreținut și ce este abandonat.

Teoria organizării industriale are multe de spus despre aceste distincții: ea vorbește nu numai despre diferența dintre o economie administrată de guvern și o economie capitalistă, ci și despre o economie dominată de francize mari și o economie în care fiecare supermarket este condus de un întreprinzător independent. Cred că diferența dintre un ecosistem centrat pe L1 și un ecosistem centrat pe L2 este similară.

Există o mare problemă cu arhitectura „dezvoltatorii de bază gestionează totul”.

Ca ecosistem centrat pe L2, cred că principalele avantaje ale Ethereum sunt următoarele:

Deoarece Ethereum este un ecosistem centrat pe L2, aveți libertatea de a construi independent un sub-ecosistem cu propriile sale caracteristici unice, fiind, de asemenea, parte a Ethereum-ului mai mare.

Dacă doar construiești un client Ethereum, faci parte din Ethereum mai mare și, deși ai loc pentru inovație, nu este nici pe departe la fel de bun ca L2. Și dacă construiești un lanț complet independent, ai mult spațiu pentru creativitate, dar pierzi și beneficiile securității partajate și ale efectelor de rețea partajate. L2 este un echilibru bun.

Nu numai că oferă oportunități tehnice de a încerca noi medii de execuție și compromisuri de securitate care permit scalarea, flexibilitatea și viteza, dar oferă și un mecanism de stimulare care stimulează atât dezvoltatorii să construiască și să întrețină, cât și sprijinul comunității.

Faptul că fiecare L2 este izolat înseamnă, de asemenea, că implementarea de noi metode nu este permisă: nu este nevoie să convingi toți dezvoltatorii de bază că noua ta metodă este „sigură” pentru restul lanțului. Dacă L2 eșuează, aceasta este responsabilitatea ta. Oricine poate veni cu o idee ciudată (de exemplu, abordarea cu plasmă a lui Intmax) și chiar dacă dezvoltatorii de bază Ethereum nu acordă deloc atenție, pot continua să o construiască și, în cele din urmă, să o implementeze. Acesta nu este cazul caracteristicilor L1 și precompilării și chiar și în Ethereum, succesul sau eșecul dezvoltării L1 ajunge adesea să fie politic într-o măsură mai mare decât ne-am dori. Indiferent de ceea ce poate fi construit în teorie, diferitele stimulente create de un ecosistem centrat pe L1 și un ecosistem centrat pe L2 vor avea în cele din urmă un impact serios asupra a ceea ce este construit efectiv, a nivelului de calitate și a ordinii în care este construit. .

Cu ce ​​provocări se confruntă ecosistemul centrat pe L2 al Ethereum?

Ceva este îngrozitor în neregulă cu arhitectura L1 + L2.

Sursa imagine: Reddit

Această abordare centrată pe L2 se confruntă cu o provocare cheie cu care ecosistemele centrate pe L1 se confruntă rareori: coordonarea. Cu alte cuvinte, în timp ce Ethereum are multe L2, provocarea este cum să-l faci să se simtă în continuare ca „Ethereum” și să aibă efectele de rețea ale Ethereum, mai degrabă decât N lanțuri independente. Astăzi, această situație este nesatisfăcătoare din multe puncte de vedere:

  • Lanțurile încrucișate între L2 necesită de obicei o punte de lanț încrucișată centralizată, ceea ce este foarte complicat pentru utilizatorii obișnuiți. Dacă aveți jetoane pe Optimism, nu puteți lipi adresa Arbitrum a altcuiva în portofel pentru a trimite fonduri.

  • Suportul pentru portofelul cu contracte inteligente încrucișate nu este foarte bun atât pentru portofelele personale cu contracte inteligente, cât și pentru portofelele organizaționale (inclusiv pentru DAO). Dacă schimbați cheia pe un L2, trebuie să schimbați cheia unul pe celălalt L2.

  • Infrastructura de verificare descentralizată lipsește adesea. Ethereum începe în sfârșit să obțină clienți decente de lumină, cum ar fi Helios. Cu toate acestea, nu are sens dacă toată activitatea are loc în L2 și necesită propriul RPC centralizat. În principiu, nu este dificil să construiți un client ușor pentru L2 odată ce aveți antetul blocului Ethereum, dar în practică, se acordă prea puțină atenție acestui punct.

Comunitatea lucrează din greu pentru a îmbunătăți aceste trei domenii. Pentru schimbul de tokenuri încrucișate, standardul ERC-7683 este o soluție nouă, spre deosebire de „punțile încrucișate centralizate”, nu are noduri, tokenuri sau guvernanță centralizate fixe. Pentru conturile cross-chain, abordarea adoptată de majoritatea portofelelor este de a folosi mesaje rejucabile în cross-chain pentru a actualiza cheile pe termen scurt și pachetele de chei pe termen lung. Încep să apară clienți ușoare pentru L2, precum Beerus pentru Starknet. În plus, îmbunătățirile recente aduse experienței utilizatorului prin portofelele de ultimă generație au rezolvat probleme mai fundamentale, cum ar fi faptul că utilizatorii nu trebuie să schimbe manual rețelele pentru a accesa DApps.

Rabby are o viziune cuprinzătoare asupra soldurilor activelor cu mai multe lanțuri, ceea ce portofelele anterioare nu puteau face!

Dar este important să ne dăm seama că ecosistemele centrate pe L2 au greu să încerce să se coordoneze într-o oarecare măsură. Pentru că nu există un stimulent economic natural pentru ca un singur L2 să construiască infrastructura pentru coordonare: L2 la scară mică nu vor face acest lucru, pentru că vor să obțină doar o mică parte din beneficii și nici L2 la scară mare, pentru că pot beneficiază de întărirea propriilor efecte de rețea locală. Obține cât mai mult sau mai mult. Dacă fiecare L2 se gândește doar la sine și nimeni nu se gândește la modul în care se încadrează în sistemul mai larg Ethereum, atunci vom eșua, la fel ca utopia urbană din imaginile de la câteva paragrafe de mai sus.

Este greu de spus că există o soluție perfectă pentru această problemă. Tot ce pot spune este că ecosistemul trebuie să recunoască mai pe deplin faptul că infrastructura cross-L2 este la fel de mult un tip de infrastructură Ethereum ca și clienții L1, instrumentele de dezvoltare și limbajele de programare și, prin urmare, ar trebui să fie evaluate și finanțate. Avem breasla de protocol, poate avem nevoie de breasla de infrastructură de bază.

Rezuma

În diferite discuții publice, „L2” și „sharding” sunt adesea privite ca două strategii opuse pentru extinderea blockchain-ului. Cu toate acestea, când te uiți la tehnologia de bază, vei găsi o enigmă: metodele reale de scalare subiacente sunt exact aceleași. Fie că este vorba de sharding de date, de validatori de fraudă sau de validatori ZK-SNARK, sau de soluții care comunică prin „rollup-uri, shard-uri”, diferența principală este: cine este responsabil pentru construirea și actualizarea acestor componente și câtă autonomie au?

Un ecosistem centrat pe L2 este sharding într-un adevărat sens tehnic, dar în sharding vă puteți construi propriile shards cu propriile reguli. Aceasta este o creativitate foarte puternică, nelimitată și poate realiza o mulțime de inovații independente. Dar prezintă și câteva provocări cheie, în special în ceea ce privește coordonarea. Pentru ca un ecosistem centrat pe L2, cum ar fi Ethereum, să aibă succes, trebuie să înțeleagă aceste provocări și să le abordeze direct pentru a culege cât mai multe dintre beneficiile unui ecosistem centrat pe L1 și aproape de cele mai bune dintre ambele.