pBFT or practical Byzantine Fault Tolerance Algorithm in Hyperledger is nothing but a consensus algorithm that is designed to work effectively in asynchronous systems. Optimized for low overhead time, pBFT’s primary goal was to solve the problems associated with Byzantine Fault Tolerance Solutions. pBFTs can be applied in distributed computing and blockchain networks.
The advantages of pBFT are many. These include:
These algorithms can save energy in achieving distributed consensus as they do not compute complex mathematical calculations.
Transactions in pBFT do not require multiple confirmations once approved.
Each node in the network (that incorporates pBFT) can be incentivized. Thus decision making can be substantially improved.
Working Principle of pBFT:
What pBFT practically does is that it provides a practical state machine replication that works even when there are malicious nodes in the network. In pBFT enabled distributed networks, one node is considered as a primary node and all other nodes that follow it are considered secondary.
Note: Nodes are ordered in a sequential manner. And, a node can become primary only if it is genuine when in the secondary state. The algorithm helps reach a consensus with the help of these genuine nodes. But there is one condition for pBFT to operate. The number of malicious nodes in the network should be less than or equal to one-third of the total number of nodes that are present in the network. So, as the number of nodes increases the system continues to become more secure. The operating principle of consensus mechanism in a pBFT can be broken down into four steps.
The client sends a request to the primary node.
The primary node passes the request to all secondary nodes.
The requested service is performed by all nodes and the client is sent a reply.
Consensus is achieved when the client receives (n+1) positive replies, where n is the total number of malicious nodes that are allowed in the network.