  The BG-simulation is a powerful reduction algorithm designed for asynchronous
read/write crash-prone systems. It allows a set of $(t+1)$ asynchronous
sequential processes to wait-free simulate (i.e., despite the crash of up to
$t$ of them) an arbitrary number $n$ of processes under the assumption that at
most $t$ of them may crash. The BG simulation shows that, in read/write
systems, the crucial parameter is not the number $n$ of processes, but the
upper bound $t$ on the number of process crashes.
  The paper extends the concept of BG simulation to asynchronous
message-passing systems prone to Byzantine failures. Byzantine failures are the
most general type of failure: a faulty process can exhibit any arbitrary
behavior. Because of this, they are also the most difficult to analyze and to
handle algorithmically. The main contribution of the paper is a signature-free
reduction of Byzantine failures to crash failures. Assuming $t<\min(n',n/3)$,
the paper presents an algorithm that simulates a system of $n'$ processes where
up to $t$ may crash, on top of a basic system of $n$ processes where up to $t$
may be Byzantine. While topological techniques have been used to relate the
computability of Byzantine failure-prone systems to that of crash failure-prone
ones, this simulation is the first, to our knowledge, that establishes this
relation directly, in an algorithmic way.
  In addition to extending the basic BG simulation to message-passing systems
and failures more severe than process crashes, being modular and direct, this
simulation provides us with a deeper insight in the nature and understanding of
crash and Byzantine failures in the context of asynchronous message-passing
systems. Moreover, it also allows crash-tolerant algorithms, designed for
asynchronous read/write systems, to be executed on top of asynchronous
message-passing systems prone to Byzantine failures.
