{"id":37750,"date":"2022-09-02T20:17:21","date_gmt":"2022-09-02T17:17:21","guid":{"rendered":"https:\/\/forklog.com\/en\/?p=37750"},"modified":"2025-08-29T20:48:37","modified_gmt":"2025-08-29T17:48:37","slug":"what-is-the-ethereum-virtual-machine-evm","status":"publish","type":"post","link":"https:\/\/forklog.com\/en\/what-is-the-ethereum-virtual-machine-evm\/","title":{"rendered":"What is the Ethereum Virtual Machine (EVM)?"},"content":{"rendered":"<div class=\"wp-block-text-wrappers-cards single_card\">\n<h2 class=\"card_label\">Key points<\/h2>\n<ul class=\"wp-block-list\">\n<li>The Ethereum Virtual Machine (EVM) is a distributed computing environment that executes algorithms on the Ethereum network known as smart contracts.<\/li>\n<li>The EVM is <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9F%D0%BE%D0%BB%D0%BD%D0%BE%D1%82%D0%B0_%D0%BF%D0%BE_%D0%A2%D1%8C%D1%8E%D1%80%D0%B8%D0%BD%D0%B3%D1%83\" target=\"_blank\" rel=\"noreferrer noopener\">Turing-complete<\/a>, meaning it can, in theory, process any computation that a general-purpose computer can, given sufficient resources.<\/li>\n<li>To pay for executing smart contracts, the EVM uses \u201cgas\u201d (gwei), included in the transaction cost. The amount of gas a user must pay depends on computational complexity and current congestion on the Ethereum blockchain.<\/li>\n<\/ul>\n<\/div>\n<div class=\"wp-block-text-wrappers-cards single_card\">\n<h2 class=\"card_label\">Creator of the EVM<\/h2>\n<p>The concept of the Ethereum Virtual Machine was set out in the <a href=\"http:\/\/gavwood.com\/paper.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">\u201cYellow Paper\u201d<\/a> in 2015 by Gavin Wood, co-founder of Ethereum and then CTO of the Ethereum Foundation. He also created Solidity, the programming language used to build smart contracts on Ethereum. In 2016 Wood left Ethereum to develop a new project \u2014 <a href=\"https:\/\/forklog.com\/en\/news\/what-is-polkadot-dot\">Polkadot<\/a>.<\/p>\n<\/div>\n<div class=\"wp-block-text-wrappers-cards single_card\">\n<h2 class=\"card_label\">What the Ethereum Virtual Machine is for<\/h2>\n<p>Think of the EVM as a set of distributed computers that compute under the same rules within a single network, without a central authority.<\/p>\n<p>Unlike the Bitcoin protocol, which is presented as a distributed ledger, Ethereum <a href=\"https:\/\/ethereum.org\/ru\/developers\/docs\/evm\/#evm-implementations\" target=\"_blank\" rel=\"noreferrer noopener\">represents<\/a> a large data structure whose processing and modification are handled by the EVM. Any code included in an Ethereum block runs on each of tens of thousands of virtual machines independently.<\/p>\n<p>The EVM ensures that all transactions and smart contracts on Ethereum are executed according to established rules and the contract\u2019s code. It is the platform that executes token operations on Ethereum, invoking smart contracts and altering account balances and application states.<\/p>\n<\/div>\n<div class=\"wp-block-text-wrappers-cards single_card\">\n<h2 class=\"card_label\">The role of \u201cgas\u201d in the EVM<\/h2>\n<p>Gas (gwei) in Ethereum functions as an internal currency used to pay for operations performed on the EVM. One gwei equals 0.000000001 ETH. Gas in Ethereum is analogous to fuel: a user must \u201cfill up\u201d a transaction before it can move.<\/p>\n<p>The gas limit for each transaction varies with the operation\u2019s complexity and Ethereum\u2019s network load. For example, in mid\u20112021, amid frenzied demand for the meme coin Shiba Inu, the average Ethereum transaction fee reached $60, a Uniswap swap cost $135, and a Compound deposit exceeded $200. The main reason was heavy blockchain congestion \u2014 many users were simultaneously transacting with <a href=\"https:\/\/forklog.com\/en\/news\/what-is-shiba-inu-shib\">Shiba Inu<\/a>.<\/p>\n<p>If an operation proves too complex, the supplied gas limit may be insufficient, and the EVM will stop processing; the transaction will not be recorded on the Ethereum blockchain.<\/p>\n<p>Without gas as payment for EVM work, computations could loop indefinitely and overload the network. Gas therefore acts as protection against abuse and attacks.<\/p>\n<\/div>\n<div class=\"wp-block-text-wrappers-cards single_card\">\n<h2 class=\"card_label\">Where the EVM is used<\/h2>\n<p>Although many crypto projects use their own virtual machines, Ethereum is not the only platform that runs the EVM. Examples include:<\/p>\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/forklog.com\/en\/news\/what-is-ethereum-classic-and-the-etc-cryptocurrency\">Ethereum Classic<\/a>. A platform for creating and executing smart contracts based on Proof\u2011of\u2011Work.<\/li>\n<\/ul>\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/forklog.com\/en\/news\/what-is-vechain-and-the-vet-cryptocurrency\">VeChain<\/a>. A blockchain built on a Proof\u2011of\u2011Authority consensus mechanism.<\/li>\n<\/ul>\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/forklog.com\/en\/news\/what-is-fantom-ftm\">Fantom<\/a>. A smart\u2011contract platform that uses a directed acyclic graph (DAG) and is fully compatible with the EVM.<\/li>\n<\/ul>\n<ul class=\"wp-block-list\">\n<li>Polygon. A network of protocols and blockchains built on top of Ethereum.<\/li>\n<\/ul>\n<\/div>\n<div class=\"wp-block-text-wrappers-cards single_card\">\n<h2 class=\"card_label\">EVM\u2011compatible blockchains<\/h2>\n<p>The Ethereum Virtual Machine has drawbacks, including high data\u2011storage costs, limited scalability, high gas prices during congestion, and notable constraints on smart\u2011contract programming.<\/p>\n<p>EVM\u2011compatible networks address these issues by providing an execution environment similar to the EVM but with much cheaper transactions thanks to scaling solutions. This lets developers of decentralised applications in the Ethereum ecosystem migrate to more scalable blockchains without rewriting contracts from scratch.<\/p>\n<p>One group of such solutions is sidechains. They may use separate blockchains with their own consensus algorithms and block parameters while retaining an EVM\u2011compatible virtual machine. Examples of Ethereum sidechains include Matic (Polygon PoS), Gnosis Chain and Loom Network.<\/p>\n<p>Another option is <a href=\"https:\/\/forklog.com\/en\/news\/what-is-a-layer%e2%80%912-solution-in-blockchain\">Layer\u20112 solutions<\/a> (Layer 2), which rely on rollups. One example is <a href=\"https:\/\/forklog.com\/en\/news\/what-is-optimism-op\">Optimism<\/a>, which uses the Optimistic Rollups protocol. Smart contracts on this blockchain are governed by the EVM, while the rollup protocol performs computation and stores contract state in a separate Optimistic Virtual Machine.<\/p>\n<\/div>\n<div class=\"wp-block-text-wrappers-cards single_card\">\n<h2 class=\"card_label\">The evolution of the Ethereum Virtual Machine (EVM)<\/h2>\n<p>Over the next few years Ethereum is set for a series of major upgrades, the first of which will be The Merge \u2014 a transition to a new Proof\u2011of\u2011Stake consensus algorithm.<\/p>\n<p>In July 2022 Vitalik Buterin <a href=\"https:\/\/twitter.com\/milesdeutscher\/status\/1550315295402668032\" target=\"_blank\" rel=\"noreferrer noopener\">presented<\/a> a step\u2011by\u2011step roadmap for Ethereum. One key milestone is to replace the Ethereum Virtual Machine with a new one \u2014 Ethereum WebAssembly (eWASM).<\/p>\n<p>Although final, detailed eWASM documentation is not yet available, developers <a href=\"https:\/\/ewasm.readthedocs.io\/en\/mkdocs\/\" target=\"_blank\" rel=\"noreferrer noopener\">highlight<\/a> the following advantages:<\/p>\n<ul class=\"wp-block-list\">\n<li>Smart\u2011contract execution speeds close to native;<\/li>\n<li>The ability to write contracts in many popular languages, including C, C++ and Rust;<\/li>\n<li>Access to the vast WebAssembly developer community and tooling.<\/li>\n<\/ul>\n<\/div>\n<div class=\"wp-block-text-wrappers-cards single_card\">\n<h2 class=\"card_label\">Further reading<\/h2>\n<p><a href=\"https:\/\/forklog.news\/cryptorium\/chto-takoe-etherscan\" target=\"_blank\" rel=\"noreferrer noopener\">What is Etherscan?<\/a><\/p>\n<p><a href=\"https:\/\/forklog.news\/cryptorium\/chto-takoe-ethereum-name-service-ens\" target=\"_blank\" rel=\"noreferrer noopener\">What is Ethereum Name Service (ENS)?<\/a><\/p>\n<p><a href=\"https:\/\/forklog.news\/cryptorium\/chto-takoe-tokeny-erc-20\" target=\"_blank\" rel=\"noreferrer noopener\">What are ERC\u201120 tokens?<\/a><\/p>\n<p><a href=\"https:\/\/forklog.news\/cryptorium\/chto-takoe-derevo-merkla\" target=\"_blank\" rel=\"noreferrer noopener\">What is a Merkle tree?<\/a><\/p>\n<p><a href=\"https:\/\/forklog.news\/cryptorium\/chto-takoe-web3-web-3-0\" target=\"_blank\" rel=\"noreferrer noopener\">What is Web3?<\/a><\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>What is the Ethereum Virtual Machine (EVM) for? What are its strengths and weaknesses? Why are some blockchain projects EVM\u2011compatible? Explained in cards.<\/p>\n","protected":false},"author":1,"featured_media":37751,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"select":"1","news_style_id":"1","cryptorium_level":"3","_short_excerpt_text":"","creation_source":"","_metatest_mainpost_news_update":false,"footnotes":""},"categories":[2113],"tags":[2115,46,433,2126],"class_list":["post-37750","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cryptorium","tag-101-technical-foundations","tag-ethereum","tag-evm","tag-kriptorium-ethereum"],"aioseo_notices":[],"amp_enabled":true,"views":"147","promo_type":"1","layout_type":"1","short_excerpt":"","is_update":"","_links":{"self":[{"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/posts\/37750","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/comments?post=37750"}],"version-history":[{"count":1,"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/posts\/37750\/revisions"}],"predecessor-version":[{"id":37752,"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/posts\/37750\/revisions\/37752"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/media\/37751"}],"wp:attachment":[{"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/media?parent=37750"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/categories?post=37750"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/tags?post=37750"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}