Byzantine BG Simulations for Message-Passing Systems
The BG-simulation is a powerful reduction algorithm designed for asynchronous read/write crash-prone systems, namely, it allows a set of asynchronous sequential processes to wait-free simulate (i.e., despite the crash of up to of them) an arbitrary number of processes under the assumption that at most of them crash. The BG simulation shows that, in read/write systems, the crucial parameter is not the number of processes, but the upper bound on the number of process crashes. The paper first focuses on BG-like simulations in the context of asynchronous message-passing systems. It incrementally presents two reductions. The first considers that processes may fail by crashing. Assuming , it simulates a system of processes where up to may crash, on top of a basic system of processes where up to may crash. The second simulation concerns the case where processes may commit Byzantine failures. Assuming , it simulates a system of processes where up to may be Byzantine, on top of a basic system of processes where up to may be Byzantine. It is important to notice that this algorithm is the first BG simulation algorithm that considers Byzantine process failures. These simulations, suited to asynchronous message-passing systems, are genuine in the sense that they do not rely on an intermediate stage simulating a read/write memory system. Moreover, they are built modularly. Each of the two new BG-like simulations relies on novel specific safe agreement objects. The one suited to message-passing Byzantine systems has noteworthy computability implications. It allows crash-tolerant algorithms, designed for asynchronous read/write systems, to be executed on top of asynchronous message-passing systems prone to Byzantine failures.
View on arXiv