arXiv ScienceSearch

arXiv subjects

Tyler Crain

Publications and source records attributed to Tyler Crain.

7 recordsLinked to original sources

Experimental Evaluation of Asynchronous Binary Byzantine Consensus Algorithms with $t < n/3$ and $O(n^2)$ Messages and $O(1)$ Round Expected Termination

This work performs an experimental evaluation of four asynchronous binary Byzantine consensus algorithms [11,16,18] in various configurations. In addition to being asynchronous these algorithms run in rounds, tolerate up to one third of faulty nodes, use $O(n^2)$ messages, and use randomized common coins to terminate in an expected constant number of rounds. Each of the four algorithms have different requirements for the random coin, for the number of messages needed per round, whether or not cryptographic signatures are needed, among other details. Two different non-interactive threshold common coin implementations are tested, one using threshold signatures, and one based on the Diffe-Hellman problem using validity proofs [11]. Experiments are run in single data center and geo-distributed configurations with between $4$ and $48$ nodes. Various simple faulty behaviors are tested. As no algorithm performs best in all experimental conditions, two new algorithms introduced that simply combine properties of the existing algorithms with the goal of having good performance in the majority of experimental settings.

cs.DC

Two More Algorithms for Randomized Signature-Free Asynchronous Binary Byzantine Consensus with $t < n/3$ and $O(n^2)$ Messages and $O(1)$ Round Expected Termination

This work describes two randomized, asynchronous, round based, Binary Byzantine faulty tolerant consensus algorithms based on the algorithms of [25] and [26]. Like the algorithms of [25] and [26] they do not use signatures, use $O(n^2)$ messages per round (where each message is composed of a round number and a constant number of bits), tolerate up to one third failures, and have expected termination in constant number of rounds. The first, like [26], uses a weak common coin (i.e. one that can return different values at different processes with a constant probability) to ensure termination. The algorithm consists of $5$ to $7$ message broadcasts per round. An optimization is described that reduces this to $4$ to $5$ broadcasts per round for rounds following the first round. Comparatively, [26] consists of $8$ to $12$ message broadcasts per round. The second algorithm, like [25], uses a perfect common coin (i.e. one that returns the same value at all non-faulty processes) for both termination and correctness. Unlike [25], it does not require a fair scheduler to ensure termination. Furthermore, the algorithm consists of $2$ to $3$ message broadcasts for the first round and $1$ to $2$ broadcasts for the following rounds, while [29] consists of $2$ to $3$ broadcasts per round.

cs.DC

A Simple and Efficient Asynchronous Randomized Binary Byzantine Consensus Algorithm

This paper describes a simple and efficient asynchronous Binary Byzantine faulty tolerant consensus algorithm. In the algorithm, non-faulty nodes perform an initial broadcast followed by a executing a series of rounds each consisting of a single message broadcast plus the computation of a global random coin using threshold signatures. Each message is accompanied by a cryptographic proof of its validity. Up to one third of the nodes can be faulty and termination is expected in a constant number of rounds. An optimization is described allowing the round message plus the coin message to be combined, reducing rounds to a single message delay. Geodistributed experiments are run on replicates in ten data center regions showing average latencies as low as 400 milliseconds.

cs.DC

A Simple and Efficient Binary Byzantine Consensus Algorithm using Cryptography and Partial Synchrony

This paper describes a simple and efficient Binary Byzantine faulty tolerant consensus algorithm using a weak round coordinator and the partial synchrony assumption to ensure liveness. In the algorithm, non-faulty nodes perform an initial broadcast followed by a executing a series of rounds consisting of a single message broadcast until termination. Each message is accompanied by a cryptographic proof of its validity. In odd rounds the binary value 1 can be decided, in even round 0. Up to one third of the nodes can be faulty and termination is ensured within a number of round of a constant factor of the number of faults. Experiments show termination can be reached in less than 200 milliseconds with 300 Amazon EC2 instances spread across 5 continents even with partial initial disagreement.

cs.DC

Anonymity Preserving Byzantine Vector Consensus

Collecting anonymous opinions finds various applications ranging from simple whistleblowing, releasing secretive information, to complex forms of voting, where participants rank candidates by order of preferences. Unfortunately, as far as we know there is no efficient distributed solution to this problem. Previously, participants had to trust third parties, run expensive cryptographic protocols or sacrifice anonymity. In this paper, we propose a resilient-optimal solution to this problem called AVCP, which tolerates up to a third of Byzantine participants. AVCP combines traceable ring signatures to detect double votes with a reduction from vector consensus to binary consensus to ensure all valid votes are taken into account. We prove our algorithm correct and show that it preserves anonymity with at most a linear communication overhead and constant message overhead when compared to a recent consensus baseline. Finally, we demonstrate empirically that the protocol is practical by deploying it on 100 machines geo-distributed in 3 continents: America, Asia and Europe. Anonymous decisions are reached within 10 seconds with a conservative choice of traceable ring signatures.

cs.DC

Evaluating the Red Belly Blockchain

In this paper, we present the most extensive evaluation of blockchain system to date. To achieve scalability across servers in more than 10 countries located on 4 different continents, we drastically revisited Byzantine fault tolerant blockchains and verification of signatures. The resulting blockchain, called the Red Belly Blockchain (RBBC), commits more than a hundred thousand transactions issued by permissionless nodes. These transactions are grouped into blocks within few seconds through a partially synchronous consensus run by permissioned nodes. It prevents double spending by guaranteeing that a unique block is decided at any given index of the chain in a deterministic way by all participants. We compared the performance of RBBC against traditional Byzantine fault tolerant alternatives and more recent randomized solutions. In the same geo-distributed environment with low-end machines, we noticed two interesting comparisons: (i) the RBBC throughput scales to hundreds of machines whereas the classic 3-step leader-based BFT state machine used by consortium blockchains cannot scale to 40 identically configured nodes; (ii) RBBC guarantees transaction finality in 3 seconds and experiences a third of the latency that randomized-based solutions like HoneyBadgerBFT can offer. This empirical evaluation demonstrates that blockchain scalability can be achieved without sacrificing security.

cs.CR

DBFT: Efficient Byzantine Consensus with a Weak Coordinator and its Application to Consortium Blockchains

This paper introduces a deterministic Byzantine consensus algorithm that relies on a new weak coordinator. As opposed to previous algorithms that cannot terminate in the presence of a faulty or slow coordinator, our algorithm can terminate even when its coordinator is faulty, hence the name weak coordinator. The key idea is to allow processes to complete asynchronous rounds as soon as they receive a threshold of messages, instead of having to wait for a message from a coordinator that may be slow. The resulting algorithm assumes partial synchrony, is resilience optimal, time optimal and does not need signatures. Our presentation is didactic: we first present a simple safe binary Byzantine consensus algorithm, modify it to ensure termination, and finally present an optimized reduction from multivalue consensus to binary consensus that may terminate in 4 message delays. To evaluate our algorithm, we deployed it on 100 machines distributed in 5 datacenters across different continents and compared its performance against the randomized solution from Mostefaoui, Moumem and Raynal [PODC14] that terminates in O(1) rounds in expectation. Our algorithm always outperforms the latter even in the presence of Byzantine behaviors. Our algorithm has a subsecond average latency in most of our geo-distributed experiments, even when attacked by a well-engineered coalition of Byzantine processes.

cs.DC