Zachary Goldstein
2 min readApr 7, 2022

--

What is Istanbul Byzantine Fault Tolerant (IBFT)

Istanbul Byzantine Fault Tolerant or IBFT for short, is based off the game theory of the ‘Two Generals’ Problem’. It is an alternate consensus mechanism to PoW on the ethereum network. IBFT is mostly used for private blockchains which both polygon edge and consensys quorum both have the ability to use. IBFT is one of the many flavors of PoA (Proof of Authority). The two generals’ problem goes as follows; there are two armies surrounding one enemy city. Each army is commanded by its own general, general A and general B. Their only form of communication is through a messenger, and they have to decide on a common plan of action, whether to attack or retreat. There is a chance that the messenger could get captured by the enemy, and the action to attack or retreat would be lost.

Link for more reading and picture source

Scenario one: General A wants to attack, so they send a message across the valley to general B. General B then says that he will attack too, so he sends the message back to A. But B still doesn’t know if A got the second message, so A has to send back a confirmation message to B, three messages are sent. The plan is to attack at dawn, and it happens, the enemy city is conquered.

Scenario two: A sends a message to B, time has passed and A is unsure if B got the message to attack. There is no confirmation from B that they will attack too. There are two possibilities, the message from A was captured, or maybe B’s message was captured on the way back. In both cases there is no consensus, and either A or B will attack but not both.

This idea of sending confirmations back and forth gets complicated, because you may need to confirm the confirmation of attacking. This is where it comes into blockchain and creating trust on a network. It is a lot more complicated than the two generals’ problem. Below is a picture of what IBFT looks like. You can read more about this on github as it is very intricate and in depth.

The main goal of IBFT on the blockchain is to ensure a single, agreed upon ordering for transactions on the blockchain. IBFT provides immediate block finality, reduced time between blocks, high data integrity and fault tolerance, and operationally flexible.

--

--

Zachary Goldstein

Syracuse University Senior in Information Management and Technology, Blockchain Researcher