Ethereum implémente un environnement d'exécution sur la blockchain, appelé Ethernet Virtual Machine EVM.
Chaque nœud qui participe aux exécutions du réseau exécute l'EVM dans le cadre du protocole de validation de bloc. Ils valident chaque transaction couverte dans le bloc et exécutent le code déclenché par l'échange dans l'EVM. Chaque nœud complet du réseau effectue les mêmes calculs et stocke les mêmes valeurs. Le fait que l’exécution du contrat soit répétée plusieurs fois sur tous les nœuds doit rendre l’exécution du contrat coûteuse à consommer, ce qui incite également tout le monde à ne placer aucun calcul pouvant être effectué hors chaîne sur la blockchain.
Pour chaque commande exécutée, il y a une consommation spécifique, comptée en unités de Gaz. Chaque commande qu'un contrat peut utiliser aura une valeur de gaz correspondante.
