- Falk Borgmann


About questions of trust in distributed infrastructures

In a traditional relational database system with assured ACID (Atomicity, Consistency, Isolation und Durability) transactions, it is assured that any action that is initiated and confirmed is also executed to completion. This means any transaction of this kind is sustainable and valid across the entire system. When we refer to ACID compliance, we’re talking about implementation through a central master authority, the relational database software.

By definition, a blockchain does not contain a master node of this type.

So how can you achieve the necessary consensus in this type of environment regarding a value or a transaction? After all, there is no “boss” or master in asynchronous networks and distributed systems such as the blockchain. This core issue was examined back in 1998 by L. Lamport (The Part-Time Parliament). The solution he came up with is called Paxos, or as it is occasionally referred to, the original consensus. There are three properties necessary for Paxos that a distributed system must fulfill to resolve the problem described above.

  • A consensus can only be achieved in several steps.
  • These steps must be carried out in a reliable sequence (a monotonic value that increases to mark individual steps).
  • A majority decision of the involved nodes is required.

Under these conditions, sustainability and validity of a transaction is achievable in a distributed system such as the blockchain. In practice, different approaches have proven useful, including the well-known proof of work used by bitcoin. To obtain an understanding of the basic theories, it’s useful to study the RAFT consensus in addition to Paxos.

With public blockchains — such as the most popular application at the moment, bitcoin — it becomes obvious how significant consensus is for the security of the system. Because if a consensus that is easily compromised is selected, it can risk destroying confidence in the entire system. And finally, these types of digital infrastructures occupy a space in which they are targets for multiple attack scenarios. One of these is known as the byzantine attack or byzantine fault. We’ll take a closer look at it in other articles.