Scalable Hardware-Aided Trusted Data Management

A DFG SPP 2037 Project

Project Abstract

Outsourcing data-processing to external data centres such as cloud infrastructures has become ubiquitous due to its benefits to both, customers and providers. However, using external compute resources requires customers to fully trust the provided software and hardware stack as well as the administrative staff. This forms an inhibitor when sensitive data should be externally processed, and as a consequence, initial solutions for encrypted data processing have been proposed. However, all of them suffer from individual shortcomings such as limited security, restricted expressiveness or performance penalties. } Specifically software-based encryption in database management systems (DBMSs) has been investigated, however, high performance query processing and secure data management in the context of novel technologies for trusted execution opens new perspectives. Hence, our project targets the combination of scalable data management with recent hardware security technologies, in particular Intel Software Guard Extensions (SGX). SGX enhances the instruction set of the CPU and allows the creation of so called ‘enclaves’ that support computation on transparently encrypted main memory at native performance. However, existing DBMS architectures are unaware of such security concepts, and their designs miss the necessary flexibility to introduce trusted computing on a fine-grained level. Thus, we propose a tailorable architecture to address the contradicting demands of general-purpose high performance data management and secure data processing.

In order to implement a secure, flexible and scalable DBMS architecture, we

  • derive an architecture model for modern document-based DBMSs, and partition it to span the required variability space w.r.t. the granularity of user- defined secure data processing and DBMS encryption,
  • extend this DBMS with functionality tailored to hardware encryption support (e.g., confidentiality and integrity protection) and security awareness,
  • enable scale-up by identifying and addressing bottlenecks in trusted query execution including evaluations of in-memory buffering strategies, thereby addressing space limitations for a single machine execution, and
  • enable scale-out of our hardware-aided solution to multiple machines by utilising remote direct memory access (RDMA) for distributed processing.
In this context we contribute to the DFG priority program as follows: First, we address how trust can be efficiently added to a modern database system. In addition, we add distributed computing capabilities to this DBMS by using recent hardware that is not optimally utilised. Each of these steps are integrated into an extensible architecture model that explicitly expresses these features. Second, we contribute concepts for lowering the performance impact of trusted computing by using RDMA for distributed computing. Third, we intent to extend general purpose software development concepts to better address trusted computing.