Blockchain Academy
We'll get together for networking with people interested in Blockchain including developers and anyone curious about Blockchain.

PBFT

PBFT is a system for a fast and effective transaction in a distributed network and has been used before the blockchain. Unlike Bitcoin, which prioritize Liveness, PBFT prioritizes Safety and derives a consensus in any circumstances even with traitors or failed nodes.

In PBFT, when 'N' is the total number of verification node and 'f' is the number of traitors, as long as the equation, N = 3f + 1 is established and 2/3 of nodes agree on a consensus, the consensus always will be achieved.

  • Request : The client delivers the block with transactions to primary node, zero.
  • Pre-prepare : The node zero delivers the block to the back-up nodes.
  • Prepare : The back-up nodes inform each node the fact that they received the block.
  • Commit : Each node evaluates and verifies the result from the back-up nodes and delivers the conclusion to each node again.
  • Reply : When 2/3 of the responses from each node reaches the consensus, the block with transactions will be operated.

As shown in 3 above, even if the nodes have a system error or are not responding by hacking or sending a wrong result, it is possible to respond the client because of the over 2/3 of consensus. But, if the total number of nodes 'N' becomes larger, the network suffers from traffic, so the verification nodes need to be restricted properly. (N =3f +1 should be satisfied. 4, 7, 10 ...)