Hvad er ERC-4337, eller kontoabstraktion, for Ethereum?
Hjem
Artikler
Hvad er ERC-4337, eller kontoabstraktion, for Ethereum?

Hvad er ERC-4337, eller kontoabstraktion, for Ethereum?

Let øvet
Offentliggjort Mar 17, 2023Opdateret Dec 11, 2023
7m

TL;DR

ERC-4337 er en Ethereum-standard, der opnår kontoabstraktion i protokollen uden ændringer i konsensuslaget. ERC-4337, der blev implementeret på Ethereum-hovednettet i marts 2023, gør det muligt at foretage transaktioner og oprette kontrakter på en enkelt kontraktkonto. Det åbner døren for brugervenligt design af krypto-wallets, som potentielt kan fremme en bredere udbredelse.

Introduktion 

Ethereum Improvement Proposals (EIP'er) beskriver standarder som f.eks. kerneprotokolspecifikation og kontraktstandarder for Ethereum-platformen. Ethereum Request for Comment (ERC) er en type EIP, der fastsætter standarder på applikationsniveau, såsom kontrakter og tokenstandarder. En EIP kan først blive til en ERC, når styringen på kæden godkender ændringen.

ERC-4337 er den seneste ERC-standard, der er implementeret på Ethereum-hovednettet for at nå sit længe ventede mål om kontoabstraktion. Nogle henviser stadig til ERC-4337 ved at bruge den oprindelige betegnelse, EIP-4337. EIP-4337 blev dog oprindeligt foreslået i 2021 og er blevet godkendt til at blive til ERC-4337 i 2023.

Hvad er ERC-4337? 

ERC-4337 blev foreslået af Vitalik Buterin, som er medstifter af Ethereum, og andre udviklere i 2021 for at etablere kontoabstraktion. Den blev implementeret på Ethereum-hovednettet i marts 2023 og forventes at være et varsel om brugervenligt design af krypto-wallets

I Ethereum har kontoabstraktion til formål at kombinere funktioner fra protokollens to eksisterende kontotyper: Eksternt ejede konti (EOA) og smart contract-konti. Resultatet er en enkelt kontraktkonto, der kan handle med tokens og oprette kontrakter på samme tid. Denne ændring gør det muligt at lave kreativt wallet-design såsom social genoprettelse, tilpasning og opgraderingsmuligheder.

En anden måde til at tænke på ERC-4337 er, at den bringer smart contract-funktionalitet til wallets på en enkelt konto. Det gør det nemmere at oprette tjenester som f.eks. multifaktorgodkendelse og automatiske betalinger.

Hvorfor er der brug for ERC-4337? 

For at se, hvorfor ERC-4337 er nødvendig, er det vigtigt at forstå, hvorfor den blev foreslået og implementeret i første omgang. I modsætning til Bitcoin-netværkets Unspent Transaction Output-modul (UTXO) bruger Ethereum-protokollen en kontobaseret model. Det betyder, at Ethereum-protokollen holder styr på og opdaterer kontis disponible saldi, efterhånden som transaktionerne bliver bekræftet.

De to typer konti i Ethereum har deres egne funktioner. EOA'er ejes og kontrolleres af brugere, mens smart contract-konti er smart contracts, der er implementeret på netværket. Begge konti kan modtage, opbevare og sende ether eller tokens.

De fleste eksisterende krypto-wallets på Ethereum, såsom MetaMask, er EOA'er, hvilket betyder, at de er begrænset af reglerne omkring EOA'er. Disse begrænsninger omfatter bl.a., at der udelukkende skal anvendes private keys til at få adgang til konti, og at alle transaktioner skal være underskrevet. Derfor er procedurerne for opsætning af wallet og sikkerhedsforanstaltninger for private key normalt komplekse og ikke brugervenlige. Hvis brugerne mister deres seed phrase, betyder det som regel, at de mister adgangen til deres wallet.

ERC-4337 fjerner sådanne begrænsninger. Smart contract-wallets som UniPass og Safe er wallets, der forvaltes af smart contract-konti i stedet for EOA'er, og de kan nå det samme mål. Brugerne skal dog forvalte deres ether på to konti for at betale for gas eller benytte sig af et centraliseret relay-system. ERC-4337 fjerner sådanne begrænsninger, fordi den kombinerer de to kontis funktionaliteter i én, hvilket gør det lettere at implementere de ønskede wallet-funktioner.

Hvordan fungerer ERC-4337?

Ethereum-fællesskabet har længe arbejdet på måder til at opnå kontoabstraktion. Før EIP-4337 fremsatte fællesskabet et andet forslag med henblik på at opnå kontoabstraktion, kaldet EIP-2938. EIP-2938 lignede ERC-4337, men krævede ændringer i konsensuslaget. ERC-4337 omgår dette.

Det sker ved at indføre et pseudotransaktionsobjekt i et højere layer kaldet UserOperation, som har ligheder med rollups, da begge involverer forskellige versioner af konceptet bundling. I ERC-4337 sender forskellige brugere UserOperation-objekter til en separat mempool.

Bundlere pakker disse objekter ind i en transaktion, som indgår i en blok. Bundlerne betaler gas for de bundtede transaktioner og får betaling for de enkelte UserOperations-udførelser. Bundlere fungerer på samme måde som en validator, idet de vælger, hvilke objekter der skal inkluderes, på baggrund af en logik for prioritering af gebyrer.

Nye funktioner, herunder validateUserOp, tilføjes også for at gøre det muligt for en wallet at være en smart contract på samme tid. Der indføres også en ny kontrakt kaldet EntryPoint, der skal fungere som en sikkerhedsport for udførelsen af disse nye funktioner.

Hvilke mål opnår ERC-4337? 

ERC-4337 har bl.a. følgende mål: 

Kontoabstraktion: Giver brugerne mulighed for at benytte en enkelt konto med funktionaliteter i forbindelse med smart contracts og EOA'er. 

Decentralisering: Tillad alle såkaldte bundlere at deltage i processen. 

Undgå konsensusændringer: Gør det muligt at indføre hurtigere, da Ethereum-konsensuslaget fokuserer på opgraderinger, der er rettet mod skalerbarhed.

Muliggøre innovative use cases: Det kan f.eks. være aggregerede signaturer, fastsættelse af daglige transaktionsgrænser, fastfrysning af nødkonti, tilføjelse til positivliste og applikationer til beskyttelse af privatlivets fred.

Spar tid og gas: Eftersom bundlers kan pakke UserOperation-objekter i én transaktion, kan det spare tid og gas.  

Hvad betyder ERC-4337 for brugerne? 

ERC-4337 kan betyde enden på den komplicerede brugeroplevelse med krypto-wallet og dermed også øge udbredelsen. Her er nogle af højdepunkterne for, hvad ERC-4337 kan muliggøre: 

Opsætning af wallet: Det er ikke nødvendigt at notere seed phrases. Opsætning kan være hurtig og nem med få klik.

Bekymringsfri kontooprettelse: Brugere behøver ikke længere at bekymre sig om at miste deres seed phrases, da det nu er muligt at bruge multifaktorgodkendelse og genoprette kontoen. 

Brugervenlige wallet-funktioner: Brugere kan nyde godt af en lang række tilpassede tjenester, herunder automatisk betaling, forhåndsgodkendelse af transaktioner og bundtede transaktioner. Der er ingen grænser for, hvor meget du kan. 

Bedre sikkerhed: Wallets kan potentielt være sikrere, da muligheden for menneskelige fejl er reduceret – du skal ikke længere gemme seed phrases under din madras! ERC-4337 bør i teorien føre til en mere gnidningsfri og venligere brugeroplevelse for brugerne, og dermed fjernes en stor hindring for masseindførelse.

Gasfleksibilitet: Wallets drevet af ERC-4337 kan nu betale gasgebyrer med ERC-20-tokens og mere. Udviklere kan bygge wallets, der gør det muligt at betale gasgebyrer i alle tokens og endda fiatpenge. 

Sammenfatning 

Terminologien i krypto-wallets – såsom seed phrases, private keys og offentlige nøgler – kan være skræmmende for nye brugere. Det er stadig en udfordring for nogle mennesker at bruge krypto-wallets. Mange er enige om, at den gennemsnitlige brugers kryptogrænseflade skal være så enkel som muligt for at fremskynde udbredelsen.  

ERC-4337 skaber det tekniske grundlag for at understøtte kreative krypto-wallets. Hvad udviklere kan bygge på baggrund af dette kan ændre det vigtigste kontaktpunkt mellem krypto og brugere. Uanset hvad, så er indvirkningen, som ERC-4337 vil få på brugeroplevelsen og krypto som helhed, noget, man skal holde øje med i de kommende år. 

Yderligere læsning:

En introduktion til ERC-20-tokens

Hvad er Ethereum?

Hvad er Ethereums Shanghai-opgraderingen, og hvordan vil det påvirke mig?

Hvad er EIP-4844 i Ethereum, og hvordan kan den være til gavn for brugerne?

Ansvarsfraskrivelse og risikoadvarsel: Dette indhold præsenteres for dig "som det er" til generel information og uddannelsesmæssige formål uden erklæring eller garanti af nogen art. Det skal ikke opfattes som økonomisk, juridisk eller anden professionel rådgivning, og det er heller ikke hensigten at anbefale køb af et bestemt produkt eller en bestemt tjeneste. Du bør selv søge råd fra relevante, professionelle rådgivere. Hvis denne artikel er et bidrag fra en tredjepart, bør du bemærke, at dennes synspunkter udtrykkeligt tilhører denne tredjepartsbidragsyder og ikke nødvendigvis afspejler Binance Academys synspunkter. Læs vores fulde ansvarsfraskrivelse her for yderligere oplysninger. Priserne på digitale aktiver kan være volatile. Værdien af din investering kan gå op eller ned, og du får muligvis ikke det investerede beløb tilbage. Du er eneansvarlig for dine investeringsbeslutninger, og Binance Academy er ikke ansvarlig for eventuelle tab, du måtte lide. Dette materiale bør ikke anses for værende økonomisk, juridisk eller anden rådgivning. For yderligere oplysninger kan du læse vores vilkår for anvendelse og risikoadvarsel.