What’s most fascinating about Ethereum is perhaps how effortlessly it has managed to expand the blockchain space and broaden the scope of what could be achieved with blockchain technology. So how did Ethereum do it?
What is Ethereum and how it works?
Ethereum, arguably the most significant blockchain project apart from the original Bitcoin, was designed to fulfil an ambitious goal. Ethereum’s inventor Vtalik Buterin envisioned a future for the blockchain space where instead of having separate blockchain protocols serving specific use cases, there would be one chain capable of supporting a host of different applications. A Turing-complete blockchain capable of understanding a general-purpose programming language.
Proof of work
Ethereum was Buterin’s attempt to bring that vision to life and this informs much of the protocol’s core design. But Ethereum also follows the core blockchain principles introduced by Bitcoin. For a detailed look into those we recommend checking our “What is Blockchain” article, as well as our in-depth series on the subject. but in this section, we give you the basics.
At its core, the current version Ethereum is a proof-of-work protocol that governs an ever-growing database consisting of cryptographically chained data blocks (hence the name, blockchain). New blocks are created by validators, commonly referred to as miners. The way this works is that a miner takes a certain amount of data items (for example, records of transactions broadcast to the Ethereum network) and organizes them into a block. The miner then adds in a special number, known as a proof-of-work, that ensures that the data contained in the block produces a certain output when run through a type of algorithm called a “cryptographic hash function”.
The key here is that finding such a number requires a lot of computational work, but verifying whether that work has been performed is quite easy – you just check whether the provided input produces the required output. To make the whole system more resistant to data manipulation, each new block also contains the proof-of-work of the last block in the chain.
For their efforts, miners are rewarded with tokens, also known as cryptocurrencies, native to the particular blockchain protocol. Ethereum’s native cryptocurrency is called Ether (ETH).
Ethereum Virtual Machine
The Ethereum Virtual Machine (EVM) is at the heart of Ethereum’s blockchain innovation. The EVM is maintained by all participants in the Ethereum network, or in other words, thousands of connected computers running an Ethereum client. As the folks at ethereum.org put it: “The Ethereum protocol itself exists solely for the purpose of keeping the continuous, uninterrupted and immutable operation of this special state machine.” That’s why Ethereum is often described as a ‘decentralized world computer’.
So what does the EVM do? Well, to put it simply, the EVM provides the environment where all Ethereum accounts exist and enables one of Ethereum’s defining features –
There are two types of Ethereum accounts – Externally-owned and Contract accounts. The former can be controlled by anyone who has its associated private keys. The latter are controlled by code and represent smart contracts that have been deployed to the network.
A smart contract essentially a software program that automatically performs operations if certain conditions are met. The operations that can be performed by a given contract, as well as its triggers, are specified in its associated code and there are no limits to the allowable complexity due to Ethereum’s Turing-complete nature.
Before we move on with explaining what is ethereum and how a smart contract is deployed, we first need to understand how Ethereum transactions work. Unlike protocols like Bitcoin, where transactions are used only to transfer value, Ethereum uses transactions to enable interaction between accounts through messages. This allows for transactions to be used for a variety of purposes, including creating smart contracts.
So deploying a smart contract to the network requires sending a transaction containing the contract’s code. Meanwhile, triggering a smart contract can be accomplished by sending Ether or messages to its address.
Based on their code, smart contracts can execute a variety of actions, including transferring tokens, triggering other contracts or even creating new contracts. However, keep in mind that once it has been deployed, a smart contract cannot be changed, thus its code should be carefully considered beforehand.
What is Ether?
But what about Ether, the native token of the Ethereum network? Well, as mentioned above, ETH is minted as a reward for adding valid blocks to the blockchain. This is the same mechanism employed by other blockchain protocols such as Bitcoin. Also like Bitcoin, ETH is used to pay transaction fees, which are given as an incentive for miners to include transactions in blocks. Generally, if a user wants their transaction to be processed more quickly, they need to pay a higher fee, especially if the network is busy.
So far, everything sounds very straightforward, but there is one little detail to keep in mind when it comes to fees – they are paid in a special unit called gas. This might seem contradictory to the previous statement regarding how Ether is used to pay fees, but that statement is actually accurate because gas costs Ether. More specifically, 1 gas unit costs 1 Gwei, a denomination of Ether equal to 0.000000001 ETH.
So what is the purpose of this extra level of complexity? Well, by having a dedicated unit for transaction fees, the network can always make a clear distinction between the cost for using the EVM and the Ether that exists in Ethereum accounts. You can view gas as a measure of the computational power required to execute specific operations, such as crypto transfers and smart contract deployment, on the Ethereum network.
In essence, gas not only fuels the Ethereum network, but it also acts as a safeguard against bad actors spamming the network. Each transaction is required to set a gas limit to prevent accidental or hostile infinite loops or other waste of computational resources due to unoptimized code.
How is Ethereum used today
By complementing the core strengths of blockchain technology with the flexibility and versatility afforded by smart contracts, Ethereum has enabled a wide range of powerful and inventive applications. The platform is home to a wide range of projects and has even helped to kickstart some of today’s leading blockchain platforms. So let’s take a look at some of the most impressive applications of Ethereum:
- Tokenization: If you open a cryptocurrency market tracker, you’ll see that there are currently over 8,500 cryptocurrencies. It’s not an exaggeration to say that a good chunk of those either live on the Ethereum network or was born on Ethereum before migrating to their own mainnets. Many Ethereum-based tokens were created via initial coin offerings (ICOs) – a novel fundraising mechanism that proved somewhat controversial, but played an important role in fleshing out the tokenization concept. Ethereum-powered tokenization has produced a diverse range of crypto assets, such as utility tokens, governance tokens, stablecoins, tokenized assets, and non-fungible tokens.
- dApps: The main goal of Ethereum is to enable and support decentralized applications, which do not rely on centralized servers to operate. Currently, the Ethereum ecosystem supports a wide range of dApps, including collectable games, decentralized exchanges, enterprise-grade solutions, and DeFi (decentralized finance) services.
- DAOs: Decentralized autonomous organizations, or DAOs, are entities that are governed by rules that are encoded in smart contracts. This way, the organization doesn’t have to rely on a central governing body.
Ethereum 2.0 and beyond
Now, what is Ethereum 2.0? The history of Ethereum has shown us that the platform constantly seeks and finds new ways to grow, evolve and inspire innovation. And the latest and most ambitious chapter in Ethereum’s development has already begun. Late last year, Ethereum started its transition to Ethereum 2.0. Through a series of upgrades, Ethereum is expected to move from proof-of-work to a proof-of-stake consensus mechanism, which will decrease the need for computational power and lower transaction fees. Additionally, Ethereum 2.0 will introduce a solution designed to lower the load on the main Ethereum chain. You can learn more about the project here.
Ethereum 2.0 is expected to be finalized in 2022. It remains to be seen whether the transition will be able to strengthen Ethereum’s position as the leading general-purpose blockchain protocol, or some of its alternatives will manage to challenge its dominance.