Ethereum plans to move to the Casper proof of stake algorithm in a future version of the network. What are the details of that algorithm, and how does it compare to previous Proof of Stake consensus protocols?
The friendly Ghost
Casper is a security-deposit based economic consensus protocol. This means that nodes, so called bonded validators, have to place a security deposit, an action called bonding, in order to serve the consensus by producing blocks.
In Casper style proof of stake anyone can participate in block production by posting a bond. After posting a bond you have an opportunity to bet on which block will be included next. The incentives are such that you make money by betting with the eventual consensus and lose money by betting against the consensus. Any crypto-graphically provable misbehavior results in the forfeit of the bond.
An analogy can be made to proof of work where each miner is betting with their hash power on which block will be accepted. If they bet wrong then any block they produce will be orphaned causing them to lose money.
This protocol has several nice properties:
- Anyone can participate
- Consensus can be reached in a timely manner
- It quickly converges on an irreversible consensus
- It is free of politics
Casper in non-economic terms
Casper is an eventually-consistent blockchain-based consensus protocol. It favours availability over consistency, see the CAP theorem. It is always available, and consistent whenever possible. It is robust to unpredictable message delivery times because nodes come to consensus via re-organization of transactions, after delayed messages are eventually received. It has an eventual fault tolerance of 50%, in the sense that a fork created by >50% correct nodes scores higher than any fork created by the remaining potentially-faulty validators. Notably, though, clients cannot be certain that any given fork created with 51% participation won’t be reverted because they cannot know whether some of these nodes are Byzantine. Clients therefore only consider a block as finalized if it has the participation of a supermajority of validators or bonded stake.
https://gitter.im/ethereum/research is an open, highly technical channel where the most details about Casper can be obtained currently.
Here are some background references that can help before engaging in the above channel:
- Casper 0.1 notes
- Highly voted Casper threads: 1 2 3 4 5 6
Casper is the new Proof of Stake algorithm that is going to replace the current Proof of Work algorithm on the Ethereum blockchain. I already answered the difference between PoW and PoS. What's the difference between proof of stake and proof of work?
Ethereum is trying to switch on PoS with it's new PoS protocol called Casper, it is a feature which states that the malicious validator (in case of PoS, miner is called validator) who validates the block will lose money if he/she validates a malicious block that is not correct. In PoS, when a validator validates an algo or block, he just put some money or stake to validate that block, you cant get it back until the block is validated or you can actually lose your money which is put to solve that block, if you validate a false block in casper update.
Advantages of Casper protocol
PoS is faster for a validator to validate a block and bet on a block comparing to PoW (Proof of Work) which solve a cryptographic puzzle in order to append the block in the blockchain. If PoS is faster then the whole blockchain will become faster and more scalable. This casper update can make Ethereum ready for the world wide adoption.
In Proof of Work, if someone powerful (with powerful CPUs or GPUs) try to fool the system, he/she will not really be penalized but in Proof of Stake (Casper Protocol) if someone try to mess with the blockchain even if they are powerful (with CPUs or GPUs), they will lose their funds if they are validator and they have locked up their stake to validate a block in this protocol.