Loyal lieutenants will do whatever the algorithm says, but traitors can do anything they want. The algorithm must guarantee the first condition, no matter what the traitors do. Loyal lieutenants should not only reach an agreement, but agree on a reasonable plan. In this article, we have discussed some general information about the problem of consensus in distributed systems. A Byzantine error (interactive consistency, congruity of sources, avalanche of errors, Byzantine correspondence problem, Byzantine generals problem, and Byzantine failure[1]) is a condition of a computer system, especially distributed computer systems, where components can fail and where there is imperfect information about the failure of a component. The term takes its name from an allegory, the “problem of the Byzantine generals”[2], which was designed to describe a situation in which the actors of the system must agree on a concerted strategy to avoid a catastrophic failure of the system, but some of these actors are unreliable. A fundamental problem in distributed computing and multi-agent systems is to achieve the security of the system as a whole for a number of faulty processes. This often requires processes to agree on a necessary data value during the calculation.¹ Even if the first message passes, general 2 must confirm (ACK, note the resemblance to TCP`s 3-way handshake) that it received the message, then it returns a messenger and thus repeats the previous scenario, in which the messenger can be intercepted. .