What is Blockchain?
Technically speaking, a blockchain is a collection of blocks connected chronologically. The block is a collection of data and information which contains data, hash, and the hash of the previous block. These blocks, when connected, form a blockchain. In other terms, Blockchain is a distributed ledger. That is, it a ledger (record-keeping files) which is spread across everyone in the blockchain network and is accessible by everyone in the network. However, this ledger can only be viewed and cannot be altered. Hence, making it secure. Thus, this technology is referred to as the blockchain technology. For example, the transactions of cryptocurrencies are handled by blockchain technology.
Before diving into the components of the blockchain ecosystem, let us first briefly understand the working of Blockchain. Knowing how it operates can help in a better comprehension of its components. The Blockchain works as follows:
- There is a node that initiates a transaction and gets it digitally signed with a private key.
- The transaction is then validated by passing the transaction information to all the peers in the network. Usually, more than one node is required to validate the information.
- Once the transaction is validated, it is added into the block. Hence, the transaction is said to be confirmed. For a new block to be created and added into the network, it has to go through the same process.
The main components of a Blockchain ecosystem
As we now know the briefly the working of the blockchain network, Let us shed some light on its components as well. To understand the blockchain technology, it is crucial to comprehend the components that go into the blockchain ecosystem. There are four key components of any blockchain ecosystem. They are:
- Node Application
- Distributed Ledger
- Consensus Algorithm
- Virtual Machine
These four components make up the blockchain network. There are more components to it as well, but, the other parts ultimately fall into these four categories. Therefore, let’s dig deep into each topic and understand what it is and what does it do.
A node application is a specific application where each internet-connected computer needs to download and install if they wish to participate in the blockchain ecosystem. Once installed, they become part of the blockchain network. In the case of Bitcoin as an ecosystem, every computer must be running a Bitcoin wallet application to be a part of the blockchain network. Bankchain is another ecosystem where only banks have permission to run the node application. Whereas, in a Bitcoin ecosystem, anyone can download and install the node application and can become a part of the network.
Technically speaking, the blockchain ecosystem works based on a Service Overlay Network (SON). To be a node in this network, your computer must have an application that can affect the shared state of the SON.
First, let us understand what a ledger is. A ledger is a file (usually a computer file) that records data and transactions made by a user. In simple words, the distributed ledger is a ledger that is distributed across everyone in the network. A distributed ledger is a database that is shared, replicated, and synchronised among the peers of the network. The main feature of the distributed ledger is that it is decentralised. Decentralisation serves as the primary advantage to the users. When a ledger is updated, each node in the network constructs the transaction, and then come to an agreement that the copy of the ledger is correct. Once, it is agreed by all the nodes in the network; the nodes update themselves with the new copy of the ledger. Also, every record in the distributed ledger has a timestamp and a unique signature (by cryptographic technique), making the ledger immutable and safe from tampering.
Every transaction made using Blockchain is verified and extremely secure. Well, That is not because it is decentralised. The reason for its security is the presence of the consensus algorithm. According to the definition, a consensus algorithm is a process in computer science used to achieve agreement on some information among the distributed systems. This concept was put into use by the blockchain technology. The consensus algorithm was designed for the blockchain technology to achieve reliability in a blockchain network having multiple nodes. Hence, this ensures that every incoming block in the network is entirely validated and secure. There are several kinds of consensus algorithms that exist.
Proof of Work
The very first implementation of the consensus algorithm is proof of the work consensus algorithm. The Proof of Work algorithm is a functional tool that is used to process the blocks in a blockchain and is used to add them into the blockchain network. To add a block into the blockchain network, the block must be correct. Therefore, the process of generating correct proofs (blocks) to add a block to the Blockchain is known as mining. And the ones who mine are called miners. Therefore, to add a block to a blockchain, the miners have to solve a cryptographic puzzle. Only then, a block is added into the Blockchain.
Proof of stake
The Proof of Stake algorithm is a little different from the Proof of Work algorithm. As in, it follows a different method to generate a block within a blockchain. In the Proof of Work algorithm, miners who successfully crack the puzzle are allowed to create a block. However, in the Proof of Stake algorithm, the ones who can generate blocks are chosen by the Proof of Work systems.
These people are called validators. The validators are chosen by specific criteria set by the Proof of Stake system. Usually, the criteria are the economic stake of the validator in the network. If a validator possesses a lot of coins, then the validator is chosen to generate the blocks.
Therefore, the probability of a validator being chosen depends on the number of coins they possess. Another criterion to get selected is referred to as “coinage.” That is, since how long the validator is holding those coins. Longer the period, higher is the probability of getting selected.
Proof of Burn
Miners of the proof of burn coins send their coins to an unsendable address. By this, the coins are said to be burned and are referred to as proof of burn coins. This is noted by the Blockchain. The whole concept of proof of burn consensus is that the user burning the coins represents a long term commitment towards the coins. For doing this, the user of a ‘proof of burn’ coin, receives rewards. Sometimes, the proof of work coins are burned and exchanged for the proof of burn coins.
A virtual machine is the last logical component in a blockchain ecosystem. It is implemented as a part of the node application. Firstly, a virtual machine is a machine created by a computer program. It is basically an imaginary machine, held inside a real machine. The virtual machine finds its application in Ethereum blockchain ecosystems. Here, is called the Ethereum virtual machine (EVM). This EVM lives in the node application. The EVM can understand instructions which help in managing the state of a digital contract. The EVM in the node application enforces the terms of the contract and then releases a digital token called the “ether” as part of the transaction. Also, this contract cannot be tampered with, as is secured using cryptography.