Blockchain, the distributed ledger relies on consensus algorithms to reach agreement among nodes. The consensus algorithm ensures that there is no single point of failure since our entire data is decentralised. So, even if one node fails, we still have data in multiple other nodes, and hence the system provides us service even in the presence of failures, until and unless the network itself disconnects.
Starting from the early 90’s, a considerable amount of time & work has been devoted to the development of consensus algorithms over a network. Moreover, the underlying philosophy is based on message passing. For example, when you inform your current data to other nodes, everyone gets the data from all other nodes & validate their local data. This way you can see whether the data that you have is the most recent data or whether that data matches with the data of your peer.
Bitcoin network is a kind of permissionless network. Permissionless network means that anyone can join the network anytime without revealing his or her authority or identity. Hence, the traditional distribution system algorithm based on message passing will not be applicable here, because we do not know the nodes we can validate our data with. So, the question that we encounter here is, can we achieve consensus even when the network is arbitrarily large?
In simple words, no participant in the network knows the other participants, and that’s why the Bitcoin network is a kind of open network scenario and has a permissionless protocol.
We do not record our identity while participating in the consensus algorithm, but we still will be able to enter the consensus. To explore this kind of an idea, will a type of challenge-response based system work well? Where the network would pose a challenge to the participants & every participant will solve it individually, and each node/user in the network would attempt to resolve that particular challenge. This happens to be a kind of challenge-response protocol where the nodes/users in the network try to solve the problem posed by the network. In that case, the nodes/users do not need to reveal their identity. Once they solve a challenge, they will announce it, and we get to know who solved it first and will be able to validate the data & add it to the existing system. This continues iteratively at different rounds.
Now, the stimulating fact is that you can design a good challenge which will be posted at different rounds, to ensure that in different rounds, different nodes/users will win the challenge. Hence, you’re ensuring that no single node/user will be able to control the network single-handed. The respective valid blocks then get added in the current blockchain. This was the idea which came into practice and is known as proof of work algorithm, in the context of Bitcoin. Proof of work algorithm ensures that we have a consensus over permissionless setting based on the challenge response principle.
There’s another factor to be thrown light upon; the benefits participants get since they will have to incorporate or spend a significant amount of resources like computation power, time to solve that particular challenge, etc. What will be the incentive for the nodes/users? Why will they participate in the challenge response algorithm, since only one will win in each round? Hence, here comes the concept of digital money which ensures the operational efficiency and provides more level of controlling monetary policy. In 1998, Wei Dai published a concept called B-money, an anonymous, distributed electronic cash system, the mother concept of Bitcoin or cryptocurrencies. Satoshi Nakamoto referenced B-money when creating Bitcoin.
Whenever there´re participants in the mining procedure, the mining ensures that no node/user has the power to sabotage the network and gain the control, which is one of the best parts of the cryptocurrency algorithm. Hence, there should not be one centralised node like a bank or a government controlling the entire monetary policy, so that at every round different people will be able to add data to the blockchain. Moreover, the computational effort expended by the nodes/users in achieving the consensus algorithm will be paid with specific cryptocurrency which is generated & managed by the network. This way there will be a kind of monetary benefit to the miners. This way, the blockchain technology ensures that the currency is secure and tamper-proof.
Summarising the article, we have an impressive data structure that minutes the distributed ledger, which forms the backbone of the blockchain. We have the cryptography & the digital signature algorithms which ensures the security & the tamper-proof architecture of the entire blockchain data structure. Most importantly, we have the consensus algorithm over permissionless environment based on the challenge response scenario, where we do not have to reveal our identity and still be able to validate & be assured of correct data at individual nodes/users & the economy or the revenue model behind this architecture.