How Ethereum Works
Before we find out how Ethereum works, let’s get a better understanding of how the blockchain platform operates. A definition from Ethereum.org states that Ethereum is a decentralized platform for applications that run exactly as programmed without any chance of fraud, censorship or third-party interference.
The blockchain has no central governance and is a distributed computing network which monitors and updates all public records of all transactions. The transactions are run on the network of the computers, which are grouped into “blocks”. Smart contracts (computer protocols intended to facilitate, verify, or enforce the negotiation or performance of a contract or transaction) operate on a blockchain. Smart contract are also called applications.
As a part of Ethereum, applications don’t need to have third party entity to store it and control the data. Ethereum’s and Bitcoin’s protocols are quite similar, but Ethereum goes beyond being just a digital asset and a payment system. On Ethereum platform developers can create applications and agreements that have additional steps, different transactions formats, rules of ownership, etc.
Ethereum’s programming language is Turing complete, meaning that any algorithm can be implemented. It allows developers to create transactions that can dictate specific outcomes. Such flexibility is the Ethereum’s most notable innovation.
Ethereum vs Bitcoin
As it was noted before, the structure of Ethereum – a network which shares all public records of all transactions – is quite similar to Bitcoin’s. Every node on the network stores the entire transactions history. On Ethereum, unlike Bitcoin, nodes store not only the log of transactions, but the most recent state of each smart contract (application) as well. See the chart below for visual representation.
Ethereum blockchain tracks the current information of all the applications, such as each user’s balance, all smart contract codes, etc. Bitcoin tracks the results of transactions, or the current balances of the accounts. When a bitcoin transaction is made, the network “breaks” the amount into several parts of artificial face value , just like it would be with paper banknotes or coins and then issues bitcoins. Bitcoins are marked “spent” or “unspent”. For a transaction, bitcoin network adds up all bitcoins you own.
Ethereum, on the other hand, uses accounts similar to bank accounts. Ethers appear in a wallet and can be allocated to another account.
EVM (Ethereum Virtual Machine)
Any transaction on the Ethereum network is processed by thousands of computers. All computers (nods) execute the transactions, smart contract-specific programming languages, using their EVMs – Ethereum Virtual Machines.
Every node on the network holds a full copy of transactions log and smart contracts history of the network and keep records of the current state. Every time an action is performed, all of the notes will be notified and will have to record this change. This way the whole network will see the latest records and be responsible of transferring the shift from state to state without relying on any third party authority.
Bitcoin miners validate the transfers of Bitcoins from one owner to another. The EVM can run more complex algorithms defined by app developer.
EVM executes computations written in a stack-based bytecode language (the ones and zeroes that a machine can read) or in high level languages such as Solidity and Serpent that can be read by humans.
Ethereum miners ensure that nobody spends Ethers more than once and that unpaid smart contracts are not accepted.
Since blockchain uses all its resources simultaneously. It makes computations on Ethereum quite limited and expensive and therefore the network can be only used for particular use.
Understanding how Ethereum works really comes down to understanding the difference between it’s blockchain technology.