22,518 research outputs found
Relaxed Byzantine Vector Consensus
Exact Byzantine consensus problem requires that non-faulty processes reach
agreement on a decision (or output) that is in the convex hull of the inputs at
the non-faulty processes. It is well-known that exact consensus is impossible
in an asynchronous system in presence of faults, and in a synchronous system,
n>=3f+1 is tight on the number of processes to achieve exact Byzantine
consensus with scalar inputs, in presence of up to f Byzantine faulty
processes. Recent work has shown that when the inputs are d-dimensional vectors
of reals, n>=max(3f+1,(d+1)f+1) is tight to achieve exact Byzantine consensus
in synchronous systems, and n>= (d+2)f+1 for approximate Byzantine consensus in
asynchronous systems.
Due to the dependence of the lower bound on vector dimension d, the number of
processes necessary becomes large when the vector dimension is large. With the
hope of reducing the lower bound on n, we consider two relaxed versions of
Byzantine vector consensus: k-Relaxed Byzantine vector consensus and
(delta,p)-Relaxed Byzantine vector consensus. In k-relaxed consensus, the
validity condition requires that the output must be in the convex hull of
projection of the inputs onto any subset of k-dimensions of the vectors. For
(delta,p)-consensus the validity condition requires that the output must be
within distance delta of the convex hull of the inputs of the non-faulty
processes, where L_p norm is used as the distance metric. For
(delta,p)-consensus, we consider two versions: in one version, delta is a
constant, and in the second version, delta is a function of the inputs
themselves.
We show that for k-relaxed consensus and (delta,p)-consensus with constant
delta>=0, the bound on n is identical to the bound stated above for the
original vector consensus problem. On the other hand, when delta depends on the
inputs, we show that the bound on n is smaller when d>=3
Distributed Computability in Byzantine Asynchronous Systems
In this work, we extend the topology-based approach for characterizing
computability in asynchronous crash-failure distributed systems to asynchronous
Byzantine systems. We give the first theorem with necessary and sufficient
conditions to solve arbitrary tasks in asynchronous Byzantine systems where an
adversary chooses faulty processes. In our adversarial formulation, outputs of
non-faulty processes are constrained in terms of inputs of non-faulty processes
only. For colorless tasks, an important subclass of distributed problems, the
general result reduces to an elegant model that effectively captures the
relation between the number of processes, the number of failures, as well as
the topological structure of the task's simplicial complexes.Comment: Will appear at the Proceedings of the 46th Annual Symposium on the
Theory of Computing, STOC 201
Efficient Synchronous Byzantine Consensus
We present new protocols for Byzantine state machine replication and
Byzantine agreement in the synchronous and authenticated setting. The
celebrated PBFT state machine replication protocol tolerates Byzantine
faults in an asynchronous setting using replicas, and has since been
studied or deployed by numerous works. In this work, we improve the Byzantine
fault tolerance threshold to by utilizing a relaxed synchrony
assumption. We present a synchronous state machine replication protocol that
commits a decision every 3 rounds in the common case. The key challenge is to
ensure quorum intersection at one honest replica. Our solution is to rely on
the synchrony assumption to form a post-commit quorum of size , which
intersects at replicas with any pre-commit quorums of size . Our
protocol also solves synchronous authenticated Byzantine agreement in expected
8 rounds. The best previous solution (Katz and Koo, 2006) requires expected 24
rounds. Our protocols may be applied to build Byzantine fault tolerant systems
or improve cryptographic protocols such as cryptocurrencies when synchrony can
be assumed
The Impact of RDMA on Agreement
Remote Direct Memory Access (RDMA) is becoming widely available in data
centers. This technology allows a process to directly read and write the memory
of a remote host, with a mechanism to control access permissions. In this
paper, we study the fundamental power of these capabilities. We consider the
well-known problem of achieving consensus despite failures, and find that RDMA
can improve the inherent trade-off in distributed computing between failure
resilience and performance. Specifically, we show that RDMA allows algorithms
that simultaneously achieve high resilience and high performance, while
traditional algorithms had to choose one or another. With Byzantine failures,
we give an algorithm that only requires processes (where
is the maximum number of faulty processes) and decides in two (network)
delays in common executions. With crash failures, we give an algorithm that
only requires processes and also decides in two delays. Both
algorithms tolerate a minority of memory failures inherent to RDMA, and they
provide safety in asynchronous systems and liveness with standard additional
assumptions.Comment: Full version of PODC'19 paper, strengthened broadcast algorith
Tight Bounds for Connectivity and Set Agreement in Byzantine Synchronous Systems
In this paper, we show that the protocol complex of a Byzantine synchronous
system can remain -connected for up to rounds,
where is the maximum number of Byzantine processes, and .
This topological property implies that rounds are
necessary to solve -set agreement in Byzantine synchronous systems, compared
to rounds in synchronous crash-failure systems. We
also show that our connectivity bound is tight as we indicate solutions to
Byzantine -set agreement in exactly synchronous
rounds, at least when is suitably large compared to . In conclusion, we
see how Byzantine failures can potentially require one extra round to solve
-set agreement, and, for suitably large compared to , at most that
A Byzantine Fault Tolerant Distributed Commit Protocol
In this paper, we present a Byzantine fault tolerant distributed commit
protocol for transactions running over untrusted networks. The traditional
two-phase commit protocol is enhanced by replicating the coordinator and by
running a Byzantine agreement algorithm among the coordinator replicas. Our
protocol can tolerate Byzantine faults at the coordinator replicas and a subset
of malicious faults at the participants. A decision certificate, which includes
a set of registration records and a set of votes from participants, is used to
facilitate the coordinator replicas to reach a Byzantine agreement on the
outcome of each transaction. The certificate also limits the ways a faulty
replica can use towards non-atomic termination of transactions, or semantically
incorrect transaction outcomes.Comment: To appear in the proceedings of the 3rd IEEE International Symposium
on Dependable, Autonomic and Secure Computing, 200
Byzantine Approximate Agreement on Graphs
Consider a distributed system with n processors out of which f can be Byzantine faulty. In the approximate agreement task, each processor i receives an input value x_i and has to decide on an output value y_i such that
1) the output values are in the convex hull of the non-faulty processors\u27 input values,
2) the output values are within distance d of each other.
Classically, the values are assumed to be from an m-dimensional Euclidean space, where m >= 1.
In this work, we study the task in a discrete setting, where input values with some structure expressible as a graph. Namely, the input values are vertices of a finite graph G and the goal is to output vertices that are within distance d of each other in G, but still remain in the graph-induced convex hull of the input values. For d=0, the task reduces to consensus and cannot be solved with a deterministic algorithm in an asynchronous system even with a single crash fault. For any d >= 1, we show that the task is solvable in asynchronous systems when G is chordal and n > (omega+1)f, where omega is the clique number of G. In addition, we give the first Byzantine-tolerant algorithm for a variant of lattice agreement. For synchronous systems, we show tight resilience bounds for the exact variants of these and related tasks over a large class of combinatorial structures
Breaking the O(n^2) Bit Barrier: Scalable Byzantine agreement with an Adaptive Adversary
We describe an algorithm for Byzantine agreement that is scalable in the
sense that each processor sends only bits, where is
the total number of processors. Our algorithm succeeds with high probability
against an \emph{adaptive adversary}, which can take over processors at any
time during the protocol, up to the point of taking over arbitrarily close to a
1/3 fraction. We assume synchronous communication but a \emph{rushing}
adversary. Moreover, our algorithm works in the presence of flooding:
processors controlled by the adversary can send out any number of messages. We
assume the existence of private channels between all pairs of processors but
make no other cryptographic assumptions. Finally, our algorithm has latency
that is polylogarithmic in . To the best of our knowledge, ours is the first
algorithm to solve Byzantine agreement against an adaptive adversary, while
requiring total bits of communication
- …