The scalability trilemma described by Ethereum’s Vitalik Buterin states that you can only have two out of either decentralization, scalability or security, so trade-offs are almost inevitable. Can this trillema be solved? And if the answer is “Yes”, how can it be solved? More on this interesting topic and how Modex BCDB (Blockchain Database) overcomes the scalability trilemma, in the article below.
For over a decade, since it was first conceptualized, the general perception of blockchain has radically changed. In its early days, the technology was largely associated with its first real use case, a cryptocurrency enabler which facilitated the creation of a truly decentralized payments system. Since then, Bitcoin still stays strong as the most valuable cryptocurrency, being viewed as a golden standard for other similar projects. During this decade, big name companies such as IBM, PwC, Ernst & Young, Deloitte, and other giants of the business and technology domains have acknowledged the inherent potential of the technology, investing a significant amount of time and resources to determine how to extract the value of blockchain and apply it in real-world scenarios. The conclusion was that in theory, blockchain holds the potential to usher in a series of revolutionary changes both at the enterprise level, as well as the civil society and government level. The number of use cases covers a large spectrum that ranges from global payments, money transfer platforms, supply chain, electronic healthcare records systems, electronic voting – basically any field of activity which needs a secure, decentralized database. The potential seems limitless.
The Scalability Trilemma
Although blockchain has long surpassed the pen and paper stage, and countless projects have already permeated into the market, blockchain is not used currently at its full potential. In fact, the technology is highly sought after on the basis that in the near future, tech experts will manage to provide a solution for arguably the most important unsolved problem in the blockchain space: the Scalability Trilemma. First coined by Ethereum founder, Vitalik Buterin, the scalability trilemma refers to the trade-offs that blockchain projects must make when deciding how to optimize their architecture, by balancing between three of the defining characteristics of the technology: decentralization, security, and scalability. When describing the issue, Vitalik Buterin outlined that “Blockchain systems have to trade-off between different properties. And it’s very hard for them to have three things at the same time, where one of them is decentralization. The other is scalability, and the third is security”.
Due to the nature of blockchain’s architecture, developers are faced with a daunting task: to devise a solution through which the technology can be implemented without compromising one of its three characteristics. Achieving a balance between decentralization, security, and scalability is a difficult task. If focus is placed only on two of them, the last characteristic will see a dramatic decrease, the end result being a blockchain that could be more centralized, less secure, or non-scalable. This three-way deadlock has cemented itself as the main obstacle that blockchain developers need to overcome in order for the technology to achieve mass adoption.
To better understand what the scalability trilemma entails, we will provide a brief overview of the three main characteristics of blockchain and illustrate how the network will be impacted if too much or too little focus is placed on each of them. This comparative approach will highlight the advantages and disadvantages of different types of blockchain, focusing on how companies should optimize the network in order to obtain the best result for their use case.
Decentralization is a characteristic that is deeply ingrained in the philosophy behind blockchain technology. In general, it indicates the degree of diversification in ownership, influence, and value in the blockchain. Out of the three characteristics, decentralization is the most difficult aspect to solve, because, on closer inspection, it can refer to multiple aspects. Many people in the blockchain community view decentralization as a quantitative metric which shows how many block producers exist in a given network. On the other hand, some developers have a more quality-based approach, focusing on the hardware aspect, in the sense that affordable computer systems can participate as a node in the network. Decentralization is not a fix binary attribute. It is measured in degrees of decentralization. As such, we can say that Ethereum is a very decentralized blockchain; EOS is partially decentralized; Twitter is less decentralized. A common misconception is that blockchain networks can simply be labeled decentralized or not.
Centralized platforms and organizations typically don’t function on a blockchain architecture. These types of organizations are controlled by a small group of individuals, the management team, board of directors, who control the majority of ownership in the company and are the decision makers. This is not always the case, as a company can employ a private blockchain to streamline operations and increase productivity. In this scenario, decentralization is kept at a minimum, because it makes sense from a business perspective to protect trade secrets and confidential data. A company may extend view/write privileges to certain partners and clients when the need arises, but overall it is more centralized than public blockchains such as Bitcoin and Ehtereum.
Truly decentralized networks are mostly controlled by the users who willingly contribute to support the network. This is the case of blockchain networks that employ consensus protocols such as Proof of Work (PoW) and Proof of Stake (PoS). In PoW, users compete to solve a mathematical function in order to be the next one to add a new block of transactions to the network. In PoS, the next block validator is chosen randomly based on a user’s stake in the system (amount of cryptocurrency). In decentralized networks, the community maintains and supports the network, and compensation is distributed among network participants according to the algorithm that governs the network.
Advantages of Decentralization
- It keeps in line with the philosophy of blockchain technology, to put the power in the hands of the community
- More decentralized typically means more secure. Unlike client server models, there is no single point of failure that can be exploited
Disadvantages of Decentralization
- Consensus algorithms like PoW require a vast amount of resources to maintain the network, which steadily increases over time
- It compromises on performance and speed, which is problematic for use cases which require high throughput
- Because there is no central moderator, any eventual disputes need to be resolved by the community
- No single point of failure means that the network does not rely on a centralized server. As such, it is difficult to shut down a decentralized blockchain that is being used for destructive purpose
Security is often seen as the cost to overtake the network. It measures the level of defensibility a blockchain has against attacks from external sources, as well as the resistance of the system to tampering. Decentralization and security complement each other. Having no single point of failure makes the system more resistant to tampering. However, decentralization by itself isn’t sufficient to protect the system. Potential attack vectors are:
- 51% attack – if an entity gets hold of more that 50% of the total tokens, they control the entirely
- Collusion Attack – one or more nodes) decide to collude together to perform malicious operations on the network
- Sybil Attack – external entities could forge multiple identities on a system in order to effectively control a significant stake in ownership and/or decision making of the network
- Distributed Denial of Service Attack (DDoS) – flooding the network with malicious transactions in order to disrupt traffic
- Penny-spend attack – an attacker spends infinitesimal quantities to a large number of accounts in order to waste the storage resources of nodes
Advantages of high security
The main advantage of strong security is that the blockchain network is less vulnerable to attacks. A blockchain with robust security is ideal for use cases where data security and integrity is paramount. This is especially the case for enterprise grade applications, financial services platforms, supply chains and confidential data.
Disadvantages of high security
Maintaining high levels of security usually puts a strain on performance, speed, and scalability, as a significant portion of computing power and resources need to be allocated. As a result, network latency is increased and throughput is significantly reduced, which may deter potential users.
Scalability is an important factor because it determines the capacity of the network (the number of users a network can support), the number of transactions that a network can process, how fast it can process them, and how much it costs users to have those transactions verified. Scalability and decentralization pair well together, but the system may become predisposed to security risks.
Advantages of scalability
- A high degree of scalability ensures that applications run at an optimal speed while supporting a high volume of transactions
- High levels of scalability makes an application less likely to break down if user demand is much greater than originally assumed
Disadvantages of scalability
- The primary drawback of high levels of scalability is related to the security implications that may arise. As the network increases, it becomes more difficult and costly to implement proper security measures
Potential solutions for the scalability trilemma
One potential solution for the scalability trilemma consists of adding a second layer to the main blockchain network in order to facilitate faster transactions. Also known as second-layer scalability solutions or off-chain solutions, it refers they consist of secondary protocols built on top of the main blockchain where transactions are ‘off-loaded’ from the main blockchain to save space and reduce network congestion.
The Lightning Network is a second-layer scaling solution for Bitcoin that incorporates smart contract functionalities on top of the Bitcoin blockchain. This allows for the creation of private, off-chain channels that facilitate instantaneous transactions with minimal fees. Lightning Network tries to lighten the load of the main blockchain by moving the transactions off the main chain to a secondary chain, known as the ‘off-chain. Since the transactions inside payment channels are between two parties, the transaction doesn’t need to be broadcasted to the public blockchain network until the parties decide to close the channel. This means that users don’t need to pay mining fees and there will be no block confirmation time. The advantage of this approach is that transactions executed within this channel are instant, and attract low fees.
Plasma is another off-chain scaling solution. Devised for the Ethereum blockchain, it makes use of ‘child chains’ that stem from the original blockchain (also refered to as the parent blockchain). Each child chain functions as a separate blockchain that processes its own transactions while relying on the security measures deployed on the parent blockchain. Each child chain operates independently and runs parallel to each other, which boosts the speed and efficiency of the system. Furthermore, each child chain can have its own set of rules and qualities. This means that child chains can be designed to process only a specific category of transactions.
Another potential solution for the trilemma is to devise and employ a consensus mechanism that streamlines the consensus reaching process while enabling greater scalability and transaction processing output.
Delegated Proof of Stake (DpoS) is a consensus mechanism that combines real-time voting with a social system of reputation to achieve consensus. Stakeholders use their coin balance in order to elect an overarching entity, known as a delegate, to validate blocks on behalf of all nodes in the network. If a delegate falls out of line by either late or faulty reporting, nodes within the network can vote in a replacement. Generally, there are 21 to 100 delegates elected in a network that uses DPoS. The voting power of a stakeholder, referred to as voting weight, is determined by the number of tokens in their coin balance.
Delegates have the following attributions:
- Ensuring their node is always up and running.
- Collecting the transactions across the network into blocks.
- Signing and broadcasting those blocks
- Validating transactions.
- If there are issues regarding consensus, the DPoS protocol resolves them in a fair and democratic way.
Delegates are unable to change transaction details, but as validators they are able, theoretically, to exclude certain transactions in a block. However this has little effect, a slight delay in transactions, as the next block to be created will include those transactions, awarding the validation fees to the next delegate.
DpoS systems act as a self-governing network, policed by all its participants. Delegates who run the nodes that process and validate the transactions going through the network are awarded the associated transaction fees, as well as a monthly reward for maintaining the network which is reduced over time.
DPoS offers a better distribution of rewards, as individuals will elect delegates who give them the most rewards. As a result, everybody is rewarded, not only the richest stakeholder. Security is ensured by real time voting. If any malicious attempt is detected by voters, they can oust the offending party. The downside of DPoS is that delegates are able to organize themselves in cartel like groups, thus centralizing power, making the whole network more centralized.
The problem with the scalability trilemma is directly related to our perception of blockchain technology as a whole. Media outlets often portray blockchain as a panacea for every problem and shortcoming present in the enterprise dimension. But in the end blockchain technology is only a tool that we can shape and alter according to our needs. Each industry and use case has different requirements that can be answered only by one facet of blockchain technology. With a modular take on blockchain technology which is also agnostic from a blockchain engine and database perspective, Modex BCDB overcomes the scalability trilemma by enabling companies to devise custom blockchain solutions, specially tailored to meet their business requirements. Depending on specific use cases, companies can opt for the blockchain that is more suitable for their needs.
Modex BCDB is a new take on blockchain technology which removes the need to invest resources in blockchain training and facilitates fast adoption of the technology in businesses. The solution proposed by Modex is a middleware that fuses a blockchain with a database to create a structure which is easy to use and understand by developers with no prior knowledge in blockchain development. As a result, any developer who knows to work with a database system can operate with our solution, without needing to change their programming style or learn blockchain. Through our blockchain component, Modex BCDB is able to transform with minimal changes any type of database into a decentralized database which holds the same valuable characteristics inherent to blockchain technology: transparency, increased security, data immutability, and integrity.
Modex BCDB doesn’t work by deleting the existing database or data entries. The database is maintained intact throughout the process, data integrity is ensured by calculating the metadata of the records and storing it on the blockchain. The system does not restrict access to the blockchain or to the database, so when a developer needs to make a reporting or ETL transformations, they can perform warehouse analytics by accessing the database directly. This is because Modex BCDB has been purposely designed to be agnostic. With our solution, clients are able to set up a network, regardless of the type of database employed. In a consortium, each company can maintain what type of database they prefer and connect them through a blockchain-powered network to ensure cohesion while protecting corporate interests.