Definitie
De Ethereum Virtual Machine (EVM) is de gedecentraliseerde computeromgeving die slimme contracten uitvoert op Ethereum en EVM-compatibele blockchains. Het is een op stacks gebaseerde, afgeschermde virtuele machine die de bytecode-output van gecompileerde Solidity (en andere programmeertalen voor slimme contracten) verwerkt in een deterministische, geïsoleerde omgeving. Elk knooppunt in het Ethereum-netwerk voert dezelfde EVM-code uit en bereikt identieke resultaten, waardoor consensus zonder vertrouwen mogelijk is. De EVM is "Turing-compleet", wat betekent dat het theoretisch alles kan berekenen wat berekenbaar is (praktisch beperkt door gaslimieten om oneindige lussen te voorkomen). Elke EVM-bewerking – optellen, lezen/schrijven van opslag, contractcreatie, hashberekening – heeft een gedefinieerde gaskost, waardoor wordt gegarandeerd dat er voor de computerbronnen wordt betaald. Het ontwerp van de EVM is buitengewoon invloedrijk geweest: blockchains zoals Polygon, BNB Chain, Avalanche C-Chain, Arbitrum, Optimism en tientallen andere zijn "EVM-compatibel", wat betekent dat Ethereum-smartcontracten erop kunnen worden geïmplementeerd met minimale of geen aanpassingen. Dit heeft geleid tot een enorm ecosysteem van interoperabele blockchains die de ontwikkelaarstools en kennisbasis van Ethereum delen.
Oorsprong en geschiedenis
| Datum | Evenementen |
| 2013 | Vitalik Buterin stelt Ethereum voor en introduceert het concept van een programmeerbare blockchain met een virtuele machine. |
| juli 2015 | Het Ethereum-mainnet wordt gelanceerd met EVM — de eerste universele virtuele machine voor blockchains. |
| 2016 | EVM voert het DAO-smartcontract uit; DAO-hack onthult EVM-re-entrancy-kwetsbaarheid |
| 2017 | EVM maakt ICO-boom mogelijk; duizenden tokencontracten ingezet |
| 2019 | De Constantinople-upgrade optimaliseert de EVM-gaskosten voor meerdere opcodes. |
| 2020 | DeFi-zomer: EVM verwerkt dagelijks miljarden aan DEX-volume. |
| 2021 | EVM-compatibele blockchains nemen toe: BSC, Polygon, Avalanche en Arbitrum bereiken allemaal compatibiliteit. |
| 2022 | EVM verzorgt de samenvoeging; overgangen van PoW naar PoS zonder de uitvoeringslaag te wijzigen |
| 2023 | Meer dan 20 EVM-compatibele blockchains; miljoenen slimme contracten wereldwijd in gebruik. |
"De EVM is voor crypto wat de webbrowser was voor het internet: een universele runtime die gedecentraliseerde applicaties toegankelijk maakte voor miljoenen ontwikkelaars." — Ethereum-ontwikkelaarsgemeenschap
Hoe het werkt
EVM-architectuur:
Solidity-code (.sol) ↓ Compiler (solc) EVM-bytecode (bijv. 0x606060405234…) ↓ Geïmplementeerd naar Ethereum Smart Contract-adres: 0x1234…
Wanneer iemand het contract aanroept: Transactie → EVM-uitvoeringsomgeving │ Stack (256-bits woorden) Geheugen (vluchtig, per aanroep) Opslag (persistent, on-chain) PC (programmateller) │ Opcodes worden één voor één uitgevoerd: PUSH1, ADD, SLOAD, SSTORE, CALL… │ Gasverbruik per opcode │ Resultaat: statuswijziging of terugdraaien
EVM-compatibele blockchains (dezelfde bytecode werkt): Ethereum → Polygon → Arbitrum → Optimism → Avalanche → BNB Chain
| EVM-component | Beschrijving | Volharding |
| Opstapelen | 256-bits woord LIFO-structuur voor berekeningen | Per uitvoering |
| Geheugen | Tijdelijke byte-array voor berekeningen | Per uitvoering |
| Opslag | Sleutel-waardeopslag (32B → 32B) | Permanent (aan de ketting) |
| Oproepgegevens | Invoerparameters van de transactie | Alleen-lezen per oproep |
| Code | Contract-bytecode | Permanent (onveranderlijk) |
In eenvoudige bewoordingen
- De computer van EthereumDe EVM is de motor die slimme contracten uitvoert — elk Ethereum-knooppunt voert identieke code uit, waardoor iedereen het eens is over de resultaten van de contractuitvoering.
- Universele runtimeNet zoals Java's "schrijf één keer, voer overal uit"-principe werkt op elke Java Virtual Machine, werken Solidity-contracten op elke EVM-compatibele blockchain: implementeer één keer, voer overal uit.
- Gas als brandstofElke instructie die de EVM uitvoert, kost gas. Dit voorkomt oneindige lussen (je zou zonder gas komen te zitten), zorgt ervoor dat netwerkbronnen worden betaald en vormt het economische model van Ethereum.
- deterministischeAls je de EVM dezelfde invoer geeft, produceert deze op elk knooppunt wereldwijd altijd dezelfde uitvoer. Deze wiskundige zekerheid maakt vertrouwensloze slimme contracten mogelijk.
- Het EVM-ecosysteemPolygon, Arbitrum, Optimism, BNB Chain en Avalanche gebruiken allemaal identieke EVM-implementaties. Een Uniswap-contract dat op Ethereum is geïmplementeerd, kan naar Polygon worden gekopieerd en werkt daar exact hetzelfde.
Voorbeelden uit de echte wereld
| Scenario | Implementatie | Resultaat |
| Implementatie van het DeFi-protocol | Uniswap V3 Solidity-code → gecompileerd naar EVM-bytecode → geïmplementeerd op Ethereum | Het contract wordt identiek uitgevoerd op elk van de meer dan 10,000 nodes van Ethereum. |
| Multi-chain implementatie | Uniswap gebruikt dezelfde bytecode op Polygon, Arbitrum en Optimism. | EVM-compatibiliteit betekent dat één codebasis miljoenen gebruikers op verschillende blockchains bedient. |
| Flash loan arbitrage | Bot roept Aave flashloan aan → EVM voert 5 contractaanroepen uit → betaalt lening terug in één transactie | Meer dan 100,000 gas aan bewerkingen atomair uitgevoerd door EVM |
| De DAO 2016 | DAO-contract geïmplementeerd op EVM; re-entrancy-kwetsbaarheid misbruikt | EVM voert code getrouw uit — fouten in de code worden ook getrouw uitgevoerd. |
Voordelen
| Voordeel | Beschrijving |
| Deterministische uitvoering | Dezelfde invoer = dezelfde uitvoer op elk knooppunt; vertrouwensloze contractgarantie |
| Beveiliging in een afgeschermde omgeving | EVM isoleert de uitvoering van contracten — bugs kunnen het besturingssysteem van de node niet beïnvloeden. |
| EVM-compatibiliteit | Enorm ecosysteem; één standaard stelt ontwikkelaars in staat om zich op meer dan 20 blockchains te richten. |
| Ontwikkelaarstools | Hardhat, Foundry, Remix en MetaMask zijn allemaal gebouwd rond EVM — een rijk ecosysteem. |
| Gasmeting | Nauwkeurig gemeten kosten van grondstoffen voorkomen misbruik en creëren economische duurzaamheid. |
Nadelen en risico's
| Nadeel | Beschrijving |
| Beperkte prestaties | Stack-gebaseerd ontwerp is niet geoptimaliseerd voor doorvoer — vandaar de noodzaak voor L2-lagen. |
| 256-bits woordoverhead | De woordgrootte van 256 bits van de EVM is inefficiënt voor veel berekeningen (bijvoorbeeld cryptografische krommen). |
| Opslagkosten | SSTORE-bewerkingen (schrijven naar de opslagketen) zijn extreem duur. |
| Beperkte opcodes | Sommige moderne cryptografiemethoden vereisen dure, vooraf gecompileerde oplossingen. |
| Compatibiliteitsknelpunt van EVM | Nieuwe ketens offeren vaak innovatie op om EVM-compatibiliteit te behouden. |
Tips voor risicomanagement:
- Houd er rekening mee dat EVM-compatibiliteit betekent dat de code overdraagbaar is, maar niet dat de beveiliging gegarandeerd is. Audits zijn vereist bij elke implementatie.
- Opslagschrijfbewerkingen (SSTORE) kosten ongeveer 20,000 gas — optimaliseer contracten om on-chain opslag te minimaliseren.
- Test op EVM-testnetwerken (Sepolia, Holesky) vóór de implementatie op het mainnet; het gedrag op EVM is identiek.
FAQ
V: Wat is een EVM-compatibele blockchain?
A: Een blockchain die de Ethereum Virtual Machine of een compatibele implementatie gebruikt, waardoor Ethereum smart contracts zonder aanpassingen kunnen worden ingezet. Voorbeelden: Polygon, BNB Chain, Avalanche C-Chain, Arbitrum, Optimism, Fantom, Cronos.
V: Is de EVM de enige virtuele machine voor slimme contracten?
A: Nee — alternatieven zijn onder andere Solana's Sealevel (parallelle uitvoering), WASM (WebAssembly — gebruikt door Near, Cosmos-ketens, Polkadot) en Move VM (Aptos, Sui). Elk heeft zijn eigen afwegingen op het gebied van prestaties en beveiliging.
V: Wat zijn EVM-opcodes?
A: EVM-opcodes zijn de basisinstructies die de EVM begrijpt — PUSH (waarde toevoegen aan stack), ADD (de bovenste twee waarden van de stack optellen), SLOAD (geheugen lezen), SSTORE (geheugen schrijven), CALL (ander contract aanroepen), enzovoort. Elk heeft een gedefinieerde gaskost.
V: Waarom kan de EVM niet sneller werken?
A: De uitvoering van EVM's is inherent sequentieel op L1 — elk knooppunt voert alle transacties uit om consensus te behouden. Parallellisatie vereist andere architecturen (Solana's Sealevel, Ethereum's toekomstige PBS/danksharding). L2-rollups versnellen de doorvoer door de EVM-uitvoering off-chain uit te voeren.
V: Wat is het verschil tussen "EVM-equivalentie" en "EVM-compatibiliteit"?
A: EVM-compatibiliteit betekent dat de blockchain de meeste EVM-bytecode kan uitvoeren met enkele aanpassingen. EVM-equivalentie (zoals beweerd door sommige optimistische rollups) betekent dat de uitvoering byte voor byte identiek is aan de EVM van Ethereum — er zijn helemaal geen aanpassingen nodig.
UPay-tip: Het is goed om te weten dat de meeste grote blockchains die niet op Ethereum gebaseerd zijn, eigenlijk EVM-compatibel zijn. Dit betekent dat je Solidity-vaardigheden voor smart contracts ook toepasbaar zijn op Polygon, Arbitrum, Avalanche en BNB Chain. Investeren in Ethereum-ontwikkeling geeft je toegang tot het volledige EVM-ecosysteem.
Disclaimer: Deze inhoud is uitsluitend bedoeld voor educatieve doeleinden en vormt geen financieel of beleggingsadvies. Doe altijd uw eigen onderzoek voordat u financiële beslissingen neemt.
UPay — Crypto encyclopedisch maken









