Bachelor/Master Thesis

Parallel consensus instances

Consensus, the task of agreeing on a common value, is an important primitive in distributed systems. Blockchain platforms, both permissioned and permissionless, employ consensus to totally order the transactions and thus agree on which of them are valid.

However, not all transactions need to be ordered. For example, in payment applications or for asset transfer, the transactions send(A, B) and send(C, D), sending a token from account A to B, and from C to D, respectively, are not conflicting and can be executed in any order. Focusing on asset transfer applications, recent work has actually shown that, for an account A, only the transactions issued by the owners of A need to be totally ordered.

Consider now an asset transfer system with accounts A_1, ..., A_n. One way to benefit from the aforementioned result is to run n parallel consensus instances, each of them related to one particular account. The goal of this thesis is to explore this solution, using an actual consensus implementation, and benchmark the resulting system. The aspects we want to focus on are the total efficiency gain of the system, in terms of transaction throughput and latency, as well as the additional effort required by each server.

References

[1] The Consensus Number of a Cryptocurrency

Contact Orestis Alpos for more information.

Nature of the project: Theory 30%, Systems 70%.