Solving Scalability – Milana Valmont – Medium
Without a doubt, DevCon 2018 was the most exciting we’ve had so far. The fact that the Ethereum community is still strong despite this year’s market conditions is nothing short of amazing. This year’s developments are not to be taken lightly either, as the conference revealed some of the most exciting news in awhile. Something to be expected as the conference itself was comprised of developers, for the most part, keeping it very product focused.
Now… Let’s talk about one of the most contentious debates in crypto right now: scalability.
Solving Congestion with “Steak”
A well–known issue in the Ethereum blockchain is found when looking at the way which transactions are propagated. Currently, the network operates on a Proof-of-Work model, very much like that of Bitcoin, where full nodes (miners) are supporting the network and doing all the work. This is becoming an issue not only for Ethereum itself but also for the environment as concerns over environmental damage due to cryptocurrency mining are rising.
The problem is that the PoW model does not scale well when it comes to large amounts of traffic on the network, with many users experiencing delays, and failed transactions. CryptoColegio does a good job at explaining why this occurs with the current Proof-of-Work model:
“The processing ability of the entire system is limited to the processing ability of a single node, allowing for the popularity of an app like CryptoKitties to crash the network.”
A suggested solution by Ethereum founder Vitalik Buterin himself might be switching from the current PoW model to a Proof-of-Stake model, a solution which he nicknamed “Casper”.
Proof-of-Stake works on the basis that the node which puts at stake the most tokens in the network gets a bigger chance at reaping the rewards and confirming blocks, pushing transactions through. However, there are a few problems at the core of the PoS system. Casper works to solve that.
To explain Casper, you must first picture a fork in the chain.
Essentially, Casper solves the “Nothing at Stake” problem. As a validator in the PoS model, one can simply stake their tokens for both the blocks in the forked chain and the main chain, standing to lose absolutely nothing. This model indirectly harbors a playground for big token holders to indefinitely cause hard forks and encourages malicious acts such as double spending.
This is usually a non-factor in the PoW model as miners have no incentives to spend their hashing power and time mining a block which will be rejected by the network regardless (unless they can get other miners to join).
Here is where Casper makes all the difference:
The Casper protocol states that those with malicious intent will have their tokens “slashed”. When one becomes a full node, they are quite literally putting their tokens at stake, meaning that anyone acting against the network will be punished in the form of taking some of their tokens away. It can be more simply explained by looking at the diagram above once again. In both PoS and PoW, mining on the “shorter” (red) chain is considered “bad acting”. The difference is that in PoW, the miner would be spending the same amount of hashing power for mining on either the green or red chain, whereas in Casper’s PoS model the honest validator is rewarded for staking their tokens on the “longer” thus valid(green) chain, and the “bad actor” is reprimanded for staking their tokens on the invalid (red) chain by essentially taking their stake away.
This highly discourages attacks on the network, unless they are over 34% attacks, meaning:
1/3 POS -> theoretical 20% attack PoW
2/3 PoS -> 51% attack PoW
1/3 -> enough to reeee us ,
It’s safe to say that below 1/3 attacks on Pos should be a non-issue for a blockchain as widely adopted as Ethereum. Of course depending on implementation — with EOS for example you can get reeee with single malicious validator and a perfect network partition, where the malicious actor sits in the middle.
So… how does PoS fix the issue of scalability exactly? The first part of the answer lies in Casper itself. By using a PoS model, the Ethereum network is able to leverage the stress off of their node hosts (miners) by cutting their energy costs, thus making them more efficient, and increasing transaction speed in the process. The second part comes from sharding, a process where the data within the blockchain is separated into “shards”, each containing their own pieces of information and transaction history. Coupled with PoS, each node would only process transactions taking place on each shard separately, increasing the total speed of transaction throughput.
This solves the aforementioned problem of having the entire network be limited to the processing power of a single node.