this page is a dynamically changing index of all our posts, it’s one more place to start reading Decentralized Thoughts (you can read chronologically here).

Basics, Foundations, and Classics

Start with the definition of Consensus and Agreement. Then learn about the network model, the threshold adversary model, and the power of the adversary. Finally, many protocols need a trusted setup phase.

You can learn more about Partial Synchrony and about different relaxations of Broadcast.

One of the classic protocols of distributed computing is the Dolev-Strong Authenticated Broadcast protocol.

State Machine Replication

We begin by defining State Machine Replication (SMR) and talk about different degrees of SMR fault tolerance. The scalability and performance of a State Machine Replication system is not just about Consensus, but also about Data and Execution.

We start with a simple SMR for crash failures. We later extend this to omission failures. First via single shot and then via the Lock-commit paradigm to multi-shot consensus.

Living with Asynchrony

One of the core challenges in fault-tolerant distributed computing is Asynchrony. The classic FLP lower bound is a fundamental result. The basic building blocks are Reliable Broadcast and Gather.

Lower Bounds


What was the first blockchain (or how to timestamp a digital document)? Do Proof of work Blockchains need any setup assumptions?, what checkpointing a blockchain mean? A simple security proof for Nakamoto Consensus. What is the problem of Selfish Mining? The simplest L2 solution is a Payment Channel.


The basics:

More advanced:

Research oriented posts