No system is perfect. Some flaws are small, and some are dramatic, but every system breaks down at some point. This is also true in the technology world—no matter how ingenious, eventually problems are bound to appear.
One such example is the trifecta of struggles with blockchain technology—the programming infrastructure that supports Bitcoin. While clearly a disruptive technology, building the perfect blockchain network seems to be something of an impossibility.
The three issues that make up the problem are decentralization, scalability, and security. Each of these are required to build a useful blockchain platform, but linking all three is challenging.
Decentralization—the removal of centralized governance—is the foundation of blockchain technology. However, with decentralization and the increased number of user entry points, security becomes an issue. To create secure systems, various forms of consensus are required for block generation.
Bitcoin, for example, uses Proof of Stake (PoS) to protect block security. However, this system slows block generation dramatically, causing a far slower transaction processing time. The results in troubles with scalability to enterprise levels.
In other words, it's relatively simple for platforms to offer any combination of any two of these three features, but connecting all three is challenging. Some have said this is blockchain’s proverbial ‘Achilles heel’.
And, if a platform could find a way to obtain all three links in the chain, success would still not be assured. The platform would also require a developer-friendly interface and the ability to build and deploy dApps with ease.
While this structural flaw may appear concerning at first glance, some platforms are seeking to create solutions that bring all three together.
The first to offer a blockchain system for deploying dApps was Ethereum, founded by Vitalik Buterin. The platform’s ingenious design made it an explosive front runner, but within a short time, challenges began to appear.
With huge numbers, transaction times began to slow dramatically, revealing that scalability was a massive issue. And recently, the original commitment to scalable dApps in the ICO whitepaper was withdrawn by the cofounders in an interview.
Joseph Lubin told the interviewer that the platform was never designed to provide scalability, leaving current users stinging with bitterness.
However, Vitalik Buterin has stated that new upgrades to the system will provide scalability solutions.
These may come in the form of ‘sharding’—a newly designed process to split transactions and increase speed for greater transaction numbers.
But a solution still remains elusive, particularly as upgrades away from Proof of Work (PoW) consensus appear difficult.
The blockchain infrastructure is built with a modified Proof-of-Stake (PoS) consensus system called correct-by-construction, or CBC for short. Simply put, rather than requiring tedious solutions to math equations like PoW consensus, the blockchain network reserves its computation capacity for actual computational work.
This solution allows for the same level of security as legacy blockchain networks, but with a far faster throughput transaction time.
Additionally, the blockchain execution engine allows for multiple dApps to be executed concurrently.
In simple terms, there are more channels for transactions to take place on, making scalability a viable reality.
And for dApp developers who are experts in certain coding languages, CasperLabs allows for compilation in nearly all high-level programming languages.
This feature allows developers to step onto the blockchain and begin creating dApps almost immediately without learning a new proprietary code. Taken together, the features of the platform seem to offer a viable solution for the blockchain trilemma.
Other solutions have come online as well. Consider, for example, EOSIO blockchain. The platform also uses a variation of the PoS consensus protocol called Delegated PoS, or DPoS for short.
The DPoS system functions in a similar way to PoS, but allows for community reputation to play a role. Users are allowed to stake tokens and then vote on who is allowed to create a block of transactions, creating a decentralized system for block approval.
Security is maintained through the decentralized nature of the network, and transaction times are an order of magnitude faster than legacy systems.
While certainly an ingenuous solution, the company has gotten some pushback from the community regarding the voting nature of the blockchain. The controversy is based on the observation that the voting mechanism has caused the platform to drift toward centralization over time.
These new solutions appear to offer a meaningful way forward for the blockchain community. As with any other new technology, change is slow, and bugs are discovered only through trial and error.
As the blockchain community continues to make new systems to provide consensus, the apparent ‘Achilles heel’ of security, scalability, and decentralization may be solved.
Whether Ethereum is able to accomplish this remains to be seen, but new consensus solutions from companies like CasperLabs and EOSIO appear to offer the most realistic way to move in that direction.