Now, as you will be aware if you have watched the video linked above, Ethereum at the time of writing uses a consensus mechanism called ‘Proof of Work’ (POW). POW is the original Nakamoto consensus mechanism used by the Bitcoin network and the basic principle is that ‘mining nodes’ within the network are required to solve a complex hash puzzle in order to ‘mine’ the next block on the blockchain; each miner proves that they have done the work required to earn the reward for mining the next block.
The POW process ensures that the bitcoin ledger has a fair, efficient, real-time, functional, reliable and secure mechanism ensuring all transactions occurring on the network are genuine and that all participants agree that the transactions listed in each block are legitimate, leading them to be immortalised in the blockchain.
Whilst POW is clearly a successful consensus mechanism demonstrated by bitcoin’s continued successful use as a store of value for over a decade, it also uses an incredible amount of energy (the bitcoin network alone uses roughly the same amount of power annually as the entire country of Switzerland and that is just one POW cryptocurrency) and has a long processing time; making it difficult to scale without hard-fork worthy layer 1 changes or extensive layer 2 solutions which to date haven’t been successful (see Plasma).
What was Etherium’s original vision?
You can read the whitepaper for Ethereum here. To summarise, Ethereum aims to be a world computer, which would decentralise the current client-server model; instead of internet servers and clouds, Ethereum has ‘nodes’ run by volunteers across the globe. Ether (the cryptocurrency you can purchase) is the fuel used to power the Ethereum network.
If Ethereum were successful in achieving its original goal, a basic way to visualise it would be to imagine an app store where e.g Apple or Google don’t control what is on it and all rights and money spent go to the owner and the author of the applications – no third party like Apple or Google gets a cut of the profit and no third party could just remove the application from the app store. It will be a truly decentralised, fully functioning app store.
The problem here in my opinion is that Ethereum is not scalable or fast enough, due largely to its consensus mechanism of choice being POW.
Here is where the friendly ghosts come in!
In order to solve some of the issues the POW consensus mechanism provides; Ethereum is looking to implement some ideas from another Nakamoto consensus mechanism; ‘Proof of Stake’ (POS). In order to keep this article from becoming mind numbingly long, if you don’t understand what POS is, click here to watch a video which provides a simple and clear explanation.
Two of the biggest names behind Ethereum are Vitalik Buterin and Vlad Zamfir. Both of these figures have provided their own friendly ghosts which they think will help solve Ethereum’s scalability issues:
Casper the Friendly Finality Gadget (FFG)
Vitalik’s proposed solution is a hybrid approach and believes that a POS consensus mechanism should be gradually introduced to Ethereum, step by step. Click here for the full paper written by Vitalik and Virgil Griffith.
Casper FFG is Byzantine Fault Tolerant; as long as 2/3rds of the nodes follow the protocol honestly; a new block can be added to the chain. In Casper FFG, blocks are mined via the original POW method; but every 100th block mined, there will be a POS ‘check point’ where the network validators who have staked Ether will check or audit the blocks created and approve their addition to the blockchain.
Should the blocks validated by the validators be approved; then the validators will receive an award proportional to the amount of Ether they have staked (staking stops the Ether from being spent for a pre-defined period of time). If any validators act maliciously (try to validate a fraudulent or incorrect block), then they will lose their stake; there is an incentive here to prevent malicious activity by validators.
Another characteristic of Casper FFG is the introduction of a ‘height based’ fork choice mechanism. For the sake of brevity, I won’t go into depth here, but if you are interested in finding out more, have a look at the full paper or feel free to contact me.
The main takeaway here is that Casper FFG is a POS layer which sits on top of the current POW system and aims to provide additional security, speed of transactions etc to the Ethereum network.
Casper Correct by Construction (CBC)
Vlad suggests his own preferred friendly ghost protocols to the Ethereum community; Casper CBC. To read Vlad’s own introduction, check out this link.
Casper CBC is actually a family of protocols suggested for Ethereum 2.0. It began as a suggested ‘correct by construction’ implementation of POS as the consensus mechanism for Ethereum; with miners being scrapped for validators, being similar to a POS based currency like Tezos or NEO. It was decided however that a sudden overhaul of the POW algorithm and replacement with a ‘pure’ POS system would be difficult and potentially costly. Therefore as time has moved on, it has evolved into a general branch of research into various different POS based consensus mechanisms which could be utilised alongside FFG.
The aim is for research to continue until further notice; should a new or very suitable consensus mechanism be discovered or imagined during this research, it could be the eventual replacement for FFG; finally enabling Ethereum to fully scale (in an environmentally friendly manner) and become the world computer it aims to eventually be.
The Casper FFG method was chosen for the development of Ethereum 2.0. However, it is likely that research from the Casper CBC project led by Vlad will be utilised with the Ethereum 2.0 rollout and it is also possible that the Casper CBC research will be used to provide a protocol which can be used alongside the Casper FFG protocol and even eventually replace FFG.
An understanding of both original protocols and the research being done under the Casper CBC name is helpful in being able to fully understand Ethereum 2.0 (or the ‘Serenity’ upgrade) and the goal; to move from mining to staking which allows Ethereum to become more environmentally friendly, improve security and to aid with scalability eventually.
If you want to read more about cryptocurrency or even travel tips; feel free to check out the rest of this blog. Alternatively if you would like to discuss any topics raised in this or other blogs, feel free to contact me.