Ethereum is currently the second most valuable crypto currency by market capitalisation. It has become the staple crypto currency for investors to hold in their portfolio.
It has been said by a number of people that Ethereum can greatly change the way we think about the client server model. Many claim that is has the potential to revolutionise the way we think about all business.
Ethereum has also become the de-facto crypto currency for people to take advantage of ICOs. People use the Ethereum network and tokens in order to offer their own tokens to the general public.
Yet, what is Ethereum and how is it different from Bitcoin?
What exactly is Ethereum?
Put simply, Ethereum is software that is running on a distributed network of computers which ensures that smaller programs (called smart contracts) are replicated and executed across the network. Given the decentralised nature of Ethereum, there is no central server or co-ordinating system. The long term goal of the Ethereum network is to create one large decentralised virtual machine.
Similar to Bitcoin, Ethereum makes use of blockchain concepts to validate, store and replicate transaction data across all of the network nodes. It extends beyond this simple concept by including the computation of the smart contract codes on the network.
Therefore, while Bitcoin looks to store data about the recorded transactions on the network, Ethereum takes it one step further by including the computation of the smart contract programs on the network.
Similarities with Bitcoin
Before we can delve into the underlying technology that makes Ether unique, it helps to take a step back and look at what Bitcoin and Ethereum share in common.
Like Bitcoin, Ethereum has a blockchain made up of all transaction blocks prior. Inside these blocks, we have information on the transactions that took place. In a similar fashion to Bitcoin, these blocks are “mined” by participants on the network. The connection of any Ethereum block is also linked to all prior blocks with a hash value. These were created by an algorithm of previous hashes thereby forming a non-breakable authenticated chain.
Proof of Work Mining
When it comes to the mining and validation of these blocks, a Proof of Work (POW) algorithm is used. In other words, miners attempt to solve complicated computational problems using electricity and hardware. This is the “work” part of the POW protocol. The Ethereum protocol uses a challenge called Etash which makes it less easy for miners to use Application Specific Integrated Circuits (ASICS). This means that miners with less advanced technology can still compete in mining the Ethereum network. ASICs are one of the unfortunate side effects of centralised Bitcoin mining.
Public & Permissionles
Like Bitcoin, Ethereum is open source and anyone can download and write some software and run it on the network. They can also perform mining tasks by validating transactions and running smart contracts across the network. There is no requirement to “join” any network and provide your information to it.
The Ethereum Currency
Ethereum also has its own crypto currency. These are called Ether “Tokens” (ETH). These can be bought and exchanged for other crypto currencies and FIAT money through a number of exchanges. If you merely wanted to hold and transact with the currency then you could make use of a number of wallet clients that store your Ether just like Bitcoin.
Differences to Bitcoin
Although Ethereum shares many common disciplines with Bitcoin, there are many more technical differences that make it quite unique. Indeed, the underlying idea behind Ethereum was to create one large and decentralised virtual machine whereas the main purpose behind Bitcoin was to be a digital currency.
The way Bitcoin and Ethereum’s block size limits are calculated is quite different. Whereas Bitcoin has a defined a block size limit of 1MB, the Ethereum block size is based on the computational complexity of the smart contracts. This is known as the “Gas” limit per block which is not homogeneous across blocks. The Maximum block size on the Ethereum network is about 1.5m Gas.
A gas limit is put in place in order to add a cost for running the smart contracts. It also combats the problem of “transaction spam”. When making a standard transaction, the Gas required is about 21,000. Therefore, within one block you can fit about 70 transactions. In each Bitcoin block you are able to get about 1,500-2,000 transactions per block.
Shorter Block Time
When it comes to the time needed to create a block, Ethereum takes about 14 seconds. This is markedly shorter than the 10 minutes that is currently required for Bitcoin blocks. Hence, transactions can be completed in a much shorter time on the Ethereum blockchain.
Execution of Smart Contracts
As mentioned, Ethereum is coded with a much more advanced scripting language. This code is what smart contracts are built on and is easier for developers to understand. These contracts are then run across the entire Ethereum network or on the “Virtual Machine”.
It is also important to point out that Ethereum smart contracts are “turing complete”. What this means is that in theory, any computation can be completed on the network no matter the complexity.
Supply, Growth & Mining
This is another fundamental difference between Ethereum and Bitcoin and it relates to the growth in the supply of the tokens. Bitcoin was hardcoded such that BTC token generation will halve every 4 years. Miners on the Bitcoin network get 12.5 BTC for each block mined. This means that only 21m Bitcoin will ever be mined in total. ETH on the other hand, will still be produced at a constant number of ETH per year.
ETH is different to Bitcon in that the initial tokens were issued in a crowdfunding sale. In industry parlance, this is termed a “pre mine” and early investors are given ETH in exchange for their investments. In the Ethereum crowd sale, $15m was raised, so approximately 72m ETH was issued.
In terms of Supply growth, there are quite a few sources of additional supply. First there is the current block reward for the miner and this is set at 5 ETH per block mined. At current rates this would mean that approximately 18m ETH are mined each year.
However, one also needs to take account of the rewards for “uncle” blocks (explained below). If they are referenced by later blocks then the reward to the miner who is referencing is only 4.375 ETH (slightly less than full block reward). This is termed the “uncle reward”.
There is one more source of supply for ETH albeit a more marginal one. That is the uncle reference award. This is the reward that is given to a miner who references an uncle one step later in the blockchain. The current uncle reference reward is about 0.15 ETH. There are only a maximum of two uncles in the Ethereum protocol.
With Bitcoin, in addition to the Bitcoin that is earned for clearing the block, the miner will also get the transaction fees for the transactions in the block. In a similar fashion, when a miner clears a block on the Ethereum network they will also earn the Gas. It is also important to note that these transaction fees or Gas are not adding any supply to the network as they have already been mined and exist in current free float.
Uncles vs. Orphans
With Bitcoin, when a miner completes a block that is valid but comes after a previously completed block, this is called the “orphan” block. These are not added to the main chain and are discarded. Given that there are many more blocks being created on the Ethereum network, the chances of valid blocks being created that just miss the oppurtunity of being added to the main chain is much higher.
This is because there are about 250 blocks being created on the Ethereum network per hour compared to only 6 on the Bitcoin network. In Ethereum, these blocks that are not part of the main chain are termed “Uncles”. Even though they are not added to the main chain, the miners are still rewarded for creating them. This is a lower reward than for a main chain block.
There is also a reward for any blocks that reference Uncles above but this is much smaller. This is done to incentivise miners to abandon blocks that are off of the main chain.
Addresses vs. Accounts
With Bitcoin, you will store your funds in a wallet. Your wallet is identified on the network by your address. This is what is used to identify your wallet on the network. With Ethereum, these are termed accounts. There are two types of Ethereum accounts.
- Externally Owned Accounts (EOAs): These accounts only store the ETH and are like a Bitcoin address. In a similar fashion, you will make a payment by signing the transaction with your private key and transmitting it to the network.
- Accounts That Store ETH and host Smart Contracts: These accounts will also have smart contracts on them in addition to holding the ETH. These smart contracts are only run and initiated when someone sends ETH to the address.
One of the main use cases for the Ethereum protocol is for the creation of decentralised applications or “Dapps”. Dapps are distributed, transparent, resilient and incentivised applications that many are claiming could revolutionise the way technology works.
These decentralised applications will run on the Ethereum network with all network nodes taking part in the running of the application. These application developers will raise funds by offering their individual tokens to the market for ETH. These are termed ICOs or Initial Coin Offerings.
The future of potential Dapps is so vast and revolutionary that we will cover it separately.
Potential Changes to Ethereum
Ethereum is still a relatively new technology and as such there are many changes that the developers would like to implement. Currently, some of the most important updates that may be around the corner is the Metropolis hard fork.
This aims to do a number of things such as adjustments to the amount of Gas needed on the network. There are also implementations of protections against quantum computing attacks Moreover, a mining “difficulty bomb” will be included with the hard fork. This is the first step in moving from PoW mining to Proof of Stake Mining (POS). The Ethereum developers eventually want to move to a PoS protocol called Casper.