Design and validation of scalable, Byzantine fault tolerant consensus algorithms for blockchains (BFT2Chain)

Third party funded individual grant


Acronym: BFT2Chain

Start date : 01.09.2022

End date : 01.09.2025


Project details

Short description

Distributed Ledger Technologies (DLTs), often referred to as blockchains, enable the realisation of reliable and attack-resilient services without a central infrastructure. However, the widely used proof-of-work mechanisms for DLTs suffer from high latencies of operations and enormous energy costs. Byzantine fault-tolerant (BFT) consensus protocols prove to be a potentially energy-efficient alternative to proof-of-work. However, current BFT protocols also present challenges that still limit their practical use in production systems. This research project addresses these challenges by (1) improving the scalability of BFT consensus protocols without reducing their resilience, (2) applying modelling approaches for making the expected performance and timing behaviour of these protocols more predictable, even under attacks, taking into consideration environmental conditions, and (3) supporting the design process for valid, automated testable BFT systems from specification to deployment in a blockchain infrastructure. The topic of scalability aims at finding practical solutions that take into account challenges such as recovery from major outages or upgrades, as well as reconfigurations at runtime. We also want to design a resilient communication layer that decouples the choice of a suitable communication topology from the actual BFT consensus protocol and thus reduces its complexity.This should be supported by the use of trusted hardware components. In addition, we want to investigate combinations of these concepts with suitable cryptographic primitives to further improve scalability. Using systematic modelling techniques, we want to be able to analyse the efficiency of scalable, complex BFT protocols (for example, in terms of throughput and latency of operations), already before deploying them in a real environment, based on knowledge of system size, computational power of nodes, and basic characteristics of the communication links. We also want to investigate robust countermeasures that help defending against targeted attacks in large-scale blockchain systems. The third objective is to support the systematic and valid implementation in a practical system, structured into a constructive, modular approach, in which a validatable BFT protocol is assembled based on smaller, validatable building blocks; the incorporation of automated test procedures based on a heuristic algorithm which makes the complex search space of misbehaviour in BFT systems more manageable; and a tool for automated deployment with accompanying benchmarking and stress testing in large-scale DLTs.

Scientific Abstract

Distributed Ledger Technologies (DLTs), oft auch als Blockchains bezeichnet, ermöglichen die Realisierung zuverlässiger und angriffsresilienter Dienste ohne zentrale Infrastruktur. Die verbreiteten "Proof-of-Work"-Mechanismen für DLTs leiden jedoch unter hohen Latenzen von Operationen und enormen Energiekosten. Byzantinisch fehlertolerante (BFT) Einigungsalgorithmen stellen eine potentiell bessere Alternative zu Proof-of-Work dar. Jedoch bringen aktuelle BFT-Protokolle auch Herausforderungen mit sich, die ihre praktische Verwendung in Produktivsystemen noch einschränken. Dieses Forschungsvorhaben adressiert diese Herausforderungen, indem es (1) die Skalierbarkeit von BFT-Protokollen verbessert, ohne ihre Resilienz einzuschränken, (2) durch Modellierung die zu erwartende Performanz und das zeitliche Verhalten der Protokolle auch unter Angriffen und in Abhängigkeit der Rahmenparameter des Protokolls vorhersehbarer macht, sowie (3) den Entwurfsprozesses von validen, automatisiert prüfbaren BFT-Systemen von Spezifikation bis hin zum Einsatz in einer Blockchain-Infrastruktur unterstützt. Beim Thema Skalierbarkeit geht es darum, praxistaugliche Lösungen zu finden, die auch Herausforderungen wie Wiederanlauf nach größeren Ausfällen oder Upgrades sowie Rekonfigurationen zur Laufzeit berücksichtigen. Auch möchten wir eine resiliente Kommunikationsschicht konzipieren, die die Wahl einer geeigneten Kommunikationstopologie vom eigentlichen BFT-Einigungsalgorithmus entkoppelt und somit dessen Komplexität reduziert. Dies soll durch die Verwendung von vertrauenswürdigen Hardwarekomponenten unterstützt werden. Anknüpfend wollen wir an der Kombination dieser Konzepte mit kryptographischen Primitiven forschen, um die Skalierbarkeit weiter zu verbessern. Mit Hilfe von systematischen Modellierungstechniken möchten wir die Effizienz von skalierbaren, komplexen BFT-Protokollen (beispielsweise hinsichtlich Durchsatz und Latenz von Operationen) schon vor einem Deployment analysieren können, wenn man die Systemgröße, Rechenleistung von Knoten und grundlegende Eigenschaften der Kommunikationsverbindungen kennt. Auch möchten wir an robusten Gegenmaßnahmen forschen, die in groß-skalierbaren Blockchain-Systemen helfen, gezielte Angriffe abzuwehren. Das dritte Ziel ist es, die systematische und valide Umsetzung in ein praktisches System zu unterstützen, gegliedert in einem konstruktiven, modularen Ansatz, bei dem ein validierbares BFT-Protokoll aus kleineren, validierbaren Bausteinen komponiert wird, die Inkorporation automatisierter Testverfahren auf Grundlage eines heuristischen Algorithmus, der den komplexen Suchraum von Fehlverhalten in BFT-Systemen beherrschbarer macht und ein Werkzeug für automatisiertes Deployment mit einhergehendem Benchmarking und Stress-Testing in einem groß-skalierten DLT-System.

Involved:

Contributing FAU Organisations:

Funding Source

Research Areas