Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Making CRDTs Byzantine fault tolerant

Making CRDTs Byzantine fault tolerant

Slides from a talk given at the 9th Workshop on Principles and Practice of Consistency for Distributed Data (PaPoC), Rennes, France, 5 April 2022.
https://papoc-workshop.github.io/2022/
https://martin.kleppmann.com/2022/04/05/bft-crdt-papoc.html
Paper: https://martin.kleppmann.com/papers/bft-crdt-papoc22.pdf

Abstract:

It is often claimed that Conflict-free Replicated Data Types (CRDTs) ensure consistency of replicated data in peer-to-peer systems. However, peer-to-peer systems usually consist of untrusted nodes that may deviate from the specified protocol (i.e. exhibit Byzantine faults), and most existing CRDT algorithms cannot guarantee consistency in the presence of such faults. This paper shows how to adapt existing non-Byzantine CRDT algorithms and make them Byzantine fault-tolerant. The proposed scheme can tolerate any number of Byzantine nodes (making it immune to Sybil attacks), guarantees Strong Eventual Consistency, and requires only modest changes to existing CRDT algorithms.

Martin Kleppmann

April 05, 2022
Tweet

More Decks by Martin Kleppmann

Other Decks in Research

Transcript

  1. Thank you to my supporters
    Crowdfunding supporters include: Ably, Adrià Arcarons, Chet Corcos,
    Macrometa, Mintter, David Pollak, Prisma, RelationalAI, SoftwareMill,
    Talent Formation Network, Adam Wiggins
    https://www.patreon.com/martinkl

    View full-size slide

  2. https://martin.kleppmann.com/papers/bft-crdt-papoc22.pdf
    https://automerge.org/
    [email protected]
    https://twitter.com/martinkl
    https://www.patreon.com/martinkl

    View full-size slide