|| Author: Duncan Riley|

Byzantine Agreement Problem Was First Defined By

Each node in the structure has three elements: an input value, a path, and an output value. The input value and path are defined in the first phase of the algorithm – these are simply the messages received by the processes by peers. The output value remains indeterminate until the second step of the algorithm that I determine here. Note that in the figure below, the output values are first set to `?`, indicating that they are currently unknown. This problem is based on an imaginary general who makes a decision to attack or withdraw and has to communicate the decision to his lieutenants. A number of these actors are traitors (including perhaps the general). Traitors cannot be relied upon when it comes to properly communicating orders; Worse, they can change messages actively to undermine the process. There are no generals. The connection between them is achieved by reliable communication (for example.B. telephone). The generals of these n are traitors and try to prevent the agreement between the loyal generals. The agreement is that all loyal generals learned the number of loyal armies and came to the same conclusion (it could be wrong) about the state of treacherous armies (this is important if generals plan to choose a strategy based on the data received, and it is necessary that all generals have chosen the same strategy). Step 4: Each general checks each element in the received vectors.

If a value in the list corresponds to two vectors, it is inserted into the result vector, in another case it is marked as unknown. In the end, all generals will receive a vector (1,2, unknown,4). That is how an agreement will be reached. If n=3 and m=1, there is no agreement. Byzantine matching algorithms were also integrated into the hardware of error-tolerant multiprocessor systems; They are used using a small collection of processors to perform identical calculations and agree on the results of each step. This redundancy allows processors to tolerate the failure of a processor. Byzantine matching algorithms are also useful for processor error diagnosis, where they can allow a collection of processors to agree on which of their numbers have failed (and should therefore be replaced or ignored). . .


Comments are closed