Ethereum implementa um ambiente de execução no blockchain, chamado Ethernet Virtual Machine EVM.
Cada nó que participa da rede executa o EVM como parte do protocolo de validação de bloco. Eles validam cada transação coberta no bloco e executam o código acionado pela troca no EVM. Cada nó completo da rede realiza os mesmos cálculos e armazena os mesmos valores. O fato de a execução do contrato ser repetida várias vezes em todos os nós torna a execução do contrato cara para consumir, por isso também leva todos a não colocarem nenhum cálculo que possa ser executado fora da cadeia no blockchain.
Para cada comando executado existe um consumo específico, contado em unidades de Gás. Cada comando que um contrato pode utilizar terá um valor de Gas correspondente.
