Byzantine Fault Tolerance is when two nodes in a P2P network can communicate safely across the network that they are peers of, knowing that they are displaying the very same data. In today’s blockchain technology, achieving Byzantine Fault Tolerance is among the most difficult challenges which needs to be addressed by the blockchain technology. The following paragraphs will likely enlighten you on why this is so challenging, yet a very important feature, and how it is actually achieved.
The “Byzantine Generals’ Problem” defines and states a problem with P2P networks which is that no 2 computers on a decentralized network can fully and irrefutably guarantee that they are actually displaying the very same data. If you assume that the network is unreliable, one can actually never be sure that the data that was transferred or communicated has arrived. At fundamental levels, the Byzantine Generals’ Problem is one of achieving consensus across a distributed network of devices (or peers/nodes in this context), some of which could actually be faulty, while also being weary of any attackers attempting to undermine the integrity of the network.
Hence, P2P network, to achieve a consensus the non-faulty loyal nodes need to achieve a unanimous agreement on their decision. Byzantine Fault Tolerance here means that an incoming message is repeated in its entirety to other recipients or nodes in the network that also received that incoming message.