Fremtiden for Ethereum-opgraderinger, efter fusion [Del 2]

Kildeknude: 1596837
billede

Ethereums største opgradering nogensinde – overgangen til en proof-of-stake konsensusmekanisme – er lige rundt om hjørnet. Men selvom fusionen skulle tilføje sikkerhed og bæredygtighed, inkluderer den ikke sharding, den længe ventede metode til at skalere netværket. 

In Del I i vores samtale med Ethereum Foundation (EF)-forsker Danny Ryan, som har hjulpet med at koordinere opgraderingsprocessen, diskuterede vi, hvad fusionen er designet til at bringe med hensyn til sikkerhed og stabilitet.

I del II taler Ryan om opgraderinger, som brugere kan forvente i fremtiden, herunder danksharding, statsløse Ethereum og sikkerhedsopdateringer, der kæmper med stigningen i miner extractable value (MEV). Han forklarer også, hvordan denne årelange indsats resulterede i nye metoder til at undersøge og teste fremtidige opgraderinger.


Koordinering på et decentralt netværk

FREMTID: Du hentydede til muligheden for, at minearbejdere vil gaffel og fortsætte med at prøve at bruge den gamle kæde. Men for det meste har denne proces fået alle med. Hvad er din rolle i det som Ethereum Foundation-forsker? Hvordan bliver sådan et massivt træk koordineret?

DANNY RYAN: Jeg begyndte at blive involveret i proof-of-stake-ting omkring 2017, og selv da føltes det som en selvfølge. Det var fem år siden. Og Ethereum-samfundet har været meget villige til ikke at stagnere og til at gøre det rigtigt og konstruere en protokol, der ikke bare fungerer i dag, men som forhåbentlig fungerer i 100 år eller mere. 

Så tidligt i dets etos, da der var en anelse om, at bevis på indsats kunne udføres sikkert og bedre end bevis på arbejde, var folk meget begejstrede for det. Og når 2016, 2017 ruller rundt, er folk ikke kun begejstrede for det, men de er ængstelig for at det kan ske. Det ser ud til, at det er meget dybt i Ethereum-samfundets etos, at dette kommer til at ske.

Der er mere følsomme emner. Der er mindre forudsatte konklusioner, hvor EF, forskerholdet og de kunder, der er uden for EF, alle forsøger at komme med løsninger på problemer og holde tingene i gang. Nogle gange er løsningerne i en lidt mere gråzone - er det den rigtige løsning? Gør vi det nu? Gør vi det senere? Det ender med at blive hårdt, og EF forsøger at hjælpe med at koordinere i disse metoder, hjælpe med at lave noget forskning og udvikling for at hjælpe veterinære løsninger, hjælpe med at lette samtaler for at beslutte om tidslinjer og prioriteter og ordrer. 

Men i sidste ende, på de fleste punkter, er EF-dagsordenen at hjælpe med at gøre protokollen mere bæredygtig, sikker og skalerbar, mens den er decentraliseret - og ikke at sende en bestemt funktion over den anden. Så meget af det, vi fokuserer på, når det kommer til både teknisk arbejde og social koordinering, handler om at facilitere god information, god forskning og god dialog, så de mange deltagere, der er involveret i R&D, ingeniørarbejdet og samfundet kan holde ting bevæger sig og træffer beslutninger.

I de sidste fem år er der kommet mange flere stemmer til i fællesskabet, og efter fusionen vil det teoretisk set blive mere decentraliseret. Hvilke tanker har du om den fremtidige proces for opgraderinger? Er det muligt, at vi vil se på en slags lag-XNUMX DAO for at koordinere opgraderinger?

Som jeg forstår det, er Ethereum-samfundet ikke til on-chain-afstemning - eller nogen form for plutokratisk afstemning og opgraderinger - og at protokollen er den, brugerne beslutter at køre. Generelt er der bred konsensus. Nogle gange er der skisma - for eksempel Ethereum vs Ethereum classic. Men i sidste ende er det din ret og fællesskabets ret og brugernes rettigheder at finde ud af, hvilken software de vil køre. Generelt er vi enige, fordi folk forsøger at gøre Ethereum bedre, og der er ikke megen konflikt i nogle af de centrale ting der. 

Så jeg forventer ikke en formel teknisk mekanisme. Jeg forventer, at processen fortsætter med at vokse og ændre sig og udvikle sig i denne form for løs styring, hvor der er forskere, der er udviklere, der er medlemmer af samfundet, der er dapps og den slags. 

Jeg vil sige, at - og jeg tror, ​​du hentydede til det - der er flere og flere mennesker ved bordet, og det bliver sværere og sværere at træffe beslutninger og sende ting. Jeg tror personligt, at det er en funktion. Jeg tror, ​​at både ud fra et pålidelighedssynspunkt for applikationer og brugere og ud fra undgåelse af capture i det lange løb, at det nok er vigtigt for en stor del af Ethereum-protokollen at forbedre. Så selvom det bliver stadig sværere at være i forvaltningens malstrøm og prøve at sende, og nogle gange føles det som om, jeg prøver at løbe med en vægtet vest og vægte på mine ankler, og nu har jeg vægte på mine håndled, tror, ​​vi har nogle vigtige ting, der skal gøres i løbet af de næste par år. Men jeg tror, ​​det bliver sværere og sværere at få tingene gjort. Og det synes jeg er en god ting.

Vitalik kalder det "funktionel flugthastighed." Lad os få Ethereum til et sted, hvor det har tilstrækkelig skala og funktionalitet til, at det kan udvides og udnyttes på et uendeligt væld af måder i det næste lag af stakken. Har EVM'en minimum tilstrækkelig funktionalitet, er der tilstrækkelig datatilgængelighed til at håndtere enorme mængder af skala, og så kan applikationer udvide det i smarte kontrakter. Lag to kan eksperimentere med nye VM'er inde i deres lag to konstruktioner; du kan skalere Ethereum og så videre og så videre.

Jeg tror, ​​det bliver sværere og sværere at få tingene gjort. Og det synes jeg er en god ting.

Skyggegafler

En af de ting, der kom ud af denne specifikke testproces, var shadow forks, processen med at kopiere ægte Ethereum-data til et testnet for at simulere et mainnet-testmiljø. Var det altid i planen? Og hvordan tror du, det kan ændre F&U-processen til fremtidige opgraderinger?

Vi skulle have lavet skyggegafler i de sidste fire år. De er fantastiske; de er virkelig seje. Jeg tager i bund og grund et antal noder, som vi kontrollerer - kalder det som 10, 20, 30 - og de tror, ​​at der kommer en gaffel, så de er på mainnet eller et af disse testnet, og så i en eller anden gaffeltilstand, som blokhøjde, de alle siger: "Okay, vi er på det nye netværk." Og de forgrener sig, og de hænger derefter ud i deres egen virkelighed, men de har tilstanden på mainnet-størrelse.

Og i et stykke tid kan du overføre transaktioner fra mainnet til denne splittede virkelighed for at få en rimelig mængde af, hvad der ligner organisk brugeraktivitet, hvilket er rigtig godt. Det giver os mulighed for at teste, hvad der endte med at blive meget organiske processer, som er svære at simulere. Og det har været fantastisk. pari [Jayanthi] og andre, der arbejder på DevOps-teamet hos EF, har orkestreret disse, og vi lærte så meget af dem. Jeg tror, ​​at hvis du spørger nogen, ville de være sådan: "Nå, ja, det ville have været fantastisk, hvis vi gjorde dette for tre år siden, for fire år siden ved hver opgradering."

Men jeg vil sige en anden ting. Jeg har sagt det [siden] for et år siden, og nu er vi i den lange hale inden for sikkerhed og test: Det slår virkelig den her ting, og sørger for, at alle kantsager er korrekte, og sørger for, at når det kommer, så sker det. — vi tager et skud på det, og det virker. Og det viser sig, at den måde, hvorpå softwaren er konstrueret med klienter til konsensusudførelseslag, er der bare meget at bygge med hensyn til test. Shadow forks er en af ​​dem. Brug af andre simuleringsmiljøer, der kan teste disse to ting sammen, f.eks kurtosis, antitese, Og andre. 

Der er nogle andre ting, vi skal gøre, f.eks. omledning Hive, som er vores integration nightly build test framework, så det kan håndtere begge disse typer klienter, og så du kan skrive test, hvor der sker forskellige kompleksiteter på begge sider af gangen. Alt det skulle ske. Først skulle rammerne udvikles eller modificeres. Så skulle mange af prøverne skrives. Så det gode med Merge er, at vi virkelig har forbedret værktøjerne i vores værktøjsbælte for at kunne teste opgraderinger på en sådan måde, at den næste opgradering vil handle meget mere om at skrive testene i stedet for at tænke på, hvordan man overhovedet tester det og at skrive rammerne for at teste det. 

Hvad er der efter bevis på indsats?

Da dette har stået på i lang tid, skulle skæring i første omgang komme først. Men økosystemudviklingen betød, at du først kunne gå til bevis for indsats. Var der andre økosystemudviklinger, der dukkede op under denne proces, som kunne ændre din tilgang til fremtidige opgraderinger?

Først og fremmest er der formentlig en række grunde til, at bevis-of-stake-skiftet blev prioriteret. Den ene var at stoppe med at betale for meget for sikkerheden med bevis for arbejde. Og den anden var, at skalaen begyndte at komme gennem disse lag-to-konstruktioner. Så måske, hvis du har en skala på 10-100x, der kommer fra det, kan du fokusere på denne anden ting og afslutte jobbet og forene disse to forskellige systemer: beacon-kæden og det nuværende mainnet. 

Der er nogle andre ting, der har påvirket, hvordan vi tænker om tidslinjer og prioriteter. Jeg nævnte tidligere, at hele MEV-verdenen har kastet en skruenøgle i nogle ting. Der er centralisering og andre sikkerhedsproblemer, der dukker op, når du begynder at tænke på, hvor MEV kan gå hen. Og der har været en hel masse forskning i løbet af de sidste 12-plus måneder om, hvordan man kan afbøde nogle af disse bekymringer med lag-1-modifikationer. Afhængigt af analysen af ​​trusler, der kommer fra MEV-verdenen, kan det prioritere visse sikkerhedsfunktioner og sikkerhedstilføjelser til LXNUMX frem for noget andet, som måske forventedes at være prioriteret. 

Jeg synes noget, der er interessant, er sharding-køreplanen og den nuværende forventede konstruktion, som kaldes danksharding, opkaldt efter Dangrad [Feist], vores forsker ved EF. Hele konstruktionen er faktisk forenklet, når du antager, at disse stærkt incitamenterede MEV-aktører eksisterer. Ikke kun har nogle af disse eksterne aktører ændret, hvordan vi tænker om sikkerhed, men de ændrer også, hvordan vi kan tænke på konstruktionen af ​​disse protokoller. Hvis du antager, at MEV eksisterer, hvis du antager, at disse stærkt incitamenterede skuespillere er villige til at gøre visse ting på grund af MEV, så har du pludselig denne tredjepartsdeltager i konsensus om, at du måske kan overføre ting til, hvilket på mange måder kan være forenkling. Så der er ikke kun dårlige ting, der kommer, men der er også nye typer design, der åbner sig.

Vi har virkelig forbedret værktøjerne i vores værktøjsbælte for at kunne teste opgraderinger på en sådan måde, at den næste opgradering vil handle meget mere om at skrive testene frem for at tænke på, hvordan man overhovedet tester det.

Bliver statsløse Ethereum stadig aktivt diskuteret og undersøgt? 

Ja. Staten – alle konti og kontrakter og saldi og sådan noget – det er Ethereums tilstand. Givet hvor du er i blockchainen, er der en tilstand af virkelighed. Den ting vokser over tid, vokser lineært. Og øger man gasgrænsen, vokser den endnu hurtigere. Så dette er en bekymring. Hvis det vokser hurtigere end hukommelsen og harddiskpladsen på forbrugermaskiner, så har du problemer med rent faktisk at kunne køre noder på hjemmecomputere og forbrugerhardware, hvilket har sikkerheds- og centraliseringsproblemer. Også, hvis du taler med nogle af de geth [klient] teammedlemmer, det faktum, at staten bliver ved med at vokse, betyder, at de er nødt til at blive ved med at optimere tingene. Så det er svært.

Statsløse Ethereum og ting i den forskningsretning er en potentiel løsningsvej for dette, hvor man kan udføre en blokering, jeg behøver faktisk ikke hele staten; der er sådan et skjult input til at udføre en bloks funktion. Jeg har brug for præ-tilstanden, jeg har brug for blokeringen, og så får jeg post-tilstanden for at vide, om blokeringen er gyldig. Hvorimod med statsløse Ethereum, er statens krav - de konti og andre ting, du skal bruge for at udføre den pågældende blok - indlejret i blokken og er beviser på, at de er den korrekte tilstand. At eksekvere en blok og kontrollere gyldigheden af ​​Ethereum bliver nu bare at have blokeringen, hvilket er rigtig godt. Nu kan vi have fulde noder, der ikke nødvendigvis har fuld tilstand. Det åbner op for et helt spektrum af, hvordan man konstruerer noder. Så jeg kan have en node, der fuldt ud validerer og ikke har tilstanden, jeg kan have en node, der bare holder tilstanden relevant for mig, eller jeg kan have meget fulde noder, der har hele tilstanden og den slags ting.

Dette arbejdes der aktivt på. Der er faktisk, tror jeg, i øjeblikket et testnet med alle de andre sjove ting, der skal ske for at få dette til at ske. Min nuværende vurdering er, at efterspørgslen efter sharding og L1-skala er højere end den overhængende trussel om statsvækst. Så det er meget sandsynligt, da det ene vil blive prioriteret frem for det andet, at skalaen vil blive prioriteret. 

Når det er sagt, er det svært at sige. der er "proto-danksharding, hvilket er lidt ligesom en trinvis måde at få lidt mere skala på. Måske sker det, og så sker der statsløse, og så sker der fuld skæring, afhængigt af behov og vurdering af, hvad der foregår, og de involverede trusler. Jeg tror, ​​at den generelle tanke om statsvækst er, at vi skal have en vej, og vi skal rette den, men [at] de forestående brande er blevet slukket, og at dette ikke er noget, der vil lamme Ethereum de næste par år. Men det er en ting, der skal ordnes.

Led mig gennem de opgraderinger, vi do kender til efter sammenlægningen. Kommer der en oprydning? Er det adskilt fra Shanghai-opgraderingen? Og hvornår introduceres sharding?

Shanghai er sandsynligvis navnet på, hvad gaffelen er efter sammenlægningen. At faktisk trække dine penge tilbage, som du har satset i næsten to år nu - [det bliver] ikke aktiveret ved sammenlægningen. De forventedes oprindeligt at blive udført, men i betragtning af kompleksiteten af ​​fletningen blev det over tid besluttet at fjerne det virkelig og bare få fletningen gjort og ikke tilføje den ekstra funktionalitet ved tilbagetrækninger. Jeg ville meget, meget, meget forvente, at tilbagetrækninger er aktiveret i Shanghai - så den første opgradering efter sammenlægningen. Dette er blevet lovet til mange, mange mennesker, der har en masse kapital på spil, og jeg forventer ikke noget problem med det. Disse er generelt specificeret, der er tests skrevet og den slags. 

Der er en række andre EVM [Ethereum Virtual Machine]-forbedringer, som jeg tror ville gøre det ind i dette system - forskellige matematiske operationer, nogle forskellige udvidelsesmuligheder, en smule bedre versionering i EVM og andre funktioner. Det er lidt af en trykudløsningsventil på EVM-forbedringer, som er blevet stillet til side i flere år nu for at lave sammenfletningen og andre opgraderinger. Og folk ønsker virkelig at se en form for mindre skalerbarhedsopgradering her. Så det kan enten være proto-danksharding, som lægger noget af grundlaget for fuld sharding og får en lille smule mere skala, eller potentielt calldata-gasprisreduktioner, som er meget nemme, men som egentlig ikke er en bæredygtig løsning. Så det er, hvad vi forhåbentlig forventer i Shanghai: tilbagetrækninger og en smule skala.

Så er spørgsmålet: Hvad sker der efter det? Og det er svært at sige. Hvis vi får en smule skala der, og det supplerer L2'erne rigtig fint, og tingene er ret gode, så er der måske en efterspørgsel efter at være statsløs på det tidspunkt. Eller hvis L2'ere har et umætteligt behov for mere skala, så sætter det måske scenen for den fulde danksharding.

Dette interview er redigeret og kondenseret. 

Offentliggjort 27. juli 2022

Teknologi, innovation og fremtiden, som fortalt af dem, der bygger den.

Tak for din tilmelding.

Tjek din indbakke for en velkomstbesked.

Tidsstempel:

Mere fra Andreessen Horowitz