PROTECT-DB: Protecting Data using Replicated State Machines: Efficient Corruption Detection & Recovery
For database administrators, this work provides a practical BFT-based solution for data protection with efficient corruption detection and recovery.
The paper presents PROTECT-DB, a system using Byzantine-fault tolerant replicated state machines with a deterministic PostgreSQL extension for efficient corruption detection and concurrent repair. Performance results demonstrate the practicality of the approach.
Data is critical for the operation of any organization and needs to be protected, especially against attacks that compromise the state of the database. In this paper, we explore an approach based on Byzantine-fault tolerant replicated state machines, built on top of a deterministic extension of PostgreSQL. Each replica deterministically executes transactions recorded in a shared log/blockchain. Our focus is on creating a practical system that is designed for efficient and quick detection of corruption, as well as quick repair concurrent with execution of transactions. We also present a performance study showing the efficiency and practicality of our approach. We believe our work lays the foundations for the practical use of the BFT replicated state machine approach in the context of databases.