What Is Asynchronous Byzantine Fault Tolerance (ABFT)?
When a network is Byzantine Fault Tolerant (BFT), it means it can withstand an attack from up to one-third of malicious nodes. The ‘asynchronous’ element of the BFT solves the challenge of timing. It allows for the honest nodes in a network to agree on the timing and order of a set of transactions in a fair and secure manner.
In most cases, the BFT assumes a maximum threshold of latency when trying to achieve consensus. An Asynchronous Byzantine Fault Tolerance (ABFT), however, removes this assumption and allows for some messages to be lost or delayed indefinitely, with the assumption that the messages will get through at a certain point in the future.
There are not many applications using the ABFT consensus mechanism, but a good example is the HoneyBadgerBFT. This protocol employs a novel atomic broadcast system to achieve liveness without making any time-related assumptions.