Ethereum реализует среду выполнения на блокчейне, называемую виртуальной машиной Ethernet EVM.
Каждый узел, участвующий в работе сети, запускает EVM как часть протокола проверки блока. Они проверяют каждую транзакцию, включенную в блок, и запускают код, запускаемый обменом, в EVM. Каждый полный узел сети выполняет одни и те же вычисления и сохраняет одни и те же значения. Тот факт, что выполнение контракта повторяется несколько раз на всех узлах, приводит к тому, что выполнение контракта становится дорогостоящим, поэтому это также заставляет всех не помещать какие-либо вычисления, которые могут быть выполнены вне цепочки, в блокчейн.
Для каждой выполненной команды существует определенный расход, исчисляемый в единицах Газа. Каждая команда, которую может использовать контракт, будет иметь соответствующее значение Gas.
