Förderbeginn 01.01.2021

Hardware-unterstützte sichere verteilte Transaktionsverarbeitung

Prof. Dr. Pramod Bhatotia
Technische Universität München
Engineering Software für dezentrale Systeme

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



Die Transaktionsausführung ist ein grundlegender Baustein für die parallele Verarbeitung großer Datenmengen. In der Tat unterstützen viele kommerzielle und/oder Open-Source-Datenbanken, die in der Regel in nicht vertrauenswürdigen Umgebungen gehostet werden, Transaktionen. Sicherheitsverletzungen in der Cloud werden immer häufiger. Es ist daher entscheidend, die Sicherheitsgarantien von Cloud-basierten Datenbanksystemen zu härten. In diesem Projekt zielen wir darauf ab, ein sicheres Datenbanksystem zu entwickeln, das auf hardwaregestützten vertrauenswürdigen Ausführungsumgebungen basiert. Um dieses Problem zu adressieren, schlagen wir ein sicheres verteiltes Datenbanksystem vor, das serialisierbare Transaktionen und Crash-Konsistenz bietet, während die Sicherheitseigenschaften Integrität, Vertraulichkeit und Frische der Daten und Abfrageoperationen erhalten bleiben. Die sichere verteilte Datenbank basiert auf unseren sicheren Speichersystemen (einzelner Knoten), wobei wir das System zur Unterstützung der Transaktionsverarbeitung erweitern werden.

Abschlussbericht
Die verteilte Transaktionsverarbeitung ist ein grundlegender Baustein für die groß angelegte Datenverwaltung in der Cloud. Angesichts der Bedrohung durch Sicherheitsverletzungen in nicht vertrauenswürdigen Cloud Cloud-Umgebungen, konzentriert sich unsere Arbeit auf: Wie entwirft man einen verteilten transaktionalen KV-Speicher, der hochleistungsfähige serialisierbare Transaktionen erreicht und gleichzeitig starke Sicherheitseigenschaften bietet? Wir stellen TREATY vor, ein sicheres verteiltes transaktionales KV- Speichersystem vor, das serialisierbare ACID-Transaktionen unterstützt und starke Sicherheitseigenschaften garantiert: Vertraulichkeit, Integrität, und Aktualität. TREATY nutzt vertrauenswürdige Ausführungsumgebungen Ausführungsumgebungen (TEEs), um seine Sicherheitseigenschaften zu erreichen, aber es erweitert das Vertrauen das durch den begrenzten (flüchtigen) Enklavenspeicherbereich innerhalb eines einzelnen Knotens, um einen sicheren (zustandsbehafteten) verteilten transaktionalen KV Speicher über den nicht vertrauenswürdigen Speicher, das Netzwerk und die Maschinen aufzubauen. Um dies zu erreichen TREATY ein sicheres Zwei-Phasen-Commit-Protokoll, das zusammen mit einer mit einer hochleistungsfähigen Netzwerkbibliothek für TEEs entwickelt. Außerdem gewährleistet TREATY eine sichere und absturzsichere Persistenz von festgeschriebenen Transaktionen durch ein Stabilisierungsprotokoll. Unsere Evaluierung auf einer realen Hardware-Testumgebung basierend auf den YCSB und TPC-C Benchmarks zeigt, dass TREATY einen angemessenen Overhead verursacht und gleichzeitig starke Sicherheitseigenschaften erreicht.