Lab

Concurrent Systems Research Group

About the lab

We are interested in different aspects of distributed computing, from the shared memory model, including chip multiprocessors and synchronization, to the message passing model, including fault-tolerance and consensus.

Featured projects (2)

Project
The Red Belly Blockchain offers unprecedented throughput of more than 660 thousands transactions per second on 300 machines. Its safety aspect is of invaluable importance for critical industries, like banking, and offer performance that scales horizontally. https://www.redbellyblockchain.io/

Featured research (3)

In this paper, we introduce Polygraph, the first accountable Byzantine consensus algorithm. If among ๐‘› users ๐‘ก < ๐‘›/3 are malicious then it ensures consensus; otherwise (if ๐‘ก โ‰ฅ ๐‘›/3), it eventually detects malicious users that cause disagreement. Polygraph is appealing for blockchain applications as it allows them to totally order blocks in a chain whenever possible, hence avoiding forks and double spending and, otherwise, to punish (e.g., via slashing) at least ๐‘›/3 malicious users when a fork occurs. This problem is more difficult than perhaps it first appears. One could try identifying malicious senders by extending classic Byzantine consensus algorithms to piggyback signed messages. We show however that to achieve accountability the resulting algorithms would then need to exchange ฮฉ(๐œ…^2 ยท ๐‘›^5) bits, where ๐œ… is the security parameter of the signature scheme. By contrast, Polygraph has communication complexity ๐‘‚(๐œ… ยท ๐‘›^4). Finally, we implement Polygraph in a blockchain and compare it to the Red Belly Blockchain to show that it commits more than 10,000 Bitcoin-like transactions per second when deployed on 80 geodistributed machines.
Blockchain has found applications to track ownership of digital assets. Yet, several blockchains were shown vulnerable to network attacks. It is thus crucial for companies to adopt secure blockchains before moving them to production. In this paper, we present Red Belly Blockchain (RBBC), the first secure blockchain whose throughput scales to hundreds of geodistributed consensus participants. To this end, we drastically revisited Byzantine Fault Tolerant (BFT) blockchains through three contributions: (i) defining the Set Byzantine Consensus problem of agreeing on a superblock of all proposed blocks instead of a single block; (ii) adopting a fair leaderless design to offer censorship-resistance guaranteeing the commit of correctly requested transactions; (iii) introducing sharded verification to limit the number of signature verifications without hampering security. We evaluate RBBC on up to 1000 VMs of 3 different types, spread across 4 continents, and under attacks. Although its performance is affected by attacks, RBBC scales in that its throughput increases to hundreds of consensus nodes and achieves 30k TPS throughput and 3 second latency on 1000 VMs, hence improving by 3x both the latency and the throughput of its closest competitor.
To implement a blockchain, the trend is now to integrate a non-trivial Byzantine fault tolerant consensus algorithm instead of the seminal idea of waiting to receive blocks to decide upon the longest branch. After a decade of existence, blockchains trade now large amounts of valuable assets and a simple disagreement could lead to disastrous losses. Unfortunately, Byzantine consensus solutions used in blockchains are at best proved correct "by hand" as we are not aware of any of them having been formally verified. In this paper, we propose two contributions: (i) we illustrate the severity of the problem by listing six vulnerabilities of blockchain consensus including two new counterexamples ; (ii) we then formally verify two Byzantine fault tolerant components of Red Belly Blockchain using the ByMC model checker. First, we specify a simple broadcast primitive in 116 lines of code that is verified in 40 seconds on a 2-core Intel machine. Then, we specify a blockchain consensus algorithm in 276 lines of code that is verified in 17 minutes on a 64-core AMD machine using MPI. To conclude, we argue that it has now become both relatively simple and crucial to formally verify the correctness of blockchain consensus protocols.

Lab head

Vincent Gramoli

Members (3)

Tyler Crain
  • IRISA - Institut de Recherche en Informatique et Systรจmes Alรฉatoires
Mansour Khelghatdoust
  • KTH Royal Institute of Technology
Deepal Tennakoon
  • The University of Sydney
Parinya Ekparinya
Parinya Ekparinya
  • Not confirmed yet
Stephen Mallon
Stephen Mallon
  • Not confirmed yet