Start of funding 01.01.2021

Hardware-Assisted Secure Distributed Transaction Processing

Prof. Dr. Pramod Bhatotia
Technische Universität München
Chair for Decentralized Systems Engineering at the Informatics Department

Prof. Dr. Natacha Crooks
University of California, Berkeley
Department of Electrical Engineering and Computer Sciences



Transaction execution is a fundamental building block for the parallel processing of massive datasets. Indeed, many commercial and/or open-source databases, that are typically hosted in untrusted environments, support transactions. Security violations in the cloud are becoming more frequent. It is therefore crucial to harden the security guarantees of cloud-based database systems. In this project, we aim to build a secure database system based on hardware-assisted trusted execution environments. To address this problem, we propose a secure distributed database system that provides serializable transactions and crash consistency while preserving the security properties: integrity, confidentiality and freshness of the data and query operations. The secure distributed database is based on our secure storage systems (single node), where we will extend the system to support transaction processing.

Final report:
Distributed transaction processing is a fundamental building block for large-scale data management in the cloud. Given the threats of security violations in untrusted cloud environments, our work focuses on: How to design a distributed transactional KV store that achieves high-performance serializable transactions, while providing strong security properties? We introduce TREATY , a secure distributed transactional KV storage system that supports serializable ACID transactions while guaranteeing strong security properties: confidentiality, integrity, and freshness. TREATY leverages trusted execution environments (TEEs) to bootstrap its security properties, but it extends the trust provided by the limited enclave (volatile) memory region within a single node to build a secure (stateful) distributed transactional KV store over the untrusted storage, network and machines. To achieve this, TREATY embodies a secure two-phase commit protocol co-designed with a high-performance network library for TEEs. Further, TREATY ensures secure and crash-consistent persistency of committed transactions using a stabilization protocol. Our evaluation on a real hardware testbed based on the YCSB and TPC-C benchmarks shows that TREATY incurs reasonable overheads, while achieving strong security properties.