Application Level Encryption (ALE)

Aus devops.straight8.de
Zur Navigation springenZur Suche springen

Application Level Encryption (ALE)[Bearbeiten]

Während die Standard-Cloud-Verschlüsselung meist auf der Infrastrukturebene (z. B. Festplattenverschlüsselung) stattfindet, setzt die Application Level Encryption (ALE) direkt beim Entstehen der Daten an. Hierbei verschlüsselt die Anwendung sensible Informationen, bevor sie über das Netzwerk an eine Datenbank oder einen Speicher gesendet werden.


1. Funktionsweise[Bearbeiten]

Im Gegensatz zur transparenten Verschlüsselung (TDE), bei der die Datenbank die Verschlüsselung übernimmt, ist bei ALE die Anwendung im Besitz der Logik:

  1. Die Applikation empfängt einen sensiblen Wert (z. B. eine Sozialversicherungsnummer).
  2. Die Applikation fordert einen Datenschlüssel von einem Key Management Service (KMS) an.
  3. Der Wert wird innerhalb des RAMs der Anwendung verschlüsselt.
  4. Der bereits verschlüsselte Wert (Ciphertext) wird in die Datenbank geschrieben.

2. Warum ALE? (Vorteile)[Bearbeiten]

  • Schutz vor privilegierten Nutzern: Selbst ein Datenbankadministrator (DBA) mit vollen Zugriffsrechten kann die Daten nicht lesen, da sie für die Datenbank nur als unleserlicher Zeichensalat erscheinen.
  • Granularität: Es können gezielt einzelne Felder (Field-Level Encryption) verschlüsselt werden, anstatt die gesamte Datenbank zu verlangsamen.
  • Cloud-Native Sicherheit: Da die Daten bereits verschlüsselt die App verlassen, sind sie auch während der Übertragung (In-Transit) und im Falle eines Datenbank-Breachs geschützt.
  • Compliance: Erfüllt höchste Anforderungen (z. B. PCI-DSS oder HIPAA), da der "Cleartext" niemals die Vertrauenszone der Anwendung verlässt.

3. Herausforderungen und Nachteile[Bearbeiten]

  • Komplexität: Die Entwickler müssen die Verschlüsselungslogik im Code implementieren und Fehler abfangen.
  • Verlust von Suchfunktionen: Da die Datenbank den Inhalt nicht kennt, sind einfache Suchanfragen (z. B. `WHERE name LIKE 'Schm%'`) oder Sortierungen auf verschlüsselten Feldern nicht mehr ohne Weiteres möglich.
  • Key Management: Die Anwendung benötigt eine sichere und hochverfügbare Verbindung zum Key Management System.


4. ALE vs. Infrastructure Encryption[Bearbeiten]

Merkmal Infrastructure Encryption (TDE/Disk) Application Level Encryption (ALE)
Verschlüsselungsort Storage / Datenbank-Engine Innerhalb des Anwendungscodes
Sichtbarkeit für DBAs Daten sind im Klartext lesbar Daten sind verschlüsselt
Implementierung "Ein-Klick"-Konfiguration in der Cloud Erfordert Code-Änderungen
Performance-Impact Minimal (Hardware-beschleunigt) Höher (CPU-Last in der App)

5. Zusammenfassung[Bearbeiten]

Application Level Encryption ist die "Königsdisziplin" des Datenschutzes. Sie folgt dem Prinzip des Separation of Duties: Die Datenbank speichert die Daten zwar, hat aber nicht die Macht, sie zu verstehen. Dies ist insbesondere in Multi-Tenant-Umgebungen oder bei extrem sensiblen personenbezogenen Daten unverzichtbar.

Zusammenfassend: ALE bietet den stärksten Schutz gegen Datendiebstahl und Insider-Bedrohungen, erkauft diesen jedoch durch eine höhere Komplexität in der Softwareentwicklung.