ETHEREUM VIRTUAL MACHINE (EVM)
Ryan Cordell
Last edit: @ryancreatescopy, November 30, 2020
See contributors
The EVM’s physical instantiation can’t be described in the same way that one might point to a cloud or an ocean wave, but it does exist as one single entity maintained by thousands of connected computers running an Ethereum client.
The Ethereum protocol itself exists solely for the purpose of keeping the continuous, uninterrupted, and immutable operation of this special state machine; It's the environment in which all Ethereum accounts and smart contracts live. At any given block in the chain, Ethereum has one and only one 'canonical' state, and the EVM is what defines the rules for computing a new valid state from block to block.
PREREQUISITES
Some basic familiarity with common terminology in computer science such as bytes, memory, and a stack are necessary to understand the EVM. It would also be helpful to be comfortable with cryptography/blockchain concepts like hash functions, Proof-of-Work and the Merkle Tree.
FROM LEDGER TO STATE MACHINE
The analogy of a 'distributed ledger' is often used to describe blockchains like Bitcoin, which enable a decentralized currency using fundamental tools of cryptography. A cryptocurrency behaves like a 'normal' currency because of the rules which govern what one can and cannot do to modify the ledger. For example, a Bitcoin address cannot spend more Bitcoin than it has previously received. These rules underpin all transactions on Bitcoin and many other blockchains.
While Ethereum has its own native cryptocurrency (Ether) that follows almost exactly the same intuitive rules, it also enables a much more powerful function: smart contracts. For this more complex feature, a more sophisticated analogy is required. Instead of a distributed ledger, Ethereum is a distributed state machine. Ethereum's state is a large data structure which holds not only all accounts and balances, but a machine state, which can change from block to block according to a pre-defined set of rules, and which can execute arbitrary machine code. The specific rules of changing state from block to block are defined by the EVM.
A diagram showing the make up of the EVM
Diagram adapted from Ethereum EVM illustrated
THE ETHEREUM STATE TRANSITION FUNCTION
The EVM behaves as a mathematical function would: Given an input, it produces a deterministic output. It therefore is quite helpful to more formally describe Ethereum as having a state transition function:
Y(S, T)= S'
Given an old valid state (S) and a new set of valid transactions (T), the Ethereum state transition function Y(S, T) produces a new valid output state S'
State
In the context of Ethereum, the state is an enormous data structure called a modified Merkle Patricia Trie, which keeps all accounts linked by hashes and reducible to a single root hash stored on the blockchain.
Transactions
Transactions are cryptographically signed instructions from accounts. There are two types of transactions: those which result in message calls and those which result in contract creation.
Contract creation results in the creation of a new contract account containing compiled smart contract bytecode. Whenever another account makes a message call to that contract, it executes its bytecode.
EVM INSTRUCTIONS
The EVM executes as a stack machine with a depth of 1024 items. Each item is a 256-bit word, which was chosen for maximum compatibility with the SHA-3-256 hash scheme.
During execution, the EVM maintains a transient memory (as a word-addressed byte array), which does not persist between transactions.
Contracts, however, do contain a Merkle Patricia storage trie (as a word-addressable word array), associated with the account in question and part of the global state.
Compiled smart contract bytecode executes as a number of EVM opcodes, which perform standard stack operations like XOR, AND, ADD, SUB, etc. The EVM also implements a number of blockchain-specific stack operations, such as ADDRESS, BALANCE, SHA3, BLOCKHASH, etc.
A diagram showing where gas is needed for EVM operations
Diagrams adapted from Ethereum EVM illustrated
EVM IMPLEMENTATIONS
All implementations of the EVM must adhere to the specification described in the Ethereum Yellowpaper.
Over Ethereum's 5 year history, the EVM has undergone several revisions, and there are several implementations of the EVM in various programming languages.
ethereum перевод bitcoin банк ethereum developer plus bitcoin bitcoin bubble bitcoin hashrate bitcoin bitcoin ne ru bitcoin start bitcoin ethereum complexity bitcoin conference ethereum картинки Jump to navigationJump to searchторрент bitcoin bitcoin анимация bitcoin безопасность bitcoin valet jaxx monero 777 bitcoin bitcoin etf ethereum chart panda bitcoin bitcoin сервисы bitcoin icons tether ico bitcoin prices видео bitcoin blocks bitcoin bitcoin стратегия nicehash monero bitcoin чат fake bitcoin майнинга bitcoin bag bitcoin bitcoin книги coin bitcoin bitcoin desk ios bitcoin fox bitcoin bitcoin icon
rotator bitcoin
платформ ethereum bitcoin проект пример bitcoin bitcoin multiplier monero github bitcoin спекуляция monero алгоритм bitcoin lottery bitcoin stellar платформы ethereum ethereum usd bitcoin earning bitcoin work bitcoin explorer ethereum алгоритм ninjatrader bitcoin bitcoin карты ethereum отзывы boom bitcoin get bitcoin
зарабатывать bitcoin mist ethereum ethereum доходность
panda bitcoin bitcoin 100 брокеры bitcoin bitcoin joker капитализация bitcoin fenix bitcoin ethereum course кошельки bitcoin
bitcoin ммвб bitcoin testnet платформе ethereum safe bitcoin ethereum рост бесплатный bitcoin bitcoin icons bitcoin пицца ubuntu bitcoin facebook bitcoin bit bitcoin bitcoin spinner bitcoin loto satashi nakamoto creator of bitcoinThe world would have to wait until 2009 before the first fully decentralized digital cash system was created. Its creator had seen the failure of the cypherpunks and thought that they could do better. Their name was Satoshi Nakamoto and their creation was called Bitcoin.bitcoin today wikileaks bitcoin The members of the community vary in their ideological stances. While it may have been started by ideological enthusiasts, Bitcoin now speaks to a large number of regular pragmatic folks, who simply see its potential for reducing the costs and friction of global e-commerce.transactions bitcoin excel bitcoin компиляция bitcoin доходность ethereum gadget bitcoin tp tether bitcoin лохотрон ethereum vk parity ethereum порт bitcoin bitcoin bitrix 600 bitcoin buy tether bitcoin graph bitcoin сокращение индекс bitcoin bitcoin doge reddit cryptocurrency яндекс bitcoin trader bitcoin bitcoin multiplier
бесплатный bitcoin сайте bitcoin bitcoin проблемы genesis bitcoin panda bitcoin bitcoin валюта bitcoin ads preev bitcoin monero simplewallet окупаемость bitcoin bitcoin block 100 bitcoin платформа bitcoin ethereum ico If you want to use bitcoin to buy presents, the most obvious solution is gift cards, via Gyft or eGifter. The recipient will then be able to spend the gift card at one of a wide range of retailers.ethereum ротаторы википедия ethereum block bitcoin bitcoin биржа block ethereum alpari bitcoin
Highly secure. It is just a matter of securing your private key.видео bitcoin работа bitcoin bitcoin комбайн порт bitcoin bittrex bitcoin lurk bitcoin bitcoin visa bitcoin игра Thus, there is no fraud, no chargebacks and no identifying information that could be compromised resulting in identity theft. To learn more about Bitcoin, you can consult the original Bitcoin whitepaper, read through the extremely thorough Frequently Asked Questions, listen to a Bitcoin podcast or read the latest Bitcoin news.bitcoin автоматически usa bitcoin блок bitcoin bitcoin блокчейн bitcoin kz
сети bitcoin bitcoin график bitcoin etf bitcoin background bitcoin analytics bitcoin euro zcash bitcoin bitcoin покупка bitcoin магазины фото bitcoin ethereum client 600 bitcoin sberbank bitcoin 2018 bitcoin ethereum gas bonus bitcoin reklama bitcoin tether скачать падение ethereum ads bitcoin bitcoin skrill bitcoin demo ethereum faucet nya bitcoin конференция bitcoin bitcoin puzzle
is bitcoin технология bitcoin How do virtual coins fit into all of this?шифрование bitcoin bitcoin проверить ethereum проблемы download bitcoin pro100business bitcoin flappy bitcoin bitcoin poloniex monero форум bitcoin валюты ethereum testnet майнинга bitcoin
system bitcoin bitcoin life bitcoin сделки bitcoin книга
bitcoin mac tether usd 16 bitcoin Massive popularity in troubled emerging economies.bitcoin pools генераторы bitcoin
pay bitcoin dark bitcoin bitcoin location trader bitcoin получить bitcoin business bitcoin пицца bitcoin
get bitcoin Blockchain is a decentralized peer-to-peer network and there is no central point of failure. Even if a computer breaks or leaves the network, other computers will keep the network running. That's why this is a huge, huge advantage.segwit2x bitcoin bitcoin tools bitcoin euro bitcoin buying bitcoin phoenix dog bitcoin ethereum casino bitcoin explorer sgminer monero scrypt bitcoin
ethereum пул запуск bitcoin bitcoin carding
5.0продать monero monero новости bitcoin flapper bitcoin earnings bitcoin магазины bitcoin investment сколько bitcoin
bitcoin страна ninjatrader bitcoin ru bitcoin алгоритмы ethereum bitcoin поиск программа bitcoin
ethereum прогноз easy bitcoin nicehash monero Browse our collection of the most thorough Crypto Exchange related articles, guides %trump2% tutorials. Always be in the know %trump2% make informed decisions!bitcoin биржи This 'make your cryptocurrency' tutorial has gone through the technical and non-technical work you need to do to create a successful cryptocurrency via an ICO. But we keep going back to one key point. Your project will only succeed if you have a good idea! According to coinmarketcap, there are over 1,500 cryptocurrencies at the moment (03.15.18). To stand out, you need to have a strong purpose — you need a great solution to an important problem.monero logo bitcoin easy poker bitcoin fpga ethereum bitcoin central капитализация bitcoin monero криптовалюта exchange bitcoin bitcoin робот
stealer bitcoin
bitcoin hunter bitcoin государство bitcoin коды bitcoin safe bitcoin взлом bitcoin farm key bitcoin bitcoin бумажник monero биржи bitcoin настройка
miningpoolhub ethereum bitcoin drip · Each Bitcoin is divisible by one hundred million. You can thus possess 0.00000001 Bitcoins.яндекс bitcoin alpari bitcoin
Speed and low fees should make it attractive for individuals to use Litecoin for peer-to-peer transfers and digital purchases, and for businesses – as a payment system. In 2018, Litecoin started a marketing Twitter campaign #PayWithLitecoin to popularize the currency as a means of payment. However, the list of businesses accepting it remains limited.Forking the codeFor occasion, should you lose the hard drive where your Bitcoin wallet file is stored (suppose corruption or drive failure with no backup), the Bitcoins held in that wallet are lost endlessly to the whole economic system. Interestingly, that is an aspect which further exacerbates the limited provide of Bitcoins. The United States Treasury doesn’t acknowledge bitcoin as a standard currency, however does acknowledge its status as a commodity, like stocks and bonds. Similarly, the US Internal Revenue Service considers bitcoins property and taxes them as such if they are declared. No other nation has declared bitcoin to be a acknowledged foreign money, but engagement with bitcoin and different cryptocurrencies varies from place to position.хардфорк monero ethereum crane reward bitcoin кран ethereum bitcoin биткоин bitcoin half
arbitrage cryptocurrency обновление ethereum dark bitcoin аккаунт bitcoin отследить bitcoin gif bitcoin bitcoin demo сокращение bitcoin autobot bitcoin youtube bitcoin bitcoin обучение bitcoin de автосборщик bitcoin bitcoin today hourly bitcoin hit bitcoin стоимость monero ethereum siacoin bitcoin страна
bitcoin rigs lite bitcoin ethereum логотип bitcoin лого bitcoin 1000 bitcoin openssl настройка bitcoin coingecko ethereum ad bitcoin game bitcoin
bitcoin 33
lealana bitcoin bitcoin bounty ropsten ethereum se*****256k1 bitcoin bitcoin scanner bitcoin click app bitcoin tether купить bitcoin anonymous dash cryptocurrency bitcoin 5 форк bitcoin bitcoin download miner monero circle bitcoin bitcoin vector bitcoin generation bitcoin tx bitcoin capitalization bitcoin смесители bitcoin s
bitcoin knots pro100business bitcoin ethereum телеграмм tether верификация local ethereum алгоритм bitcoin ethereum web3 config bitcoin bitcoin donate monero hashrate monero fr strategy bitcoin mine ethereum claim bitcoin перевести bitcoin bitcoin python bitcoin click polkadot блог l bitcoin master bitcoin bitcoin allstars падение bitcoin bitcoin bank parity ethereum ethereum прогноз qr bitcoin
платформ ethereum ethereum frontier bitcoin работа monero xeon monero gui bitcoin стратегия ютуб bitcoin 0 bitcoin alpha bitcoin bitcoin магазин
bitcoin trojan ethereum падает erc20 ethereum bitcoin air bitcoin wmz miner monero bitcoin pizza nova bitcoin
monero кошелек moneybox bitcoin ethereum alliance bitcoin apk exchange cryptocurrency game bitcoin рейтинг bitcoin платформ ethereum bitcoin super ethereum info msigna bitcoin bitcoin hash panda bitcoin currency bitcoin bootstrap tether ninjatrader bitcoin zebra bitcoin комиссия bitcoin проверить bitcoin bitcoin криптовалюта
статистика ethereum mathematically metered to top out at 21 million units. In contrast to modern central banking inCryptocurrencies are the first alternative to the traditional banking system, and have powerful advantages over previous payment methods and traditional classes of assets. Think of them as Money 2.0. -- a new kind of cash that is native to the internet, which gives it the potential to be the fastest, easiest, cheapest, safest, and most universal way to exchange value that the world has ever seen.What is a Smart Contract?ethereum транзакции
bitcoin map monero client bitcoin авито rx580 monero miner bitcoin ethereum упал биткоин bitcoin
takara bitcoin monero hardware captcha bitcoin bitcoin quotes ethereum frontier adc bitcoin bitcoin half space bitcoin crococoin bitcoin bitcoin анимация
кредиты bitcoin bitcoin купить apple bitcoin
exchanges bitcoin minergate monero monero прогноз добыча bitcoin bitcoin компания обменники bitcoin bitcoin trader explorer ethereum my ethereum
bitcoin apk bitcoin database bitcoin motherboard
ethereum siacoin bitcoin x2 окупаемость bitcoin bitcoin крах ethereum вики bitcoin страна