Ethereum is a distributed computing and smart contract platform, founded by Vitalik Buterin in 2013. Through its native, Turing-complete scripting language, Solidity, it enables arbitrarily complex smart contracts on the Ethereum Virtual Machine. The development of Ethereum and general purpose smart contracts can be seen as an iteration on a perceived shortcoming in Bitcoin, which does not support robust scripting. The native token, Ether, is used to purchase computational resources on the network. The current implementation utilizes the ASIC-resistant PoW mining algorithm Ethash, with a transition to PoS planned in 2019. Ethereum was the most popular platform for launching ICOs in 2017 and 2018, due to its flexibility and robust developer toolkits. The project was funded through a crowdsale in mid-2014, which raised over $18 million for development through the Ethereum Foundation. The network hard forked in 2016 after the DAO hack, with the Ethereum Classic project representing those who opposed the fork.
Solidity is a high-level programming language used natively in Ethereum to code smart contracts. Solidity is Turing-complete, which allows developers to create smart contracts of arbitrary complexity for a wide variety of applications. The high-level Solidity code is later compiled into byte code that gets uploaded on the Ethereum blockchain. The network token, Ether (ETH), functions as a payment system to execute smart contracts on the network. Broadly, smart contracts are coded protocols that execute digital contracts according to specified parameters. Whereas cryptocurrencies such as Bitcoin are transferred on manual user command, Ethereum assets (ETH and ERC20 tokens) can be transferred according to defined conditions, such as date, price, etc. This general functionality provides a wide variety of use cases for dApps (decentralized applications) built on Ethereum, such as finance, IoT, and gambling.
Users can create and transact meta-tokens using the same address and consensus infrastructure as the primary Ethereum blockchain. They can represent a variety of fungible, tradeable assets or enable usage in particular dApps. The most widely used token standard is ERC20, which defines various functionality parameters for these meta-tokens. This framework is broadly used in ICOs as a turn-key distribution mechanism, where a smart contract written in Solidity distributes tokens automatically to contributors. Ethereum-based public ICOs raised nearly $20 billion in 2017 and 2018, before declining in popularity due to a variety of factors including regulatory uncertainty and broader market conditions. OmiseGO, Basic Attention Token, and Binance Coin are examples of prominent ERC20 tokens.
While ERC20 tokens are the most common token standard built on the Ethereum protocol, the arbitrarily complex Solidity language allows developers to create alternative structures to track different types of assets. For example, the ERC-721 Non-Fungible Token (NFT) standard is used to represent unique digital assets such as collectibles or in-game items. The ERC-721 standard rose to prominence in late 2017 with the rapid growth in Cryptokitties, which represents breed-able cats as unique tokens. Other major NFT projects include Decentraland, where tokens represent land in a virtual reality world, and Urbit, where tokens represent identities in an alternative Web architecture. Such NFTs, with more complex underlying token contracts, require more gas fees than ERC20 tokens.
In contrast to Bitcoin’s UTXO system that records a list of “unspent” amounts sent to a user, Ethereum uses an account model to record transactions on chain. This is a ‘state based’ global system that records the net balance of credits and debits as an account value. Individual ETH are more difficult to track because they are added and subtracted to user balances. A transaction is valid if one can prove ownership over the account and the account’s balance is sufficient. This approach reduces the amount of storage space needed on chain, since each node only has to store a single value per address, and increases the fungibility of ETH.
The Ethereum codebase is open source, and a distributed group of core developers are responsible for development and updates. The Ethereum Foundation is a Swiss non-profit organization that facilitates development and governance of the protocol, though it does not have legal control. A portion of the funds raised in the crowdsale were allocated to the Foundation to facilitate future development. Vitalik Buterin is the founder and public face of Ethereum, and has significant influence over the project’s direction and governance.
Though Ethereum has emerged as a popular protocol over the past three years, it has faced various governance and scaling issues in the process. In 2016, users exploited a security vulnerability in the DAO, an early tokenized investment fund and decentralized autonomous organization, to siphon off 3.6 out of 11.5 million ETH under its control. In response to this attack, the community elected to hard fork the protocol to an earlier state in order to refund the lost ETH. Some users took issue with this decision to alter a supposedly immutable blockchain, and in response formed a competing implementation, Ethereum Classic.
Ethereum has also faced scaling issues throughout its history, as the current protocol implementation only supports ~15 transactions per second and the demand for both ETH and Ethereum-based metatokens has grown over the past several years. This issue became particularly topical in late 2017 during a surge of popularity for Cryptokitties, and transactions for all Ethereum-based assets were delayed and transactions fees rose considerably. Future development of the sharding-based Proof of Stake protocol Casper aim to alleviate these scaling bottlenecks.
Since Ethereum's launch as the first smart contract platform, several other such platforms have emerged as alternatives with varying architectures and design considerations, including:
- EOS - a Delegated Proof of Stake platform where 21 elected nodes validate transactions
- Cardano - a Proof of Stake platform emphasizing scalability and an incentivized treasury model
- NEO - a China-based Proof of Stake platform supporting several programming languages
- Tezos - a Proof of Stake platform emphasizing formal governance and verficiation of smart contracts
- Zilliqa - a Proof of Stake platform implementing sharding as an original feature
The native network token, Ether, is a payment token that purchases computational resources on the Ethereum Virtual Machine. This concept of ‘gas’ payments is central to the Ethereum system; broadly, it provides an economic incentive for nodes to use their computational resources to run and store contracts on the Ethereum network. Gas is a fractional amount of ETH paid to nodes, with the amount depending on the complexity of the code. This acts as a spam-prevention mechanism and prevents major inefficiency. The amount of ETH paid for a transaction or contract execution, the gas cost, is the product of the amount of computational work necessary and the amount that the transaction is willing to pay per computational step. This is analogous to time worked wage. Users can expedite their transaction by specifying a high gas price, effectively offering nodes a higher return on their computational resources. ETH can also be used outside of the smart contracts functionality as a payment system. Unlike many cryptocurrencies, the future supply of ETH is not fixed. The projected inflation rate is 18 million ETH per year, though a rate of 0.5-2% is possible with the release of the Casper PoS system.
Notable Infrastructure Developments
- The AZTEC protocol enables users to transact confidentially on the Ethereum Network, extending Ethereum's functionality and suitability for mainstream finance applications.