TU BRAUNSCHWEIG
| Carl-Friedrich-Gauß-Fakultät | Informatik
Informatikzentrum

Sichere Ausführung von Vert.X Mikro-Services

Bearbeiter(anonym, Login erforderlich)
BetreuerStefan Brenner
ProfessorProf. Dr. Rüdiger Kapitza
Projektsereca
IBR GruppeDS (Prof. Kapitza)
ArtBachelorarbeit
Statusabgeschlossen

Problem

Vert.X [1] ist ein Toolkit für das Erstellen von reaktiven JVM Anwendungen. Diese Toolkit ermöglicht unter anderem das Erstellen von Mikro Services und die Kommunikation dieser über einen Event Bus. Es existiert bereits eine Variante des Event Bus mit TLS-Unterstützung für verschlüsselte Kommunikation zwischen Mikro Services. Diese Verschlüsselung sichert jedoch nur den Nachrichtenaustausch der Mikro Services über das Netzwerk. Die eigentliche Ausführung der Mikro Services auf den jeweiligen Host Plattformen wird dadurch nicht geschützt. SGX ist eine neue Technologie für vertrauenswürdige Ausführung, die mit der Skylake Generation der Prozessoren von Intel als Instruktionssatzerweiterung eingeführt wurde. Diese Technologie erlaubt die vertrauenswürdige Ausführung von Code -- sogenannte Enklaven -- innerhalb des Kontextes einer regulären Anwendung.

Aufgabenstellung

Ziel dieser Arbeit ist es, die Ausführung von Vert.X Mikro Services durch Intel SGX abzusichern. Dazu sollen SGX Enklaven in die Vert.X Architektur integriert werden, so dass ganze Mikro Services bzw. Teile davon in Enklaven ausgelagert werden können. Als Toolkit für JVM Sprachen basiert Vert.X auf einer Java Virtual Machine (JVM) als Ausführungsplattform. Die Ausführung einer JVM innerhalb einer Enklave ist jedoch nicht sinnvoll, da dadurch die Trusted Code Base (TCB) unnötig groß und der in der Enklave ausgeführte Code sehr komplex würde. Da SGX Enklaven jedoch in C/C++ geschrieben werden, sollen die Enklaven im Rahmen dieser Arbeit per Java Native Interface (JNI) in Vert.X integriert werden.

aktualisiert am 31.07.2017, 16:34 von Stefan Brenner
printemailtop