The role of Distributed Computing in Blockchain Technology
Tags: computerscience, distributedsystems, blockchain, architecture
Published: 2020-12-04 12:09:38

Blockchain is a decentralized peer-to-peer network that allows data to be stored on thousands of servers following a collective trust model among these unknown peers. Blockchain is mainly used for cryptocurrencies and the initial release of the concept was with the introduction of Bitcoin. Presently the Blockchain technology is used in various other domains such as Global Trade and Commerce, Real Estate, Capital markets, and Asset Management. In Blockchain all the transactions are recorded in a distributed immutable ledger which ensures that all the transactions that are done among nodes are available at each node and the transactions cannot be deleted or edited.

The management of the distributed immutable ledger, the backbone of Blockchain is one of the main use cases of Distributed Computing in Blockchain. Distributed Computing ensures that every node in the network has a copy of the blockchain and that it is updated in real-time when a transaction takes place. Use of Distributed Computing along with the peer-to-peer architecture, blockchain also eliminates the use of a central authority to manage the network thus making the blockchain secure, transparent, and immutable.

Another key feature in the Distributed Network of Blockchain is maintaining the present state of the ledger. Once a set of transactions is validated and a block is created by a miner that block is added to the Blockchain. Even though there are many miners working on block creation the final block that is being added to the blockchain will be created by a single winning miner and all the other nodes in the blockchain should agree and synchronize with the present state of the Blockchain. This is known as the [consensus protocol](https://en.wikipedia.org/wiki/Consensus_(computer_science)) followed by the Blockchain and it helps the network to achieve reliability and maintain trust within the peers in the Blockchain. Distributed Computing plays a major role in maintaining this consensus protocol as every node has to communicate with its neighbor node in order to arrive at a common decision.

Blockchain is nothing but another Distributed System that heavily uses the concepts and elements of Distributed Systems and every computation that takes place in the blockchain can be stated as Distributed System Computing.

#### Complications that can occur when using Distributed Computing for Blockchain

* The network can be vulnerable to deterring cyberattacks such as Distributed Denial of Service(DDoS) which can exhaust the resources of a computing system by sending multiple fake requests. The majority of small Blockchain networks that contain a small number of nodes are subjected to these attacks and susceptible to
fraud with hackers gaining access to the majority of nodes. Large Blockchains such as Bitcoin and Ethereum manage a ‘Proof of Work’ protocol within the distributed system to overcome these issues. This is a well-defined process that improves the trust in the blockchain.
* Another complication in using Distributed Computing for Blockchain is that backups should be done on each node in the network. This process requires higher computational power and a well-connected system of nodes.
* Security should be applied to each node individually as there is no central authority to manage the system as a whole and the peer-to-peer architecture of the distributed system allows any node to be accessed anytime.

Thank you for reading. Hope you like it.