Proof of Stake (Casper Ethereum) explained

In this post we will talk about the Proof of Stake algorithm which will come with the Casper protocol to the Ethereum Blockchain.

First I will explain some basics about Ethereum and the Proof of Work algorithm, but if you feel familiar with all of that feel free to skip this part and jump straight to the “Problems with PoW” part. :)

This post is based on the handout of my presentation about this topic. That’s the reason for the short but straight to the point sentences. You can find the presentation here.


It has a turing-complete scripting language. That means you can write programs (contracts) with Solidity for example, that can solve any reasonable computational problem. → That basically means you can use loops and stuff like that. You can run smart contracts on top of Ethereum. Smart Contracts are applications that run exactly as programmed without any possibility of downtime, censorship, fraud or third party-interference.

Proof of Work

How to mine a block?

Miners have to solve a mathematical puzzle. The first one who solves this puzzle gets the mining reward (which is 12.5 Bitcoins at the moment for Bitcoin) and the transaction fees of the block.

When miners mine blocks, they pick a number of transactions in the “mempool” (where all unconfirmed transactions are stored) and put them together in a block.

Problems with PoW

We also have a problem with mining centralisation. Larger Mining Pools can lower the cost of their technical and operational infrastructure (datacenter costs, power costs, personnel) → that leads to centralisation. Another reason for centralisation with PoW is ASIC mining. Something like ASIC-resistant algorithms are possible (like Monero is currently working on), but the effectiveness is not clear.

And last but not least we have the problem that public decentralized PoW Blockchains don’t scale.

Centralization in Blockchains

Hashrate Distribution for Bitcoin (left) and Ethereum (right)

The graphs above show the hashrate distribution for Bitcoin and Ethereum. In Bitcoin we can see that only 4 big mining pools control over 50% of the whole hashing power and in Ethereum only 3.

Now that we see the problem we will look at hopefully a solution for all of this.

Proof of Stake

In a PoS Blockhain we don’t have miners anymore, but something called validators. This validators vote on the next block, and the weight of each validator’s vote depends on the size of his stake. To become a validator you have to send a special type of transaction that locks up your ether into a deposit. The amount of ether someone locks up is his stake. The validators get a reward for their service, like in a PoW blockchain.

From an algorithmic perspective there are two major types of Proof of stake algorithms: chain-based PoS and BFT-style PoS. The chain-based Proof of Stake algorithm randomly selects a validator during each time slot (for example every 10 seconds). And then this validator has the right to create a single-block. This algorithm is e.g. used by Nxt and Peercoin. The BFT (Byzantine Fault Tolerance)-style PoS: The validators are randomly chosen for each round end up agreeing on whether or not the block becomes part of the chain.

Casper Protocol

  1. “Vitalik’s Casper” / Casper FFG (Friendly Finality Gadget) from Vitalik Buterin
  2. “Vlad’s Casper” / Casper CBC (Correct-by-Construction) or called Casper the Friendly Ghost from Vlad Zamfir

to 1.: Casper FFG is a hybrid PoW/PoS consensus mechanism. That means some Blocks will be validated with the old PoW algorithm and some with the Casper Protocol. So it will be a Multi-step transition to introducing PoS for the Ethereum network.

to 2.: Casper CBC is a pure Proof of Stake construct

Pros of PoS

“The cost profile of a repeated 51% attack in PoS is as if “your ASIC farm burned down” with each additional round.” ~Vlad Zamfir

It means that PoS makes a 51% attack a lot more expensive because if you are a bad actor and do a 51% attack you can loose your whole stake.

Another argument is that in PoS, a dollar is a dollar. The benefit here is that you can’t pool together to make a dollar worth more like it is with big mining pools. Also nothing like ASICs are possible, to have an technically advantage.

An obvious argument is that we don’t need to consume large quantities of electricity like with a PoW Blockchain. Also we don’t need to issue as many new coins, because we don’t have real costs for staking in Ethereum and so the mining reward can be smaller → no deflation → the supply goes down over time.

Cons of PoS

Nothing-At-Stake problem:

A problem that can occur if we have a hard fork. When there is a fork in a Proof of Work blockchain (like Ethereum at the moment), the miners have the incentive to choose one branch, what they think is the correct branch, because they have real costs in resources. But when there is a fork in a Proof of Stake blockchain, the validators having no downsides to just stake both forks, because there is no real cost to stake it and they can only profit from it.

The scenario in this graph describes the Nothing-At-Stake Problem. We have a scenario where all validators stake both branches, when there is a fork and we have a guy who is “clever” and has 1% of the stake. He puts his transaction in one of the branches and then forks the blockchain and puts his 1% in the other branch which is winning then. That would be a scenario where one entity which has 1% of the stake could double-spend.

One proposed solution for this problem is called “Slasher”. That basically involves penalising validators if they simultaneously create blocks on multiple chains. For example Peercoin, which was the first PoS coin, had only rewards for producing blocks and no penalties.

Long range attack:

It’s basically the same mechanism as a 51% attack in a PoW Blockchain (make a longer chain that rewrites the blockchain in the attacker’s favor). But instead of starting an attack 6 blocks back, like you would do it in a PoW Blockchain, because you need a lot of hashing power, you now can go for example 60,000 blocks back because there is no equivalent time-intensive operation. To use timestamps is one proposed solution for this problem. → So that long range forks in Casper which revise blocks older than a finalised block are ignored by the protocol.

Delegated Proof of Stake

The difference between a regular PoS system and a DPoS system can be compared to the difference between direct democracy and representative democracy. In the most PoS systems everybody can be a validator. In a DPoS system everybody can vote for delegates, and it is these delegates (e.g. 101 in the Bitshare implementation), who perform the function of validating transactions and maintaining the blockchain. Also the delegates are the ones who get the reward, so they have an incentive to act good, because they don’t want to get deselected.

The Pros of this system are that it is more efficient, because you only have a few validators who have to agree on things. The cons of this system are that it could be more centralized because the validation process is in a smaller number of hands. You could argue that this 101 Bitshare validators are more decentralized than the 3 Mining Pools who have more than 50% of the networks hashing power. One thing to say to this topic is, that this mining pools are composed by thousands of miners.


About the Author

You can find/contact me here:

This text is based on my presentation about Proof of Stake and Scaling Solutions you can find the slides here:

For the Scaling Solutions on Ethereum part of this presentation, check out my post here:


Software Programmer and Blockchain Enthusiast

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store