What is Blockchain and why do we need blockchain?
I try to explain Blockchain in a very simple and intuitive way that a non-technical guy can understand.
First, why do we need blockchain when we already have all this technology?
Let's say there are two people, Alice and Bob. Alice borrows some money from Bob. Bob writes this on a piece of paper signed by Alice. Later, Bob loses this piece of paper, and Alice denies obtaining any money from Bob. Bob finds it difficult to prove that Alice borrowed money.
In this example, Alice & Bob are two nodes.
Now the same scenario can be imagined on a society level with K pairs of nodes each maintaining a piece of paper signed by another party, and if that paper is lost, another party can deny that it exists.
This is a huge problem faced by society, so one person suggested that every transaction that happens in society should be entered into one common ledger (notebook). And keep that common ledger in a safe place.
Here the ledger (notebook) can be referred to as a database.
Now we have a common ledger that will not be lost, so the previous problem is solved. However, another problem arises. Since we have only one ledger, if the person who maintains that ledger alters some entry by taking money from one party, there is no proof that the transaction has been altered, and the other party loses the money because we have only one ledger, which has been altered.
This problem is referred to as the single point of failure.
As we have only one ledger (database), we have a single point of failure, so Charlie suggests maintaining multiple notebooks. Charlie chooses some trustworthy members of the community and gives them each a notebook. Whenever a transaction or exchange occurs between two people, Charlie instructs some of those trustworthy people to note the transaction in their notebooks. In this way, the data is repeated in each notebook. If one notebook is destroyed, chances are that all the data regarding transactions will still be present in the combination of notebooks.
It is a distributed database with multiple notebooks acting as nodes.
Recommended by LinkedIn
But, A new problem arises. Charlie has a friend named David who owes money to a few members of his society. David asks Charlie for help, and Charlie agrees to do so. Charlie instructs all the people who have the notebooks to remove the entries where David received the money Now David doesn't owe any money based on the notebooks.
Distributed databases have this problem - they are centralized, which means that one entity can own all the nodes/resources and make changes as they see fit.
As soon as the people from the society come to know of it, they moved Charlie from leadership.
From Now on, Each person in society keeps a notebook. When a transaction occurs between two people, all of them come together and write it down in their notebooks. Therefore, if there are n people in society, then there are n notebooks, and no one person controls how the transaction is represented. This refers to the blockchain.
This is fully Decentralised, that's why we need blockchain.
They are also decided to never remove or delete already mentioned transactions from a notebook, this is immutability.
The name Blockchain refers to the chain of Blocks, let's understand what is this block from our notebook example, suppose In society 10 transactions happen every day, and we write all 10 transactions on a single page, so every day there is one single page added to the notebook and every page contains 10 transactions. A page in a notebook is a block in a blockchain, and every block in the blockchain stores the address (hash) of the previous block, this way every block links to the previous block, this is why it's called a blockchain.
Technical definition:
Blockchains organize transaction records into a hierarchically expanding chain of blocks, with each block protected by cryptography to ensure the strong integrity of its records. Blocks can only be committed to the global blockchain after they have successfully competed in the decentralized consensus procedure. In addition to the information about transactions, a block also maintains the hash value of the entire block, which is its cryptographic image. In addition, it also maintains the hash value of the previous block, which serves as a cryptographic link to the previous block.