Vitalik: "Scalability is a big bottleneck"

Earlier this year, Vitalik admitted that the Ethereum blockchain is “almost full” and that we need a solution…

I was struck by how much of what was said validates what we designed and architected Intercoin to do from the beginning.

It seems even in 2020 we need Intercoin with its non-divisible coins and sharding from day 1.

I think they just didnt forsee Ethereum gaining so much traction. Sharding has been under development for so long but my bet is they won’t make the 2020 deadline

The reason all this is happening is because Bitcoin and Ethereum are based on Proof of Work global Blockchain. Even if they switch to Proof of Stake it will still be a global Blockchain.

Another thing is how you keep track of what wallets contain. In Bitcoin they store UTXOs so you have to verify the whole chain (can’t shard at all), while Ethereum is based on having each wallet hold account balances. It should be rather straightforward to shard by smart-contract. But, they kind of painted themselves into a corner by having a global blockchain secure everything, so they don’t have any easy solutions.

We spoke to many teams before finalizing the architecture and starting to build. The SAFE Network and Holochain were probably the closest fellow-travelers. As well as projects like Dat and BitTorrent, which have “swarms”.

So in Intercoin each coin would have a different swarm of computers watching it, and it’s hard to take over this set in time to do anything malicious. And each coin is worth very little, so you don’t gain much by taking over an “entire” swarm consensus. The more “global” the consensus the juicier it would be to take it over, which is why you want to shard down to an individual coin. But in Ethereum there is no concept of an individual coin, that doesn’t divide further. They have account balances instead, so they can’t really shard in the way we can. By having each individual coin have its own “consensus” about what the latest state is, you can also do general-purpose computing far cheaper and faster, not just for coins but chatrooms and all kinds of chains. It’s basically zillions of little blockchains, each watched by its own swarm.

And the other thing is that the consensus algorithm. Any process where every honest node comes to the same result can be called consensus. But if we don’t base it on voting (fake news is true if majority believe it?) but on disproving (like in math/science) then it could be resilient even if you take over 80% or 99% of the nodes, as long as they can gossip the disproof. I discussed this with David Schwartz (now the CTO of Ripple) and he basically said it will be good enough for payments. Which is what we’re finally trying to do with crypto.

Bottom line, if the consensus is far more secure and can’t be subverted by a 51% attack, and if we use coin denominations instead of account balances, then we can have each coin watched by a different swarm of computers and it’s not so straightforward or profitable to take over a consensus.

I agree Greg that Ethereum can’t shard in a way that we can. Ethereum’s interest in hybrid systems of using Bitcoin’s Lightning network along with Ethereum also proves that they are NOT sure if their Off-chain architecture will really work alongside Ethereum 2.0 (Serenity) and Casper upgrades.

Scalability issues can be foreseen going all the way to the beginning with the Ethereum Yellow paper ( http://ethereum.github.io/yellowpaper/paper.pdf )

Scalability remains an external concern. With a generalized state transaction function, it becomes difficult to partition and parallelize transactions to apply the divide-and-conquer strategy. Unaddressed, the dynamic value-range of the system remains essentially fixed as the average transaction value increases, the less valuable of them become ignored, being economically pointless to include in the main ledger. (Intercoin’s inter-activity mini ledgers are much more efficient and scalable)

In the article, Buterin noted that to transform blockchain technology into something that people will actually use scalability will have to be solved for crypto to go mainstream. You must build the scalable architecture from the beginning.