Hvordan Ethereum Layer 2-skaleringsløsninger adresserer barrierer for virksomheder, der bygger på Mainnet

Tas Dienes, EEA Mainnet Working Group

December 2020

Hvis du har fulgt buzzen i Ethereum-økosystemet for nylig, har du sikkert hørt om høje transaktionsgebyrer og Mainnets begrænsede behandlingskapacitet. Du har måske også hørt om Layer 2.  Layer 2 er et sæt teknologier eller systemer, der kører oven på Ethereum (Layer 1), arver sikkerhedsegenskaber fra Layer 1 og giver større transaktionsbehandlingskapacitet (throughput), lavere transaktionsgebyrer ( driftsomkostninger), og hurtigere transaktionsbekræftelser end Layer 1. Layer 2-skaleringsløsninger er sikret af Layer 1, men de gør det muligt for blockchain-applikationer at håndtere mange flere brugere eller handlinger eller data, end Layer 1 kunne rumme.

Layer 2 er et bredt felt, hvor mange teams forsker og bygger forskellige skaleringsløsninger, der nogle gange er konkurrencedygtige og nogle gange komplementære. De vigtigste kategorier af L2-løsninger er:statskanaler, sidekæder 1 , plasma, optimistiske rollups, zk-rollups og validium. Der er også nogle hybridløsninger, der har egenskaber af flere kategorier. Hver har sit eget sæt af styrker, svagheder og afvejninger. At dykke ned i, hvordan hver type L2-teknologi fungerer, og nuancerne i dens afvejninger er uden for denne artikels omfang, men mange andre har skrevet om dem. 4,5,6,7

De fleste L2-løsninger er centreret omkring en server eller klynge af servere, som hver især kan omtales som en node, validator, operatør, sequencer, blokproducent eller lignende term. Afhængigt af implementeringen kan disse L2-noder drives af de virksomheder eller enheder, der bruger dem, eller af en tredjepartsoperatør eller af en stor gruppe enkeltpersoner (svarende til Mainnet). Generelt sendes transaktioner til disse L2-knudepunkter i stedet for at blive sendt direkte til L1; L2-instansen grupperer dem derefter i grupper, før de forankres til L1, hvorefter de sikres af L1 og ikke kan ændres. Detaljerne om, hvordan dette gøres, varierer betydeligt mellem forskellige L2-teknologier og implementeringer.

Privat vs offentlig Ethereum

Mange virksomheder har bygget applikationer på eller eksperimenteret med private blockchains, herunder private Enterprise Ethereum-implementeringer, på trods af at Ethereum Mainnets åbne og decentraliserede karakter giver visse fordele såsom stærkere sikkerhed/uforanderlighed, gennemsigtighed, lavere driftsomkostninger, 3 og evnen til at interoperere med alle de andre applikationer, der også er på Mainnet (netværkseffekter). Ved at dele en fælles referenceramme undgås unødvendig oprettelse af adskillige isolerede siloer, som ikke kan kommunikere og dele eller synkronisere information med hinanden.

Disse fordele er også tilgængelige på L2, hvis det ønskes (gennemsigtighed er valgfrit). Transaktioner på L2 dømmes og sikres af L1, som stadig fungerer som en fælles referenceramme og sikrer globalt konsistent transaktionsbestilling og statsstyring. Applikationer kan nemt interoperere i en L2-instans og kan handle på tværs af L2'er via meddelelser på tværs af kæder.

Der er mange grunde til, at virksomhedsudviklere og arkitekter har valgt at bygge videre på private kæder i stedet for offentlige. I slutningen af ​​2019 skrev John Wolpert fra ConsenSys en liste over problemer med ideen om at bruge Ethereum Mainnet i erhvervslivet. 2 Her vil vi tage en udvidet version af listen over problemer eller indvendinger mod at bygge på Mainnet og se på, hvordan Layer 2-skaleringsløsninger kan ændre spillet for nogle applikationer.

Problemer med at bygge på Ethereum Mainnet Konsekvenserne af at bruge en Layer 2-løsning Skaleringsproblem:Min applikation kræver hundredvis eller tusindvis af transaktioner i sekundet, som offentlige kæder ikke kan håndtere. Dette er præcis det problem, L2-løsninger er designet til at løse. Afhængigt af den specifikke L2-teknologi og implementering kan den tilbyde fra 50x til over 1000x mere gennemløb end L1.

I den høje ende:statskanaler, plasma, validium, sidekæder og visse hybridløsninger. I den nederste ende:  zk-oprulninger og optimistiske oprulninger. Hastigheds- og latensproblem:Vores CRM- og ERP-systemer har ikke brug for den slags transaktionshastigheder pr. sekund som et Visa eller Mastercard (og selv de får disse TPS-satser gennem parallelisering...kan ikke narre mig). Men lange ventetider for rundtur + konsensus gør ting, jeg kunne gøre med Mainnet, til en dårlig brugeroplevelse. Nogle L2-løsninger kan give "øjeblikkelige" transaktionsbekræftelser med en økonomisk garanti for, at din transaktion vil blive inkluderet i den næste L2-blok.

Sidekæder kan også tilbyde kortere blokeringstider og hurtigere endelighed i sidekæden (selvom transaktionerne ikke er forankret til L1).

Afslutning af L2-transaktioner på L1 for at få det fulde udbytte af L1-sikkerhed afhænger stadig af L1-blokeringstiden. Om du skal vente på L1-finality, L1-bekræftelse eller kun på L2-bekræftelse vil afhænge af din ansøgnings specifikationer.Finalitetsproblem:Ethereum er en "eventuel konsistens"-maskine. Hvis det ændrer sig med Eth2.0, forstår jeg det ikke ... noget med en magisk hurtig endelighed noget. Det ved jeg ikke. Hvad jeg ved er, at alle mine systemer er dem, hvor en ændring af data er endelig i det sekund, den er skrevet. L2 kan gøre dette lidt mere kompliceret, fordi transaktioner skal afsluttes på både L2 og L1. Det er som minimum det samme kompleksitetsniveau som L1.

Ethereum 2.0 introducerer dog endelighed via sin nye konsensusalgoritme, Casper FFG. Efter migrering til Eth2 kan både L1- og L2-transaktioner betragtes som afsluttede efter et stykke tid. Noisy Neighbour Problem:Andre brugere og netværksaktivitet må ikke forstyrre min drift. Som en virksomhed, der udfører missionskritiske operationer, der er afhængige af forudsigelig driftstiming, skal jeg være sikker på, at en "cryptokitty"-begivenhed ikke er en mulighed. Jeg har brug for at vide, at selvom Mainnet er et offentligt værktøj, er der rimelig sikkerhed på en eller anden måde for, at de læsninger, skrivninger og beregninger, jeg skal bruge for at drive forretning på Mainnettet, ikke vil blive reduceret til en gennemgang af andres aktiviteter. I hvilken grad "støjende naboer" kan forstyrre din drift ved at forbruge det meste af L1-kapaciteten afhænger af typen af ​​L2-teknologi og hvordan den implementeres. Nogle teknologier som plasma og validium skriver meget lidt data til L1. På grund af dette kan L2-operatøren betale højere gaspriser, hvis det er nødvendigt for at sikre, at deres transaktioner behandles på L1 rettidigt. Disse løsninger er meget modstandsdygtige over for "støjende naboer".

Sidekæder er også relativt immune over for dette problem, fordi de ikke er afhængige af L1-kæden. Men overførsel af tokens eller data til/fra L1-kæden er stadig underlagt L1's kapacitet.

L2-løsninger i rollup-stil er begrænset af den tilgængelige kapacitet på L1 og kan lide mere af Mainnet-overbelastning. L1-gasomkostningerne for at forankre disse L2-transaktioner på L1 er stadig meget lavere end omkostningerne ved at foretage disse transaktioner direkte på L1, så operatøren kan muligvis betale højere transaktionsgebyrer for at sikre rettidig behandling. Disse løsninger er mindre modstandsdygtige over for støjende naboer end de tidligere nævnte, men mere modstandsdygtige end applikationer, der kører direkte på L1.

Hvis virksomhedsapplikationer deler en L2-instans med andre applikationer, afhængigt af implementeringen, kan L2-operatøren muligvis levere en vis mængde garanteret gennemløb eller en SLA med hensyn til den L2-instans. En applikation eller virksomhed kan også have sin egen L2-instans helt for sig selv.Privat dataproblem:Firs procent af vores data betragtes som følsomme, interne eller personligt identificerbare klient-, kunde- eller brugerdata. Kryptering er ikke nok. Enhver data kan deanonymiseres og dekrypteres givet tid. Og enhver med en fuld node skal for evigt knaske bits på hovedbogen. Så jeg kan ikke lide at placere selv krypterede data på en offentlig kæde. Visse L2-teknologier (såsom validium, sidekæder og Arbitrum SCSC) er i stand til at holde alle L2-data inden for L2-instansen og uden for L1.

Hvis flere virksomheder skriver data til den samme delte L2-instans, vil de være i stand til at se hinandens data (som et konsortium), men hvis en virksomhed har sin egen instans, kan dataene holdes private.Sikkerhedsproblemer:Krypterede data er stadig data. Det er imod vores politik at gemme PII- og klientdata, selv krypteret, på peer-to-peer-platforme. Mens rollups skriver alle transaktionsdata til L1, gør andre løsninger det ikke. Nogle L2-løsninger gør det muligt for en virksomhed at køre deres egen private L2-instans, som holder alle L2-data for sig selv på servere, der kontrolleres af det pågældende firma.

I sidste ende bør der stilles spørgsmålstegn ved behovet for at placere følsomme data på en blockchain, da der er designmønstre, som undgår at bruge blockchains som databaser og fokuserer på at udnytte deres styrker, samtidig med at følsomme data holdes uden for kæden. Datalokalitetsproblem:GDPR kræver, at jeg kan redegøre for, hvor PII-data er gemt, selv når de er krypteret. Og jeg skal være i stand til at slette disse data permanent efter anmodning. Hvis dataene sidder permanent på et hvilket som helst antal noder, der ikke er kontrolleret af mig overalt... ja. Med visse L2-løsninger, der ikke skriver transaktionsdata til L1, kan en L2-operatør levere en GDPR-kompatibel L2-tjeneste, som gemmer L2-data på et kendt sted med det nødvendige sikkerhedsniveau. Eller en virksomhed kan køre sin egen private L2-instans og have fuldstændig kontrol over L2-dataene. Ansvarlig part Problem:Min juridiske struktur kræver, at der er en ansvarlig part, der håndterer alle aspekter af mine data og forretningslogik. Hvis jeg lægger data på Mainnettet, mister jeg en vigtig ansvarlig part. Nogle L2-løsninger drives af en operatør, som kan tilbyde og blive holdt ansvarlig for SLA'er og sikkerhed på traditionel vis. Transaktionsomkostningsproblem:Ethereum-gaspriserne er steget . Hvis jeg skal udføre millioner af transaktioner, bliver det sindssygt dyrt. Dette er et andet problem, som L2 er specielt designet til at løse. Fordi forankring af L2-transaktioner på L1 bruger meget mindre gas end at udføre transaktionerne direkte på L1, er L2-transaktionsomkostningerne meget lavere.

De nøjagtige besparelser afhænger af L2-teknologien. L2'er som statskanaler, plasmavalidium og sidekæder er de mest økonomiske, mens L2'er, der gemmer transaktionsdata på L1, ligesom rollups, giver færre (men stadig betydelige) besparelser. Omkostninger Uforudsigelighed Problem:Gaspriserne går op og ned. Kryptopriserne går op og ned. Det er for svært at forudsige, hvor meget mine transaktioner vil koste. Med visse L2-implementeringer er der en operatør, der kan opkræve en fast/garanteret pris pr. transaktion.

Sidechain-operatører kan tilbyde faste priser for variable varigheder af kædedrift (3 måneder, 6 måneder, 12 måneder). Transaktioner inden for kæden ville stort set være gasfri.

Selv under variabel markedsbaseret prissætning reducerer L2 i høj grad omkostningerne pr. transaktion. Afhængigt af typen af ​​L2 kan L2-transaktionsomkostningerne variere lineært, da gaspriserne på L1 varierer (rollups), eller kan være relativt afkoblet, fordi der lagres mindre data på L1 (validium, plasma, osv.). Givet lavere samlede omkostninger, kan implikationerne af variabilitet blive reduceret.Kryptobetalingsproblem:Jeg er nødt til at holde krypto og betale for transaktioner i krypto. Det er et mareridt at få min virksomheds finanser fortrolig med at købe og holde og betale i krypto. Hvis L2-instansen drives af en tredjepartsoperatør, kan operatøren acceptere betaling for L2-transaktioner i enhver form for valuta, de vælger, inklusive traditionel fiat.

Dette problem kan også løses på L1 af transaktionsrelæer (alias tankstationer), som kan acceptere betaling i fiat eller tokens og videresende transaktioner til L1-netværket. Strategilækager Problem:Transaktionsmetadata kan bruges til at spille systemet eller indsamle/analysere for strategisk kontraspionage eller korp. spionage. I en tidsalder med kunstig intelligens kan enhver sporingsaktivitet, der udføres på en permanent, offentlig hovedbog, bruges til at finde ud af, hvem der gør hvad, selvom det kun er små ændringer i Merkle-forsøg.L2'er baseret på visse teknologier (såsom validium, sidekæder, Arbitrum SCSC) er i stand til at holde L2 transaktionsdetaljer indeholdt i L2 og uden for L1. L2 kan derefter begrænse adgangen til autoriserede enheder. Hvis en virksomhed kører sin egen private L2-instans, kan detaljerne om deres transaktioner holdes private (selvom der kan være begrænsede anvendelsestilfælde for L2'er, der kun bruges af én enhed).

Det er også muligt at bruge en tilgang som Baseline, hvor transaktioner mellem enheder udføres privat, og kun ZK beviser for korrekthed (samlet i batches) sendes til enten L1 eller L2.

En ny teknologi kaldet zkzk-rollup (f.eks. Aztec 2.0) tillader fortrolige transaktioner inden for L2, så andre på samme L2-instans ikke kan dechifrere dine transaktioner.

Også under udvikling er databeskyttelses- og depotprotokoller, som er afhængige af adgangsrettighedsstyring, distribueret nøglegenerering og betroede eksekveringsmiljøer for at holde data private undtagen mens de er inde i en TEE inden for lag 2. Fortrolig kode Problem:Du kan ikke bare skjul dataene med noget som ZK-SNARKS og tro, at alt er ok fra et virksomhedsperspektiv. Mange forretningsaftaler er inkorporeret i kode... forretningslogik. Hvis en maskine kan udføre en smart kontrakt, kan den dekompilere og se på logikken, og det kan lække følsomme oplysninger. Nogle L2'ere understøtter ikke smarte kontrakter og udførelse af kode.

Hvis dine transaktioner kræver udførelse af kode, kan det være muligt at bruge en tilgang som Baseline, hvor transaktioner mellem enheder udføres privat, og kun ZK beviser for korrekthed sendes til enten L1 eller L2.

En ny teknologi kaldet zkzk-rollup (f.eks. Aztec 2.0) tillader fortrolige transaktioner inden for L2, så andre på samme L2-instans ikke kan dechifrere dine transaktioner. Følelsesmæssigt:Bitcoin og Ethereum er til ikke-reguleret/off-bogbrug (dvs. . Jeg ønsker ikke at blive forbundet med det, og jeg er bange for, hvad der kan ske, hvis regeringer slår ned på offentlige blockchains. Efterhånden som offentlig brug af Ethereum vokser, bliver det sværere for enhver regering at censurere eller blokere netværket. Selvom der kan være globale bestræbelser på at fjerne eller reducere brugen af ​​kriminelle aktører, er det usandsynligt, at det vil forhindre væksten af ​​decentraliseret databehandling og offentlige netværk. Fordelene ved delte protokoller, digital valuta/tokens, tillidsfri og automatiseret kontraktudførelse sammen med andre Web3-fordele er for kraftfulde til at stoppe.

At køre dine applikationer på L2 kan give en vis grad af isolation fra den offentlige L1 blockchain. L2 kan drives mere som traditionel business it-infrastruktur med sikkerhed og ansvarlighed og fungerer som en buffer mellem din virksomhed og ureguleret aktivitet, men har stadig L1 som dommer plus fordelene ved uforanderlighed, interoperabilitet og den fælles referenceramme som L1 giver.

Konklusion

Layer 2-skaleringsløsninger til Ethereum Mainnet har været under udvikling i de sidste par år og er nu ved at være klar til at tage fat på rigtige applikationer. At bygge din applikation på en Layer 2 vil hjælpe dig med at opnå meget højere gennemløb end at køre alle dine operationer direkte på Layer 1. Og det vil minimere transaktionsomkostningerne. Layer 2 kan også hjælpe med at løse problemer relateret til privatlivets fred, fortrolighed af transaktioner og dataopbevaring. Og det kan hjælpe med at undgå behovet for, at virksomheder skal håndtere cryptocurrency-tokens og prisvolatilitet, når de betaler for transaktioner.

Der er mange L2-løsninger, hver med sine egne styrker og svagheder og afvejninger. Det er tilrådeligt at tænke grundigt over din ansøgnings krav og at studere de tilgængelige muligheder, før du foretager et valg.

Eksempler på L2-løsninger, der er produktionsklare eller snart vil være:

  • Optimistiske rollups (data om kæde, beviser for svindel)
    • Optimisme
    • Offchain Labs Arbitrum Rollup
    • Brændstofnetværk
  • ZK-oprulninger (data om kæde, ZK-gyldighedsbeviser)
    • Loopring
    • Starkware
    • Matter Labs zkSync
    • Aztec 2.0
  • Validium (data uden for kæden, ZK-gyldighedsbeviser)
    • Starkware
    • Matter Labs zkPorter
  • Plasma (data uden for kæden, bedrageribevis)
    • OMG-netværk
    • Gazelle
    • Matic-netværk
    • LeapDAO
  • Statskanaler
    • Forbind
    • Raiden
    • Perun
  • Sidekæder 1
    • Skala
    • POA-netværk
  • Hybridløsninger
    • Offchain Labs Arbitrum SCSC – har egenskaber for både sidekæder og statskanaler, men falder tilbage til optimistisk oprulning, hvis validatorer opfører sig forkert.
    • Celer – har justerbare egenskaber for sidekæder og statskanaler og optimistiske rollups

Noter og referencer

  1. Nogle mennesker vil sige, at sidekæder teknisk set ikke er lag 2, fordi de ikke er sikret af L1:https://ethresear.ch/t/understanding-sidechains/8045
  2. https://drive.google.com/file/d/1-_lHgLeIyYH2ggtKigvNhzHz7OnXFJz6/view
  3. https://github.com/EYBlockchain/fundamental-cost-of-ownership/blob/master/EY%20Total%20Cost%20of%20Ownership%20for%20Blockchain%20Solutions.pdf
  4. https://www.buildblockchain.tech/newsletter/issues/no-99-validium-and-the-layer-2-two-by-two
  5. https://medium.com/matter-labs/evaluating-ethereum-l2-scaling-solutions-a-comparison-framework-b6b2f410f955
  6. https://medium.com/celer-network/adding-hybrid-pos-rollup-sidechain-to-celers-coherent-layer-2-platform-d1d3067fe593
  7. https://ethworks.io/assets/download/zero-knowledge-blockchain-scaling-ethworks.pdf

Tak til John Wolpert, Ken Fromm og Jack Leahy for deres input til denne artikel.


Ethereum
  1. Blockchain
  2. Bitcoin
  3. Ethereum
  4. Digital valutaveksling
  5. Minedrift