Proof of Stake and Ethereum: Hydra or Siamese Snake?
Vitalik Buterin recently made a massive series of tweets where he described his line of thinking regarding Proof of Stake (POS). It was quite technical and filled with a bunch of jargon, and I doubt that the average person interested in cryptocurrencies can decipher a fifth of what he was talking about. The goal of this post is to explain in simple term where his logic falls apart and why POS doesn’t work.
As Hugo Nguyen correctly pointed out, there are only three tweets (9–11) in Vitalik’s tweet storm that is relevant to the POS discussion. I will summarize here for clarity purposes: Vitalik believes that by imposing 2 additional requirement to Ethereum clients, he can make POS work. The requirements are that “clients log on at least once every four month”, and that new clients download the blockchain “from some trusted source when you sync for the first time”. The 2 requirements are needed to prevent “long range attacks”. In this attack, an alternate blockchain which appears completely legitimate to a POS node is created in order to mislead the user. For those that want a better understanding of this attack, I’d suggest reading Ethereum’s POS FAQ sections on the nothing at stake problem and weak subjectivity.
Vitalik believes that these 2 additional requirements, which do not exist in Proof of Work blockchains, are not a “big deal”. The purpose of this article is to explain why they are a big deal, by outlining exactly how governments seeking to destroy Ethereum will exploit this weakness.
Yes, [we will not find a solution to political problems in cryptography,] but we can win a major battle in the arms race and gain a new territory of freedom for several years. Governments are good at cutting off the heads of a centrally controlled networks like Napster, but pure P2P networks like Gnutella and Tor seem to be holding their own.
- Satoshi Nakamoto
Satoshi states that governments are good at cutting off the heads of centrally controlled networks. But governments are also good at cutting off heads in a decentralized network. The State will happily play an endless game, where they spend multiple decades and billions/trillions of dollars, trying to cut off as many heads as they can. The war on drugs and the war on terror are good examples of this fact.
Governments are generally terrible at killing the thing that they are fighting against but this does not stop them from trying. They can cut off a thousand heads but a robust system will just regrow a thousand new heads (i.e. put a drug dealer in jail and the market creates a new one). Think of a proper decentralized system as the mythical creature Hydra. The Hydra is a mythical many-headed serpent with the ability to regenerate any head that is cut off. A centralized system is just a snake; cut off 1 head and it is dead. To kill the Hydra, you must cut off all of its head, and prevent it from regenerating new heads. In order for a cryptocurrency to be like the Hydra, not only must it have many nodes, it must be easy to create new nodes to replace ones that have died.
I will now explain the method that governments would take to attack a POS system, which is quite simple. Firstly, they will start cutting off heads by shutting down individual nodes (this can be done in many ways such as physical raids, DOS attacks, network censorship, etc..). Secondly, they will try compromising various trusted entities in the Ethereum space such as Vitalik, ethereum.org, and Joseph Lubin so that they are either silenced or forced to promote an alternate version of the Ethereum blockchain. And thirdly, they will try to create mass confusion by creating many fake Ethereum websites, social media accounts, and fake news that will lead users onto the alternate Ethereum blockchain.
Now when a Ethereum users tries to replace the nodes that were shut down, they will find the task to be impossible because of the two requirements that Vitalik created. If the user has to start a node from scratch without any blockchain data, he cannot because his trusted source has been compromised and he has no way to tell which blockchain is the real one. The same applies to a user who was thrown into jail for 4 months and he has to restart his Ethereum node which is missing 4 months of blockchain data (if in the future, you receive a 4 month jail sentence for running an Ethereum node, you can blame Vitalik for choosing that duration).
If new nodes cannot replace the ones that were killed, the system will eventually die. Ethereum has consistently made design decisions that hinders the ability of users to run full nodes so the 2 POS requirements are not unique in this regard (for further reading on this topic, see StopAndDecrypt’s article on the Ethereum blockchain size). As Ethereum continues along this path, it will eventually be revealed that the system is just a Siamese snake not a Hydra; cut off all of its head and it will be dead because it cannot grow new ones.