Construction of a Byzantine Linearizable SWMR Atomic Register from SWSR Atomic Registers
Ajay D. Kshemkalyani, Manaswini Piduguralla, Sathya Peri, Anshuman Misra
TL;DR
This work addresses constructing a Byzantine-tolerant SWMR atomic register from SWSR registers in asynchronous shared memory. It introduces a strengthened notion of Byzantine register linearizability that accounts for correct and pseudo-correct writes and enforces consistency across correct readers via a total order of stabilized writes, even when the writer is Byzantine. The authors provide a PKI-based construction that uses vector timestamps and reader helper threads to realize a linearizable SWMR register for $n>3t$, with a rigorous correctness proof establishing stabilization, total ordering, and no new-old inversions. The result advances the reliability of shared-memory primitives in Byzantine environments and highlights the practical role of cryptographic infrastructures in achieving stronger consistency guarantees.
Abstract
The SWMR atomic register is a fundamental building block in shared memory distributed systems and implementing it from SWSR atomic registers is an important problem. While this problem has been solved in crash-prone systems, it has received less attention in Byzantine systems. Recently, Hu and Toueg gave such an implementation of the SWMR register from SWSR registers. While their definition of register linearizability is consistent with the definition of Byzantine linearizability of a concurrent history of Cohen and Keidar, it has these drawbacks. (1) If the writer is Byzantine, the register is linearizable no matter what values the correct readers return. (2) It ignores values written consistently by a Byzantine writer. We need a stronger notion of a {\em correct write operation}. (3) It allows a value written to just one or a few readers' SWSR registers to be returned, thereby not validating the intention of the writer to write that value honestly. (4) Its notion of a ``current'' value returned by a correct reader is not related to the most recent value written by a correct write operation of a Byzantine writer. We need a more up to date version of the value that can be returned by a correct reader. In this paper, we give a stronger definition of a Byzantine linearizable register that overcomes the above drawbacks. Then we give a construction of a Byzantine linearizable SWMR atomic register from SWSR registers that meets our stronger definition. The construction is correct when $n>3f$, where $n$ is the number of readers, $f$ is the maximum number of Byzantine readers, and the writer can also be Byzantine. The construction relies on a public-key infrastructure.
