Divi Beta Notes: Scalability I

One of the most critical features of a cryptocurrency is how well it scales -- how many transactions it can handle, at what speed, and still maintain 100% integrity. Most of the reason why Bitcoin hasn't eaten the world is because it is too slow even in the best of times and drags to a crawl as the number of transactions exceeds what can fit in a block. We're finally getting limited work-arounds to the problem, like Lightning, but they all have severe limitations, disadvantages and costs as well.

The root of the problem for all of the first-generation cryptocurrencies is the use of Proof of Work to secure the network. All cryptocurrencies require that a corrupt subset of the network NOT be able to successfully have a certain number of successive blocks (the normal transaction confirmation number is six) accepted before the rest of the network creates a similar number of acceptable blocks. What most people don't realize, however, is that all double-spending is immediately obvious to anyone running a full node (i.e. an exchange will recognize and could refuse to honor one or more fraudulent transactions). Therefore, the real problem is not that a small number of people might lose double-spent income, but that everyone will realize that the network can't be trusted and the value of the cryptocurrency as a whole will crash (a tremendously larger but much more visible problem).

Proof of work prevents this problem by requiring a miner to expend a tremendous amount of computing power to have a shot at having a block accepted. In order to have non-trivial odds of six successive blocks being accepted, the corrupt subset needs to have over half of the computing power of the entire mining community. Even if this were possible, it would be akin to killing the goose that laid golden eggs for food.

Simple proof of stake prevents this problem by selecting miners according to how much of the cryptocurrency they are staking. Due to the methods by which consensus is achieved as to who this should be, the corrupt subset needs to have over a third of the staked cryptocurrency to block a good consensus from forming and over two thirds of the staked cryptocurrency to actually take control and double-spend. While it may seem that the two-thirds majority is better than the 50% for proof of work, the reality is that the one-third consensus breaking will lead to the perception that the network can't be trusted and, again, the value of the cryptocurrency as a whole will crash (though there is a better chance of reforming the network by dropping the corrupt subset).

Proof of work requires that there be a certain minimum standard deviation of time between when miners successfully complete their work. The more miners mining, the longer this time needs to be so that only a small number of miners have a shot at being accepted. This is why the level of difficulty of the problem always varies with the number of miners. Bitcoin mining is lucrative enough to attract a huge number of miners which increases the difficulty (and costs) of mining -- which leads to a red queen race until it is barely possible for the most efficient miners to make a reasonable amount of profit for their efforts. It also led Bitcoin to a total energy expenditure greater than that of many countries -- while totally preventing fast transactions. Dash has exactly the same concerns.

The time required to achieve consensus in simple proof of stake varies with the number of stakeholders and the connectivity between them -- but the net effect is that there are very real limits to transactions speeds in large proof of stake networks as well. PIVX's use of Peercoin's proof of stake rather than Bitcoin's proof of work was a step forward -- but will only work up to a certain network size. The Divi Project is adamant that we will have scalability on par with any other cryptocurrency. How we intend to do that is the subject of my next post.