As blockchain technologies have emerged, there have been several attempts at classifying them. While there are a lot of blurry lines and little unanimity on how to precisely categorize blockchains, here is another attempt at classification – using 20 popular open source blockchain platforms available in the market.
Basis of comparison
Public or Private
Public and Private blockchains differ on whether or not anyone can freely access the data on the blockchain.
Public blockchains are usually available for everyone to use and explore, and transactions are transparent and anonymous / pseudo anonymous. These blockchains are potentially disruptive due to their ability to cut down on intermediaries and zero infrastructure costs.
Private blockchains impose restrictions on who can view their data – usually the write permissions are central to one organization or consortium while the read permissions may be restricted to a certain (or large) extent. Private blockchains are in general more scalable and provide better compliance of regulatory or privacy rules than public blockchains.
Permissionless Vs Permissioned
Permissionless blockchain networks are open networks which anyone can participate in the process of creating new blocks in the blockchain or executing smart contracts on the network. Permissionless blockchains offer users the freedom from developers, government or other institutional interference and thus can be more popular and widely adopted.
Permissioned blockchains, on the other hand put restrictions on who can execute smart contracts or participate in the process of creating and verifying new blocks on the blockchain. Permissioned blockchains execute such restrictions via an inbuilt access control layer.
Permissioned blockchains offer better transaction performance than public blockchains, can be more secure and scalable, and offer fine grained access control – just some features that appear particularly beneficial to businesses and enterprises.
A close analogy to permissionless and permissioned blockchains is the relationship between the Internet and the Intranet. Permissionless blockchains, like the internet are need to be open and neutral to truly benefit from innovation. Permissioned blockchains on the other hand are like the intranet – they cater to smaller, closed communities but still perform some crucial functions nonetheless.
Consensus Mechanisms
Blockchains involve the use of distributed ledgers to record information. One key aspect critical to the functioning of any blockchain is that its network should collectively agree on the contents of the ledger. How the network maintains consensus also impacts the speed, security and scalability of the blockchain.
Blockchain networks have and continue to come up with ingenious ways to achieve a consensus amongst the network. The very initial blockchain networks such as Bitcoin and Ethereum relied on Proof of Work (PoW) consensus algorithms which required participants to ‘mine’ new blocks by investing a lot of computational resources into the network. Several other consensus algorithms have since emerged, such as Proof of Stake (PoS), Byzantine Fault Tolerance (BFT), Proof of Activity, Proof of Importance, Federated Byzantine Agreement (FBA), Proof of Elapsed Time (PoET), Practical Byzantine Fault-Tolerance (PBFT), Derived PBFT, Redundant Byzantine Fault Tolerance (RBFT), Simplified Byzantine Fault Tolerance (SBFT), Federated consensus, Round Robin and Delegated Proof of Stake (DPoS), Proof of Capacity, Proof of Burn, Proof of Identity and Proof of DDoS.
Platform | Permissionless / Permissioned | Consensus Mechanism | Public / Private |
Bitcoin | Permissionless | Proof of Work | Public |
Ethereum | Permissioned | Proof of Work | Public |
Hyperledger Fabric | Permissioned | Pluggable Consensus | Private |
Ripple | Permissionless | Federated Byzantine Agreement (Ripple protocol consensus algorithm – RPCA) | Public |
BigchainDB | Both | Federated Consensus | Both |
Quorum | Permissioned | QuorumChain (a time-based, majority-voting algorithm), Raft | Private |
Chain | Permissioned | Federated Consensus | Private |
Corda | Permissioned | Pluggable Consensus | Private |
BitShares | Permissioned | Delegated Proof of Stake | Public |
Hyperledger Sawtooth Lake | Both | Proof of Elapsed Time, Byzantine Fault Tolerance | Both |
Hyperledger Iroha | Permissioned | Byzantine Fault Tolerance (Sumeragi) | Private |
Waves | Permissionless | Waves-NG | Public |
Multichain | Permissioned | Distributed Consensus (Round Robin) | Private |
Openchain | Both | Partioned Consensus | Both |
Hydrachain | Permissioned | Byzantine Fault Tolerance (HC Consensus) | Private |
Monax (Eris) | Both | Proof of Stake (Tendermint) | Both |
Stellar | Permissionless | Federated Byzantine Agreement (Stellar consensus protocol – SCP) | Public |
Symbiont Assembly | Permissioned | Byzantine Fault Tolerance (BFT-SMaRt) | Private |
Nxt | Permissioned | Proof of Stake | Public |
Credits | Permissioned | Proof of Stake | Public |