Virtuele machine voor Ethereum (EVM)

Betrouwbaarheid

Wat is de Ethereum Virtuele Machine (EVM)?

De Ethereum Virtual Machine (EVM) is software die de regels bepaalt voor het berekenen van de staat van het Ethereum netwerk van blok tot blok. De EVM is een kernonderdeel van Ethereum omdat het smart contracts uitvoert, transacties verwerkt en rekeningsaldi bijwerkt.

In eenvoudige woorden is de EVM een virtuele machine of een cloudcomputer die het Ethereum protocol aandrijft. Net als een computer voert het code uit en heeft het geheugen om informatie op te slaan. EVM is echter niet slechts één computer, maar een pool van duizenden cloudmachines over de hele wereld.

De belangrijkste functies van EVM

De status van de Ethereum blockchain beheren

Slimme contracten uitvoeren

Gegevens opslaan

Gaskosten berekenen

Hoe werkt de EVM?

Ontwikkelaars op Ethereum schrijven hun smart contract code in een programmeertaal genaamd Solidity. De code wordt vervolgens vertaald naar bytecode zodat de EVM de instructies kan lezen.

In het proces van het vertalen van de code van Solidity naar bytecode, worden de instructies eerst opgesplitst in ‘opcodes’ of operatiecodes. Elke regel code wordt omgezet naar opcodes zodat de EVM precies weet hoe een transactie uitgevoerd moet worden.

Zoals we weten, vereist elke transactie op Ethereum een gas fee om te worden uitgevoerd. Daarom is de relatie tussen opcodes en gas fee ook belangrijk om te begrijpen hoe de EVM werkt.

In theorie, wanneer je gas fees betaalt, betaal je eigenlijk voor de opcodes om uitgevoerd te worden door de EVM. Hoe meer opcodes er zijn, hoe hoger je kosten zullen zijn.

Eenvoudige transacties zoals het versturen van ETH van de ene rekening naar de andere zullen minder gas vereisen in vergelijking met complexe processen zoals het creëren van een smart contract, omdat de EVM meer werk moet doen.

Belangrijkste kenmerken van EVM

  • Turing-complete virtuele machine

De EVM is ontworpen als een Turing-complete virtuele machine. Turing-complete verwijst naar een machine die elk probleem kan oplossen als deze de benodigde bronnen van tijd, energie en volledige instructies krijgt.

De Turing-compleetheid van Ethereum is het vermogen van het netwerk om toekomstige overeenkomsten van een smart contract te begrijpen en te implementeren.

  • Deterministische code-uitvoering

De EVM voert code deterministisch uit. Een bepaald smart contract zal altijd dezelfde uitvoer produceren voor dezelfde invoer. Het maakt niet uit waar het smart contract wordt uitgevoerd of wie het uitvoert, de uitvoer zal altijd consistent zijn voor een bepaalde invoer.

  • Isolatie

De EVM is ontworpen om geïsoleerd van de rest van het computersysteem te werken. Dit zorgt ervoor dat de smart contracts worden uitgevoerd binnen een veilige omgeving.

EVM architectuur

EVM-code: De bytecode die de EVM kan uitvoeren.

Staat: Ethereum is een grote datastructuur die informatie over rekeningen en balansen bevat. De staat van deze informatie verandert van blok tot blok terwijl de EVM nieuwe inputs verwerkt om deterministische outputs te produceren.

Transacties: Transacties zijn cryptografisch ondertekende instructies van gebruikers die de EVM uitvoert. Er zijn twee soorten instructies:

  • Berichtoproepen kunnen eenvoudige transactie-instructies zijn voor het verzenden van ETH van de ene rekening naar de andere.
  • Contractaanmaak zijn instructies om nieuwe slimme contracten aan te maken.

Ruimte: De EVM gebruikt drie ruimtecomponenten:

  • Stack – tijdelijke opslag die een maximale capaciteit heeft van 1024 items. Alle operaties worden uitgevoerd op de stack.
  • Geheugen – tijdelijke opslag die alleen toegankelijk is tijdens de uitvoering van slimme contracten. De inhoud wordt weggegooid zodra de contractuitvoering voltooid is.
  • Opslag – persistent geheugen dat niet verloren gaat, omdat de gegevens zijn opgeslagen op de Ethereum blockchain. Vergeleken met stack en geheugen, resulteert het gebruik van opslaggeheugen in hogere gaskosten.

Gas: De hoeveelheid rekenkracht die nodig is om bewerkingen op een blockchainnetwerk uit te voeren. Voor elke EVM berekening zijn gas kosten nodig, anders wordt de transactie niet verwerkt.

Belang van EVM-compatibiliteit

Ethereum is uitgegroeid tot het meest waardevolle openbare blockchainnetwerk voor slimme contracten ter wereld.

Op 21 juni 2023 had Ethereum’s ecosysteem van gedecentraliseerde applicaties (dApps) een totale gesloten waarde (TVL) van $24,63 miljard. De op één na meest waardevolle keten Tron had volgens DefiLlama een TVL van $5 miljard. Dit toont een duidelijke marktvoorkeur voor Ethereum, dat zichzelf heeft gevestigd als de go-to blockchain voor gedecentraliseerde financiën (DeFi).

Veel blockchainnetwerken zijn ontworpen om EVM-compatibel te zijn. Hierdoor kan de blockchain Ethereum smart contracts uitvoeren. EVM-compatibiliteit stelt ontwikkelaars in staat om hun smart contracts eenvoudig uit te rollen over Ethereum en meerdere EVM-compatibele ketens.

EVM-compatibele netwerken kunnen gebruik maken van de enorme pool van Ethereum gebruikers, wat cruciaal kan zijn voor groei en massale adoptie.

Welke ketens zijn EVM-compatibel?

  • Ethereum
  • BNB Chain
  • Polygon PoS
  • Avalanche
  • Optimisme
  • Arbitrium
  • Fantoom
  • Maanboon
  • Klaytn
  • Cronos

Conclusie

De EVM software is het levensbloed van Ethereum omdat het de status van de blockchain onderhoudt en smart contracts uitvoert.

De razendsnelle groei van Ethereum heeft EVM tot een industriestandaard gemaakt, zozeer zelfs dat concurrerende blockchainnetwerken hun systemen ontwerpen om er compatibel mee te zijn.

Gerelateerde begrippen

Mensholong Lepcha
Redacteur

Mensholong Lepcha is een financieel journalist gespecialiseerd in cryptocurrencies en wereldwijde aandelenmarkten. Hij heeft gewerkt voor gerenommeerde bedrijven als Reuters en Capital.com. Gefascineerd door blockchaintechnologie, NFT's en de tegendraadse school van beleggen, heeft Mensholong expertise in het analyseren van tokenomics, prijsbewegingen en technische details van Bitcoin, Ethereum en andere blockchainnetwerken. Hij heeft artikelen geschreven over een breed scala aan financiële onderwerpen, waaronder grondstoffen, forex, monetair beleid van centrale banken en ander economisch nieuws.