PBFT is the abbreviation of Practical Byzantine Fault Tolerance. The algorithm is actually to reach a consensus on incoming messages and get a global order. In the case of no more than 1/3 of the total number of malicious nodes, the algorithm can guarantee both safety (Safety) and liveness (Liveness).
This algorithm reduces the complexity of Byzantine fault-tolerant algorithm from exponential level to polynomial level for the first time. O (N 2) O(N^2)O(N2)
Difference from the public chain consensus algorithm
It is impossible for a public blockchain to agree on block 1 and block 2 at the same time, but in pbft, the consensus of transaction 1 and transaction 2 is parallel.
In the public blockchain, each block is serialized for consensus. The object of consensus is the block, and the block contains transactions collected over a period of time
In pbft, the object of consensus is every transaction (it can be said that there is no concept of block in pbft), and the process of transaction consensus is parallel (limited to high and low water levels).