Criterias to Differentiate Blockchains
There are multiple criteria to classify blockchain. We will be classifying it based on the permissions provided to the users and the nodes to access, verify, or update the blockchain. If everyone is permitted to read and write, it is called Permissionless/Public. If only limited users are permitted to read and write, it is called Permissioned/Private. To put an analogy, a public blockchain is like a public Wi-Fi, whereas Private Blockchain is like a corporate Intranet. The detailed explanation and applications of this classification are the following:
Permissionless (Public) Blockchain
Bitcoin, Ethereum, Zcash, Neo, Stratis, etc. are examples of Public blockchain. They are decentralized platforms where anyone is allowed to participate without any request for access or fulfillment of criteria. The consensus mechanisms are designed very meticulously to prevent malicious users from entering and become a part of the network. The primary rationale for a number of participants and networks to grow in this category is because every kind of participation is free and the nodes are rewarded for providing consensus to the transactions in the blockchain. The rewards are in the form of a transaction fee or the cryptocurrency which functions in the blockchain.
The following characteristics should be considered to deploy public blockchains in the business model:
- All the data stored in the blockchain are public, although pseudo-anonymity of the user can be established since the data will be linked to the wallet or public key.
- History of changes made in the database will be visible to everyone in the world.
- Mimicking or entering false data in the blockchain, although it can be prevented using multiple cryptographic defence layers and protocols.
- The data is immutable. These types of blockchain should only be used if the business model can handle rigorously increasing data.
- Transaction speed may be slower than a centralized ledger since the consensus protocol and the addition of blocks takes time.
Permissioned (Private) Blockchain
These are very customizable blockchains that can be developed by an individual or for an entire organization. The difference from permissionless blockchain lies in the access control layer built into blockchain nodes, or, the access who has to read, write, and change the blockchain, and also who provides these accesses. A group of participants or nodes are appointed in the network who are given authority to provide consensus to the blockchain. This authority also includes the writing of smart contracts. This authority is usually provided using a private key. Multiple organizations or individuals who wish to work together, but do not trust each other can set up permissioned blockchains. This type of blockchain can provide full knowledge about all the honest internal interactions between the two parties without anyone able to alter the data.
Permissioned Blockchains are relatively fast and cost-effective because the number of nodes providing the consensus is lower, which also means the blockchains are relatively less secure. One way to make them secure by doing unpredictable distribution of the power of making blocks among the nodes. Permissioned blockchains generally require 2/3rd of the private keys to validate the recent state of the blockchain in comparison to 51% in a permissionless blockchain. They are more scalable because they are not employing consensus mechanisms like Proof of Work in their structure. Permissioned Blockchains have different algorithms like RAFT, Paxos, Roundhead Consensus, or other PBFT algorithms.
The following characteristics should be considered to deploy private blockchains in the business model:
- Since most of the activities in the blockchain are immutable, providing access to someone in the network and then revoking it can be a challenge.
- To provide access to a specific task based on the requirements of the position of an employer, the blockchains should be structured very carefully.
- Since the mining nodes will be very limited and they are the ones who are enforcing the rules, a deep level of trust and a strong incentive not to act maliciously is generally required.
- Since the malicious or incorrect data entered in the blockchain can’t be undone, forking may be required with the consensus of the remaining nodes to implement changes in the system.
- Private keys of all the nodes must be secured to ensure compliance to the consensus protocol. Access to these keys can not only induce false data in the blockchain but can also result in more commissioning of dishonest nodes.
When the permissions are kept within an organization or a group of individuals, it is called a Private Blockchain. Examples may include auditing, database management, healthcare, etc. Industries who don’t want public readability of their data will take advantage of blockchain using private blockchains by setting a group of participants within the organization to verify blocks internally. When a group of organizations (usually from a similar industry) come together to become participants in a permissioned blockchain, these blockchains are called Consortium/Federated Blockchain. In Consortium Blockchains, the consensus mechanism is provided by a pre-selected set of nodes agreed by all the participating organizations. These nodes can be formed by independent bodies or by the participating organizations. For example, a group of 30 banks can become a part of a consortium blockchain and can make full use of the principal features which include distributed consensus, record immutability, and instant asset (money) transfer between the banks.
A hybrid model of permissioned and permissionless blockchain can also be built based on business requirements. The companies may want to maintain the privacy of different operations, departments, and ledgers differently. Considering the above example of banks, they may be required to keep the ledgers publicly readable, but the customers may demand privacy and control of sharing the data of their accounts or wallets. Adding to this, a hybrid model of the distributed and centralized database can also be developed where generally the data is stored in a cloud and the hashes of the data are stored in a blockchain. Since blockchain (both permissionless and permissioned) has limitations regarding privacy, immutability, and storage, companies have also considered employing blockchain only in those departments where necessary.