Blockchain technology provides a distributed ledger to store data, making data verifiable and independently auditable. Bitcoin’s blockchain is the most trusted immutable data store but it is not very useful for non-Bitcoin transactions.
Each Blockchain transaction is initiated as a block, the block is shared across all parties, the parties in network approve the transaction and the block is added to the chain.
Bitcoin blockchain has its own set of constraints to be widely useful for applications that are based on this technology because of the size limit of 1 MB per block, cost of transactions, speed with the algorithm confirmations, transaction fees, it is slow, expensive and has scaling limitations.
Blockchain Development Types
Public Chain (Bitcoin, Ehtereum):
The most common form of Blockchain implementation which is Bitcoin’s or Etherium are both public and these completely decentralized and transparent.
Public Blockchain algorithm was designed to be totally decentralized and transparent, anyone can be a node, anyone can join the network and one can be minor to service the network and earn the rewards.
The public chain offers security and trust by using the power of computing across anyone who wants to join the network and be a part of it.
The most common analogy that I find interesting and closest to the real world example describe Public chain to the Internet and Private chains to Intranet.
Public chains will always have higher transaction cost and execution time in comparison but offer transparency as every transaction that ever happens in the public chain will always persist on the chain and can be found by anyone. the public chain can have a limited scalability issue since every fully participating node must process every transaction.
As the size of the blockchain grows, this would mean the requirements for each node for its hardware and bandwidth would continue to grow and could potentially mean that it may not be feasible for anyone to join the network.
Ethereum did take the Blockchain to 2.0 by providing a way for the decentralized platform to be used beyond cryptocurrencies and it does that with the Smart Contracts. This definitely opens the opportunity to build all kinds of applications on Blockchain.
A contract in the sense of Solidity is a collection of code (its functions) and data (its state) that resides at a specific address on the Ethereum blockchain.
Private chain (Hyperledger)
Private chain takes the core architecture of the Blockchain technology and adds a layer of organization to it. This is only accessible to individuals within that organization, who have been given access to use the blockchain by its proof.
As the private chains are governed by a layer of organization and control, these have much higher throughput and transaction speeds than the public chain but they lose the value of being completely decentralized and transparent.
The private chain does make a very interesting choice of technology for developing highly secure applications for financial and enterprise applications.
You can fork Ethereum and create your own private chain.
Hyperledger is one of the popular open-source private blockchains. There are many platforms on the hyper ledger blockchain and one of the most popular ones is Hyperledger Fabric.
These blockchain platforms provide a modular architecture with a delineation of roles between the nodes in the infrastructure, execution of Smart Contracts (called “chain code” in Fabric) and configurable consensus and membership services
Consortium chain (R3)
A consortium blockchain is a hybrid blockchain with benefits of the private blockchain such as transaction speed, higher throughput and do not put the control within one organization but with a group of trusted parties. For example. If the UN decides to use blockchain were to recommend a consortium blockchain to share transactional data for all countries and every country be a node, only these countries will have access to execute transactions and these would be visible to all countries and would be a circle of trust that is not dependent on one organization or country.