Analyzing the blockchain classifications: private vs public blockchain

Sushma Varadaiah
Consenso Labs
Published in
6 min readJan 25, 2019

It all started in 2009 when Bitcoin was created to transfer programmable money over the internet, without any intermediary. The industry was fascinated by the underlying concept of storing the ledger in a distributed manner. That’s when Distributed Ledger Technology(DLT) came into the picture.

Let’s try to understand few of the blockchain buzzwords before diving into the essence of this article:

Distributed Ledger Technology(DLT) background

Distributed ledgers use independent computers(nodes) to record, share and synchronize transactions in their respective electronic ledgers instead of keeping data centralized as in a traditional ledger. The nodes might be spread across different locations or regions.

Distributed ledger technology (DLT) consists of a data model that captures the current state of the ledger, a language of transactions that changes the ledger state(smart contracts) and a protocol used to build consensus among participants around which transactions will be accepted, and in what order, by the ledger(consensus algorithm).

Blockchain

A blockchain is a specific form or subset of distributed ledger technologies (DLTs), which constructs a chronological chain of blocks, hence the name “block-chain”.

A blockchain is a peer-to-peer distributed ledger forged by consensus, combined with a system for “smart contracts” and other assistive technologies.

-hyperledger.org

Consensus leads to all peers sharing the exact same data. The consensus algorithm varies with different blockchain implementations.

A consensus algorithm does two things:

  • It ensures that the data on the ledger is the same for all the nodes in the network.
  • Prevents malicious actors from manipulating the data.

Smart contracts are simply computer programs that execute predefined actions when certain conditions within the system are met. Smart contracts provide the language of transactions that allow the ledger state to be modified.

Although we had public blockchains like Bitcoin and Ethereum in place it was not suitable for all types of use cases due to one of the major features: “openness of the network” provided by public blockchain. Hence private blockchains came into the picture.

Hence the blockchains are roughly classified into these two categories:

  • Permissionless/public blockchain
  • Permissioned/Private blockchain

Permissionless/public Blockchain

A permissionless blockchain is also known as a public blockchain because anyone can join the network.

e.g.

  • Bitcoin
  • Ethereum

The openness of the network:

It is completely open and anyone can join and participate in the network. It allows anyone (as per smart contract) to add services or integrations to an existing application without having to ask for permission to access the network.

Trust in the network:

Any malicious peer can join the network. Since anyone can join the network the network is not trustworthy.

Onboarding a new user:

It allows for an easy and direct Onboarding process of new peer. New users are not required to install new software in order to use the application.

The growth of the network:

Since the Onboarding process of a new user is easy the popularity and interest for public blockchain is high.

Cost:

Public blockchains need to pay transaction fees to the miners. The operational costs of an application are mostly total of transaction fees required to operate the public blockchain. It doesn’t involve any maintenance cost.

Access control of the network:

Anyone can join the network and access network without any permission.

Control of the network:

Public blockchain network is controlled by its community (developers, users, service providers, miners). Although it is possible to build applications on the public chain which are under full control of its creator. With public visibility, developers can’t abuse the system.

Security in the network:

The openness of public blockchain leads to weak security which implies little to no privacy for transactions.

Speed of the network:

To achieve consensus between the peers a substantial amount of computational power is necessary to maintain the distributed lever at a large scale. As the number of nodes increases in the public network the computational power of the network also increases.

Reliability of the network:

Regulation of the running nodes in the network is difficult since a public blockchain may have thousands of nodes. Spike in transactions or a loss of nodes can reduce the overall network power.

Permissioned/Private blockchain

A permissioned blockchain, or private blockchain, requires pre-verification of the participating parties within the network, and these parties are usually known to each other. In private blockchain, restrictions exist and said blockchains aren’t accessible to all parties.

e.g.

  • Chain Core
  • Quoram
  • MultiChain
  • Corda
  • Hyperledger Project

The openness of the network:

It is not open. Only authorised nodes can join the network. Hence it’s more secure. It allows only authorised peers to add services or integrations to an existing application.

Trust in the network:

Since only authorised users can join the network, we can trust the network.

Onboarding a new user:

Onboarding process of new peers is a difficult process since the peer needs an invitation and must be validated by either the network starter peer or by a set of rules put in place by the network starter peer. New users may need to generate a new key pair to authenticate themselves on the network.

The growth of the network:

Private blockchains may involve significant time and money to get new nodes online. Since Onboarding of the new users is difficult the new user may not be attracted to use private blockchain.

Cost:

The operational cost depends on the number of redundant peer nodes. It involves maintenance cost, money is spent on protecting access to the network.

Access control of the network:

The access control mechanism could vary: existing peers could decide future entering peers; a regulatory authority could issue licenses for peers, or a consortium could make the decisions instead. Can be configured in a way where high transactions throughputs are possible.

Control of the network:

If public users or paying customers are using a private blockchain, they are at the mercy of the developers or network owners. Without public visibility, developers are free to abuse the system which may involve manipulating transactions, blocking a particular user from the network or other tactics.

Security in the network:

Since only authorised nodes can join the network the network is more secure from the malicious nodes.

Private channels:

Private blockchain has the concept of channels where the entities(peers) who wants to communicate secretly without intimating other peers come together and join a channel. Channel transactions are visible only to the peers participating in the channel. Privacy can be greatly achieved by this.

The speed of the network:

Since the number of peers in the network is known and controlled, achieving consensus is much easier and requires less computational power when compared to the public blockchain.

Reliability:

By regulating the network and running the nodes, private blockchains can reduce downtime. Tight control of a private blockchain can help to maximize uptime.

Although private and public blockchains have many differences it also got some similarities.

  • Both public and private blockchains are distributed peer-to-peer networks where each peer maintains an immutable append-only copy of the ledger.
  • All peer nodes in private and public blockchain maintain the copy of the ledger in sync through a consensus algorithm.
  • Both public and private blockchains use their own smart contract program to run the transaction on the ledger.

When to choose which blockchain?!

Well, it depends on the use case.

  • When a business use case doesn’t stress on careful investigation of the participating peers in the network choose public blockchain.
  • When the use case demands the complete openness and public participation, choose public blockchain.

e.g. Cryptocurrencies

  • When a business use case does stress on careful investigation of the participating peers in the network choose public blockchain.
  • When the use case demands the involvement of private transactions between subset peers of the network choose private blockchain.

e.g. Supply chain management, Banking services

In my opinion, both public and private blockchains come with its own advantages and disadvantages, we have to extensively analyse which one will suit for a particular use case in hand and go with it.

Please clap for the article if you like it.

Happy blockchaining!

--

--

Sushma Varadaiah
Consenso Labs

Blockchain | Hyperledger Fabric | Cloud | DevOps | IOT | Full Stack