Table of Contents
Fetching ...

Tame the Wild with Byzantine Linearizability: Reliable Broadcast, Snapshots, and Asset Transfer

Shir Cohen, Idit Keidar

TL;DR

This paper formalizes Byzantine linearizability for shared-memory objects and investigates emulations of three fundamental primitives—reliable broadcast, atomic snapshot, and asset transfer—from SWMR registers under Byzantine faults. It establishes a tight resilience threshold: $f<\frac{n}{2}$ correct processes suffice to implement these objects in a Byzantine-linearizable way, while wait-free implementations are impossible for these objects when $n\le 2f$. It then provides a Byzantine linearizable reliable broadcast construction and derives a Byzantine snapshot from it, both achieving the same resilience bound, and shows how these can be composed (via snapshot-based asset transfer) to obtain Byzantine linearizable asset transfer with $n=2f+1$. The results delineate fundamental limits and practical building blocks for Byzantine-tolerant shared-memory systems, with potential implications for permissioned blockchain-like environments and asset transfer under Byzantine clients.

Abstract

We formalize Byzantine linearizability, a correctness condition that specifies whether a concurrent object with a sequential specification is resilient against Byzantine failures. Using this definition, we systematically study Byzantine-tolerant emulations of various objects from registers. We focus on three useful objects -- reliable broadcast, atomic snapshot, and asset transfer. We prove that there is an $f$-resilient implementation of such objects from registers with $n$ processes $f<\frac{n}{2}$.

Tame the Wild with Byzantine Linearizability: Reliable Broadcast, Snapshots, and Asset Transfer

TL;DR

This paper formalizes Byzantine linearizability for shared-memory objects and investigates emulations of three fundamental primitives—reliable broadcast, atomic snapshot, and asset transfer—from SWMR registers under Byzantine faults. It establishes a tight resilience threshold: correct processes suffice to implement these objects in a Byzantine-linearizable way, while wait-free implementations are impossible for these objects when . It then provides a Byzantine linearizable reliable broadcast construction and derives a Byzantine snapshot from it, both achieving the same resilience bound, and shows how these can be composed (via snapshot-based asset transfer) to obtain Byzantine linearizable asset transfer with . The results delineate fundamental limits and practical building blocks for Byzantine-tolerant shared-memory systems, with potential implications for permissioned blockchain-like environments and asset transfer under Byzantine clients.

Abstract

We formalize Byzantine linearizability, a correctness condition that specifies whether a concurrent object with a sequential specification is resilient against Byzantine failures. Using this definition, we systematically study Byzantine-tolerant emulations of various objects from registers. We focus on three useful objects -- reliable broadcast, atomic snapshot, and asset transfer. We prove that there is an -resilient implementation of such objects from registers with processes .

Paper Structure

This paper contains 16 sections, 27 theorems, 2 figures, 4 algorithms.

Key Result

Theorem 1

In the Byzantine shared memory model, there exist $n$-process $f$-resilient Byzantine linearizable implementations of reliable broadcast, snapshot, and asset transfer objects from registers if and only if $f<\frac{n}{2}$.

Figures (2)

  • Figure 1: An asset transfer object does not have an $f$-resilient implementation for $n\leq 2f$.
  • Figure 2: Concurrent deliver operations.

Theorems & Definitions (30)

  • Theorem 1
  • Definition 2
  • Theorem 3
  • Corollary 4
  • Lemma 5
  • Definition 6
  • Lemma 7
  • Theorem 8
  • Lemma 9
  • Lemma 10
  • ...and 20 more