What is Blockchain?
Blockchain has been one of the most awe-inspiring innovations since the Internet came into existence. Blockchain technology allows everyone to hold and make transactions as strangers, but in a completely transparent manner. There is no mediator in between two people making the transaction, and the entire process becomes easier and cheaper. This concept can be applied to the entire digital world making any kind of exchange/transactions secure.
People use the term "blockchain technology" to mean different things, and it can be confusing. Sometimes they are talking about The Bitcoin Blockchain, sometimes it is The Ethereum Blockchain, sometimes it is other virtual currencies or digital tokens, and sometimes it is smart contracts. Most of the time though, they are talking about distributed ledgers, i.e. a list of transactions that is replicated across a number of computers, rather than being stored on a central server.
The common themes seem to be a data store which:
- Usually contains business transactions.
- Is replicated across a number of systems in almost real-time.
- Usually exists over a peer-to-peer network.
- Uses cryptography and digital signatures to prove identity, authenticity and enforce read/write access rights.
- Can be read by certain participants, maybe a wider audience.
- Can be written by certain participants.
- Has mechanisms to make it hard to change historical records, or at least make it easy to detect when someone is trying to do so.
We see "blockchain technology" as a collection of technologies, a bit like a bag of Lego. From the bag, you can take out different bricks and put them together in different ways to create different results.
Some key characteristics of Blockchain are:
- As a distributed ledger system, blockchain records and validate each and every transaction made, which makes it secure and reliable.
- All the transactions made are authorized by miners, which makes the transactions immutable and prevent it from the threat of hacking.
- Blockchain technology discards the need of any third-party or central authority for peer-to-peer transactions.
- Decentralization of the technology.
TYPES OF BLOCKCHAIN
In a Public Blockchain, anyone can read and write the data stored on Blockchain as it is accessible to everyone in the world. A person can become a member of Blockchain network and can store, send and receive data after downloading the required software on his/her device.
The network typically has an incentivizing mechanism to encourage more participants to join the network.
A Public Blockchain is completely decentralized as the permissions to read and write data onto Blockchain are shared equally by all the connected users, who come to a consensus before any data is stored on the database. A Public Blockchain is based on a completely trust-less system where no user is given special privileges on any decision.
The most common implementations of a Public Blockchain is Ethereum where the public nature of Blockchain allows users from various backgrounds to come on a common platform for making transactions and eliminates the need for third party vendors by making transactions direct between users.
As it is decentralized, a Public Blockchain is also mathematically very hard to hack as the cost of hacking becomes too high for a system where every node connected is synced with the entire Blockchain database (one has to invest a lot of hardware to overtake the network hash rate). Since all transactions in a public Blockchain need to be verified by thousands of users, the transaction verification process can become very time consuming.
A drawback of a public blockchain is the substantial amount of computational power that is necessary to maintain a distributed ledger at a large scale. More specifically, to achieve consensus, each node in a network must solve a complex, resource-intensive cryptographic problem called a proof of work to ensure all are in sync.
Another disadvantage is the openness of public blockchain, which implies little to no privacy for transactions and only supports a weak notion of security. Both of these are important considerations for enterprise use cases of blockchain.
In a Public Blockchain, the permissions to write data onto Blockchain are controlled by one organization which is highly trusted by the other users. This organization may or may not allow users to have access to read the data, as public readability might not be necessary in most cases. In some situations, the organization might want the public to audit the data. Limited/restricted read permissions also provide a greater level of privacy to the users, a feature not available in Public Blockchains.
The organization in control has the power to change the rules of a Private Blockchain and may also decline transactions based on their established rules and regulations.
In a Private Blockchain, the transactions are quicker as they can be verified be a small number of devices. Thus, the users pay lesser amounts of transaction fees since the number of people verifying the transaction is fewer than in a Public Blockchain.
Also, the devices are very well connected and any faults can be fixed by human intervention, which can be easily approved by the users since the users trust the single organization in control of Blockchain.
Hyperledger Fabric is an example of a private blockchain framework implementation and one of the Hyperledger projects hosted by The Linux Foundation. It has been designed ground up to cater to these enterprise requirements.
Permissioned blockchains also permit a couple of orders of magnitude greater scalability in terms of transactional throughput.