Ethereum & Smart Contracts (Avancé) — Module 3/3 — 20 min

La machine virtuelle Ethereum (EVM)

La Machine Virtuelle Ethereum (EVM)

Qu'est-ce que l'EVM ?

La Ethereum Virtual Machine (EVM) est le cœur technique d'Ethereum. C'est un ordinateur mondial décentralisé qui s'exécute simultanément sur chaque nœud Ethereum dans le monde.

Architecture de l'EVM

L'EVM est une machine à pile (stack machine) avec les composants suivants :

Stack (pile)

  • Stockage temporaire des données pendant l'exécution
  • Profondeur maximale : 1024 éléments
  • Chaque élément fait 256 bits
  • Memory (mémoire)

  • Tableau d'octets accessible en lecture/écriture
  • Temporaire : effacée après chaque transaction
  • Coûte du gas selon la taille utilisée
  • Storage (stockage)

  • Mapping persistant de 256 bits à 256 bits
  • Permanent : persiste entre les transactions
  • Le plus coûteux en gas
  • Bytecode

  • Les smart contracts sont compilés en bytecode EVM
  • Instructions de bas niveau (PUSH, ADD, MLOAD, SSTORE...)
  • Le Gas : le carburant de l'EVM

    Chaque opération sur l'EVM coûte du gas :

  • Opérations simples (addition, soustraction) : 3 gas
  • Écriture en storage : 20 000 gas
  • Création de contrat : 32 000 gas
  • Pourquoi le gas ?

  • Empêche les boucles infinies (Halting Problem)
  • Rémunère les validateurs
  • Régule l'utilisation du réseau
  • Gas Limit vs Gas Price

  • Gas Limit : quantité max de gas que vous acceptez de consommer
  • Gas Price (en Gwei) : prix que vous payez par unité de gas
  • Frais totaux = gas utilisé × gas price
  • EVM-Compatibility

    Un grand nombre de blockchains sont EVM-compatibles, ce qui signifie qu'elles peuvent exécuter du code Ethereum :

  • Polygon, Arbitrum, Optimism (Layer 2)
  • BNB Smart Chain, Avalanche C-Chain
  • Fantom, Cronos
  • Cela permet aux développeurs de déployer leurs applications sur plusieurs chaînes avec peu de modifications.

    Points clés à retenir