Diese Arbeit gibt einen Überblick über Searchable Encryption, einer Möglichkeit, Daten sicher in der Cloud zu speichern, ohne zu viel Komfort zu verlieren und implementiert sowie analysiert eine solche Anwendung prototypisch.
Um sensible Daten in der Cloud sicher speichern zu können ist es nötig, diese zu verschlüsseln. Um die Suchfunktionalität trotz Verschlüsselung weiter zu ermöglichen, werden Searchable Encryption (SE) Schemata entwickelt. In dieser Arbeit wird eine Einführung in SE gegeben und ein simples SE-System implementiert. Die Limitationen dieses Systems werden analysiert und aktuelle Forschungsergebnisse präsentiert.
In den letzten Jahren hat mit der wachsenden Datenmenge, die erhoben, gespeichert und verarbeitet wird auch das Cloud-Computing an Bedeutung gewonnen. Eine zentrale Funktion ist dabei die Speicherung von Daten und Dokumenten. Da sich diese dann allerdings auf einem externen Server befinden, besteht meistens großes Interesse an der Sicherheit der Daten.
Artikel 32 der DSGVO fordert beispielsweise in Absatz (1) a: "die Pseudonymisierung und Verschlüsselung personenbezogener Daten". Werden die Daten probabilistisch verschlüsselt wird es allerdings unmöglich, diese mit klassischen Mitteln zu durchsuchen. Denn für den Benutzer ist nur eine Suche nach Inhalten des Ausgangstextes und nicht des Geheimtextes sinnvoll. Möglich ist die Suche aber nur innerhalb der Geheimtexte. Searchable Encryption (SE) nimmt sich diesem Problem an.
Inhaltsverzeichnis
- I. INTRODUCTION
- II. SEARCHABLE ENCRYPTION (SE)
- A. SE und homomorphe Verschlüsselung
- III. KLASSIFIKATION VON SE
- IV. PUBLIC KEY ENCRYPTION WITH KEYWORD SEARCH (PEKS)
- V. SEARCHABLE SYMMETRIC ENCRYPTION (SSE)
- A. Erweiterung Single-Reader zu Multi-Reader
- VI. ERROR-TOLERANT SE
- A. Locality-sensitive Hashing
- B. Fuzzy search
- C. Spell-checked Synonym-based SE
- VII. PROBLEMSTELLUNG
- A. System-Modell
- B. Bedrohungsmodell
- C. Ziele
- D. Verwendete kryptographische Primitiva
Zielsetzung und Themenschwerpunkte
Diese Arbeit befasst sich mit der Implementierung eines Searchable Encryption (SE) Systems, das die Suche in verschlüsselten Daten in der Cloud ermöglicht. Das Hauptziel ist die Entwicklung eines Systems, das die Sicherheit der Daten gewährleistet, während gleichzeitig eine effiziente Suchfunktionalität erhalten bleibt. Die Arbeit analysiert dabei die Limitationen simpler SE-Systeme und präsentiert aktuelle Forschungsergebnisse.
- Searchable Symmetric Encryption (SSE)
- Synonym-basierte Suche
- Fehlertoleranz bei der Suche
- Kryptographische Verfahren (Hashing, symmetrische Verschlüsselung)
- Client-Server Architektur
Zusammenfassung der Kapitel
I. INTRODUCTION: Dieses Kapitel führt in die Thematik der Datensicherheit in Cloud-Umgebungen ein und verdeutlicht den Bedarf an Searchable Encryption (SE) aufgrund des wachsenden Datenvolumens und der damit verbundenen Sicherheitsrisiken. Es wird der Konflikt zwischen Datensicherheit und der Notwendigkeit der Suchfunktionalität in verschlüsselten Daten dargestellt. Der naive Ansatz des lokalen Entschlüsselns wird als unpraktikabel verworfen, was die Notwendigkeit von SE-Methoden unterstreicht. Die Arbeit kündigt die Einführung in SE und die anschließende Implementierung eines synonym-basierten Systems an.
II. SEARCHABLE ENCRYPTION (SE): Dieses Kapitel bietet eine umfassende Einführung in Searchable Encryption. Es differenziert zwischen Searchable Symmetric Encryption (SSE) und Public Key Encryption with Keyword Search (PEKS), wobei die Arbeit sich auf SSE konzentriert aufgrund der Effizienzvorteile bei Massendaten. Der Abschnitt "SE und homomorphe Verschlüsselung" diskutiert die ideale, aber derzeit aufgrund von Effizienzproblemen unrealistische Lösung durch vollständig homomorphe Verschlüsselung (FHE). Der Unterschied zwischen FHE und Somewhat Homomorphic Encryption (SHE) wird erläutert, wobei die praktische Relevanz von SHE für Cloud-Anwendungen hervorgehoben wird.
III. KLASSIFIKATION VON SE: Dieses Kapitel präsentiert eine Klassifizierung von SE-Systemen nach drei Eigenschaften: Schlüsselwörter, Art der Verschlüsselung (symmetrisch oder asymmetrisch) und Anzahl der Clients (Single- oder Multi-Reader/Writer). Die Visualisierung in Abbildung 1 veranschaulicht die verschiedenen Kombinationsmöglichkeiten und erleichtert das Verständnis der unterschiedlichen Systemarchitekturen und ihrer jeweiligen Vor- und Nachteile.
IV. PUBLIC KEY ENCRYPTION WITH KEYWORD SEARCH (PEKS): Dieses Kapitel beschreibt PEKS als eine SE-Variante, die asymmetrische Verschlüsselung nutzt und sich besonders für Multiple-Writer-Single-Reader (M/S)-Systeme eignet. Der Vorteil von PEKS liegt in der Möglichkeit, dass mehrere Benutzer Daten verschlüsseln können, während nur ein Benutzer diese entschlüsseln kann. Die Anwendung in Szenarien wie E-Mail-Verschlüsselung wird als Beispiel genannt.
V. SEARCHABLE SYMMETRIC ENCRYPTION (SSE): Dieses Kapitel konzentriert sich auf Searchable Symmetric Encryption (SSE), die Verwendung symmetrischer Verschlüsselungsverfahren und deren Eignung für Single-Writer-Single-Reader (S/S)-Systeme. Der Advanced Encryption Standard (AES) wird als Beispiel für ein weit verbreitetes symmetrisches Verschlüsselungsverfahren genannt, das aufgrund seiner Geschwindigkeit für Massendaten besonders geeignet ist. Die Erweiterung auf Multiple-Writer-Multiple-Reader-Systeme wird angesprochen, jedoch auch die damit verbundenen erhöhten Sicherheitsrisiken.
VI. ERROR-TOLERANT SE: Dieses Kapitel behandelt den wichtigen Aspekt der Fehlertoleranz bei der Suche in SE-Systemen. Es werden verschiedene Ansätze vorgestellt, darunter Locality-sensitive Hashing (LSH) und Fuzzy Search. Die Limitationen von LSH bezüglich der Semantik werden diskutiert. Die Fuzzy Search, basierend auf der Levenshtein-Distanz, wird als Methode zur Berücksichtigung von Tippfehlern erläutert. Das Kapitel führt schließlich den in der Arbeit gewählten Ansatz der "Spell-checked Synonym-based SE" ein, der die Semantik der Suchbegriffe durch die Verwendung von NLP-Methoden berücksichtigt.
VII. PROBLEMSTELLUNG: In diesem Kapitel wird das Systemmodell, das Bedrohungsmodell und die Ziele der Arbeit detailliert beschrieben. Das System basiert auf einer Client-Server-Architektur mit HTTP-Kommunikation. Die CRUD-Funktionalitäten der Datenbank werden erklärt. Das Bedrohungsmodell geht von einem "honest but curious" Server aus. Die Ziele umfassen die Minimierung der an den Server preisgegebenen Informationen und die Berücksichtigung der in Kapitel VI beschriebenen Fehlertoleranz. Die verwendeten kryptographischen Primitiva (SHA-256 Hashfunktion und symmetrische Verschlüsselung) werden vorgestellt und ihre Sicherheitseigenschaften erläutert.
Schlüsselwörter
Searchable Encryption, Symmetrische Verschlüsselung, Synonymsuche, Fehlertoleranz, Cloud-Sicherheit, SHA-256, NLP, SQLite, Client-Server-Architektur
Häufig gestellte Fragen (FAQ) zur Arbeit "Implementierung eines Searchable Encryption Systems"
Was ist das Thema der Arbeit?
Die Arbeit befasst sich mit der Implementierung eines Searchable Encryption (SE) Systems, das die Suche in verschlüsselten Daten in der Cloud ermöglicht. Das Hauptziel ist die Entwicklung eines Systems, das die Sicherheit der Daten gewährleistet und gleichzeitig eine effiziente Suchfunktionalität bietet.
Welche Arten von Searchable Encryption werden behandelt?
Die Arbeit behandelt sowohl Searchable Symmetric Encryption (SSE) als auch Public Key Encryption with Keyword Search (PEKS). Der Fokus liegt jedoch auf SSE aufgrund der Effizienzvorteile bei Massendaten. Die Arbeit diskutiert auch die Unterschiede zwischen SSE und PEKS und deren jeweilige Anwendungsszenarien.
Welche Herausforderungen werden in der Arbeit adressiert?
Die Arbeit analysiert die Limitationen einfacher SE-Systeme und befasst sich mit der Herausforderung, die Sicherheit der Daten in der Cloud zu gewährleisten, während gleichzeitig effizientes Suchen ermöglicht wird. Ein besonderes Augenmerk liegt auf der Fehlertoleranz bei der Suche, um beispielsweise Tippfehler zu berücksichtigen.
Welche Methoden zur Fehlertoleranz werden diskutiert?
Die Arbeit diskutiert verschiedene Ansätze zur Fehlertoleranz, darunter Locality-sensitive Hashing (LSH), Fuzzy Search (basierend auf der Levenshtein-Distanz) und ein speziell entwickeltes "Spell-checked Synonym-based SE" System. Die Limitationen von LSH bezüglich der Semantik werden ebenfalls erläutert.
Welche Systemarchitektur wird verwendet?
Die Arbeit verwendet eine Client-Server-Architektur mit HTTP-Kommunikation. Das Bedrohungsmodell geht von einem "honest but curious" Server aus, d.h. der Server versucht nicht aktiv, die Daten zu kompromittieren, könnte aber die Informationen, die ihm zur Verfügung gestellt werden, missbrauchen.
Welche kryptographischen Verfahren werden eingesetzt?
Die Arbeit verwendet die SHA-256 Hashfunktion und symmetrische Verschlüsselungsverfahren. Die Sicherheitseigenschaften dieser Verfahren werden ebenfalls erläutert.
Welche Kapitel umfasst die Arbeit?
Die Arbeit gliedert sich in sieben Kapitel: Einleitung, Searchable Encryption (SE), Klassifizierung von SE, Public Key Encryption with Keyword Search (PEKS), Searchable Symmetric Encryption (SSE), Error-Tolerant SE und Problemstellung. Jedes Kapitel befasst sich mit einem spezifischen Aspekt von SE und dessen Implementierung.
Welche Schlüsselwörter beschreiben die Arbeit?
Schlüsselwörter sind: Searchable Encryption, Symmetrische Verschlüsselung, Synonymsuche, Fehlertoleranz, Cloud-Sicherheit, SHA-256, NLP, SQLite, Client-Server-Architektur.
Welche Datenbank wird verwendet?
Die Arbeit nutzt SQLite als Datenbank-System.
Wie wird die Semantik bei der Suche berücksichtigt?
Die Arbeit setzt auf ein "Spell-checked Synonym-based SE" System, um die Semantik der Suchbegriffe durch die Verwendung von NLP-Methoden zu berücksichtigen und so die Fehlertoleranz zu erhöhen.
- Quote paper
- Sebastian Steindl (Author), 2020, Spell-checked Synonym-based Searchable Symmetric Encryption, Munich, GRIN Verlag, https://www.grin.com/document/919999