Verschlüsselung im Ruhezustand ist ein Schutz, der gespeicherte Daten ohne Schlüssel unlesbar macht; Verschlüsselung bei der Übertragung schützt Daten im Netz. Daten existieren in drei Zuständen – im Ruhezustand auf dem Speicher, bei der Übertragung auf der Leitung und in Nutzung im Arbeitsspeicher –, und die ersten beiden sind die Grundpflicht jeder Anwendung: AES-256 für das, was liegt, TLS für das, was sich bewegt. Der dritte Zustand (geschützt durch Trusted Execution Environments und, an der Forschungsfront, homomorphe Verschlüsselung) ist real, für die meisten Anwendungsteams aber die Schicht von jemand anderem.
Das Wichtigste in Kürze
| Frage | Antwort |
|---|---|
| Im Ruhezustand | AES-256 auf Platten, Datenbanken, Backups – gegen gestohlene Medien |
| Bei der Übertragung | TLS 1.2+ auf jeder Verbindung – gegen Mithören und MITM |
| Der blinde Fleck | Keines von beidem stoppt eine kompromittierte App – Verschlüsselung ist keine Zugriffskontrolle |
| Das eigentliche Problem | Schlüsselverwaltung – Schlüssel neben den Daten sind Theater |
| Der Irrtum, der weg muss | Passwörter werden gehasht (bcrypt/argon2), nie verschlüsselt |
Die zwei Schutzmaßnahmen – und was jede wirklich stoppt
Die ehrliche Tabelle, die die bestplatzierten Seiten weglassen – samt der Spalte, auf die es am meisten ankommt:
Standard Deckt ab Stoppt Stoppt NICHT
Übertragung TLS 1.2+/HTTPS jeden Netzwerk-Hop Lauschangriffe, MITM, kompromittierte Endpoints –
Schnüffeln im Café der Server liest alles mühelos
Ruhezustand AES-256 (GCM) Platten, DBs, Backups gestohlene Platten, geleakte gestohlene Zugangsdaten,
Backups, offene Buckets SQL-Injection, App-Fehler
In Nutzung TEEs RAM bei der Verarbeitung Auslesen des Speichers – meist Sache der Plattform
Keine davon stoppt einen Angreifer, dem die App selbst vertraut. Die App hält die Schlüssel
und entschlüsselt auf Anfrage – Verschlüsselung ergänzt die Zugriffskontrolle, ersetzt sie nie.
Wie die Standardeinstellungen aus dem Anwendungscode aussehen:
// JavaScript / Node.js — Back4app JS SDK
// Every SDK call rides TLS — and passwords are HASHED, never stored readable
const user = new Parse.User();
await user.signUp({ username: 'ada', password: secret });
// On the wire: TLS 1.2+ (the https serverURL is the whole config)
// At rest: bcrypt hash — even the database never holds the password itself
// Extra-sensitive fields: encrypt server-side in a Cloud Code beforeSave
// so plaintext never reaches storage — AES-256-GCM, key in env, not in code // Flutter / Dart — Back4app Flutter SDK
// Every SDK call rides TLS — and passwords are HASHED, never stored readable
final user = ParseUser('ada', secret, '[email protected]');
await user.signUp();
// On the wire: TLS 1.2+ (the https server URL is the whole config)
// At rest: bcrypt hash — even the database never holds the password itself
// Extra-sensitive fields: encrypt server-side in a Cloud Code beforeSave
// so plaintext never reaches storage — AES-256-GCM, key in env, not in code // iOS / Swift — Back4app Swift SDK
// Every SDK call rides TLS — and passwords are HASHED, never stored readable
var user = User()
user.username = "ada"
user.password = secret
let signedUp = try await user.signup()
// On the wire: TLS 1.2+ (the https server URL is the whole config)
// At rest: bcrypt hash — even the database never holds the password itself
// Extra-sensitive fields: encrypt server-side in a Cloud Code beforeSave
// so plaintext never reaches storage — AES-256-GCM, key in env, not in code // Android / Kotlin — Back4app Android SDK
// Every SDK call rides TLS — and passwords are HASHED, never stored readable
val user = ParseUser()
user.username = "ada"
user.setPassword(secret)
user.signUp()
// On the wire: TLS 1.2+ (the https server URL is the whole config)
// At rest: bcrypt hash — even the database never holds the password itself
// Extra-sensitive fields: encrypt server-side in a Cloud Code beforeSave
// so plaintext never reaches storage — AES-256-GCM, key in env, not in code Wie TLS funktioniert, in einem Absatz
Der elegante Kniff: Asymmetrische Kryptografie ist langsam, braucht aber kein gemeinsames Geheimnis; symmetrische ist schnell, braucht aber eines. Also nutzt der TLS-Handshake das erste, um das zweite herzustellen – der Client prüft das Zertifikat des Servers (die Identitätsprüfung, die ein Abfangen erkennbar macht), beide Seiten einigen sich über einen asymmetrischen Schlüsselaustausch auf einen frischen Session-Schlüssel, und alles danach läuft über schnelle symmetrische Verschlüsselung. TLS 1.3 hat das Ganze gestrafft: ein Roundtrip statt zwei, alte Cipher und der RSA-Schlüsselaustausch entfernt, Forward Secrecy verpflichtend – aufgezeichneter Verkehr lässt sich also auch dann nicht nachträglich entschlüsseln, wenn der Langzeitschlüssel des Servers abfließt. Der mobile Zusatz, den die üblichen Quellen überspringen: Apps können erwartete Zertifikate zusätzlich pinnen und tauschen damit Widerstandsfähigkeit gegen bösartige Zertifizierungsstellen gegen operative Sorgfalt bei jeder Rotation.
Die At-Rest-Schichten: Festplatte vs. Datenbank vs. Feld vs. Anwendung
“Im Ruhezustand verschlüsselt” umfasst vier sehr unterschiedliche Versprechen – jedes davon schlägt einen anderen Angreifer:
| Schicht | Wie | Schlägt | Berührt nicht |
|---|---|---|---|
| Vollverschlüsselung (LUKS/dm-crypt) | Das OS verschlüsselt das Volume | Gestohlene/ausgemusterte Hardware | Jeden auf dem laufenden System |
| Transparent (TDE) | Die Datenbank verschlüsselt Dateien beim Schreiben | Gestohlene Datendateien und Backups | Jeden mit Datenbank-Zugangsdaten |
| Feld-/Spaltenebene | Bestimmte Spalten verschlüsselt, die App hält die Schlüssel | Neugierige DBAs, breitere DB-Einbrüche | Die Kompromittierung der App selbst |
| Anwendungsebene | Verschlüsselt, bevor die Daten den Speicher erreichen | Alles unterhalb der App | Die App und ihren Schlüsselspeicher |
Die Regel über die ganze Tabelle hinweg: Höhere Schichten schützen vor mehr und kosten mehr. Verschlüsselung auf Feldebene ist der ehrliche Trade-off – verschlüsselte Spalten lassen sich nicht normal indizieren oder durchsuchen (deterministische Verschlüsselung stellt Gleichheitsabfragen wieder her, um den Preis eines gewissen Informationsabflusses) –, weshalb sie dem wirklich Sensiblen vorbehalten bleibt: Gesundheitsdaten, Ausweisnummern, Geheimnisse. Und hier wohnt der klassische Prüfungsbefund: die verschlüsselte Datenbank, deren Backups unverschlüsselt hinausgehen.
Ende-zu-Ende-Verschlüsselung ist ein anderes Versprechen
TLS überall heißt weiterhin, dass der Server alles liest – er entschlüsselt jede Verbindung von Entwurf wegen. Ende-zu-Ende-Verschlüsselung verschiebt die Schlüssel zu den Benutzern: Nur Absender und Empfänger können entschlüsseln, und der Betreiber liefert Geheimtext aus, den er nicht öffnen kann. Das ist eine andere Produktentscheidung, keine strengere Einstellung: E2EE bedeutet keine serverseitige Suche, keine Inhaltsmoderation, keine Wiederherstellung, wenn Benutzer ihre Schlüssel verlieren. Die Bedrohungsmodelle schachteln sich sauber ineinander – TLS verteidigt den Weg, die Verschlüsselung im Ruhezustand den Speicher, E2EE gegen den Dienst selbst – und die meisten Anwendungen halten zu Recht bei den ersten beiden an, während Messaging- und Tresor-Produkte das dritte rechtfertigen.
Hashing vs. Verschlüsselung
| Verschlüsselung | Hashing | |
|---|---|---|
| Umkehrbar | Ja – mit dem Schlüssel | Nein – von Entwurf wegen |
| Richtig für | Daten, die Sie zurücklesen müssen | Passwörter, Integritätsprüfungen |
| Standards | AES-256-GCM | bcrypt, scrypt, argon2 (langsam + gesalzen) |
| Das Versagen | Schlüssel verlieren oder offenlegen | Schnelle ungesalzene Hashes (MD5, blankes SHA-256) |
Ein Hinweis räumt mit einem verbreiteten Irrtum auf: Passwörter werden gehasht, nie verschlüsselt. Niemand – auch der Server nicht – soll ein Passwort wiederherstellen können; die Anmeldung vergleicht Hashes. Passwörter zu verschlüsseln heißt, dass ein Schlüssel existiert, der sie alle entschlüsselt – genau die Katastrophe, die Hashing ausschließen soll.
Typische Anwendungsfälle
- Jede Web- und Mobile-App – TLS auf allen Verbindungen und verschlüsselter Speicher sind Grundausstattung, keine Features.
- Regulierte Daten – die DSGVO nennt Verschlüsselung eine geeignete technische Maßnahme (mit Erleichterungen bei der Meldepflicht), Gesundheitsvorschriften schreiben sie für Patientendaten vor, und Zahlungsstandards verlangen unlesbare Kartennummern im Ruhezustand und starke Kryptografie bei der Übertragung.
- Backups und Außerbetriebnahme – verschlüsselte Backups und Crypto-Shredding (den Schlüssel vernichten, und die Daten sterben überall) schließen das Kapitel der gestohlenen Kopie.
- Schutz von PII-Feldern – Verschlüsselung auf Anwendungsebene für die Spalten, deren Abfluss eine Schlagzeile ist und kein Vorfall.
- Mobile Clients in feindlichen Netzen – TLS plus Zertifikatsprüfung als die Verteidigung, die mit dem Benutzer reist.
Welche Schicht brauchen Sie? Entscheidungsmatrix
| Situation | Greifen Sie zu |
|---|---|
| Beliebige Daten, beliebige App | TLS überall + At-Rest-Verschlüsselung der Plattform – die Untergrenze |
| Albtraum gestohlener Backups | Verschlüsselte Backups + Schlüssel anderswo gelagert |
| Sensible Spalten (Gesundheit, Ausweise) | Verschlüsselung auf Feld-/Anwendungsebene, Schlüssel in Umgebungsvariablen oder KMS |
| ”Nicht einmal wir sollten es lesen” | Ende-zu-Ende-Verschlüsselung – die Produktkosten akzeptieren |
| Passwörter | Hashing (bcrypt/argon2) – niemals Verschlüsselung |
| Sorge um Zugriff, nicht um Diebstahl | ACLs und zeilenbasierte Sicherheit – Verschlüsselung hilft nicht |
Grenzen und Trade-offs
- Verschlüsselung ist keine Zugriffskontrolle. Der Punkt der geschichteten Sicherheit in einer Zeile: Verschlüsselung im Ruhezustand ist für die laufende App transparent, also bleiben Berechtigungen – ACLs, CLPs, Zeilen-Policies – die Verteidigung gegen jeden Angreifer mit gültigen Zugangsdaten.
- Schlüsselverwaltung ist das eigentliche Projekt. Die Empfehlungen des NIST existieren, weil Erzeugung, Trennung, Rotation und Widerruf – nicht die Wahl des Algorithmus – die Stellen sind, an denen Deployments scheitern.
- Verschlüsselung auf Feldebene kämpft gegen die Datenbank. Keine Indizes, keine LIKE-Abfragen, heikle Migrationen; verschlüsseln Sie die Felder, die es brauchen, nicht das Schema.
- TLS endet am Terminator. Proxys und Load Balancer, die auf halbem Weg entschlüsseln, erzeugen wieder Klartext-Hops; interner Verkehr braucht dieselbe Disziplin wie der Rand.
- Compliance ≠ Sicherheit. Häkchen-Verschlüsselung mit Schlüsseln neben den Daten befriedigt Prüfer und sonst niemanden; die Spalte mit dem Bedrohungsmodell ist die, gegen die Sie entwerfen sollten.
Verschlüsselung mit Back4app
Back4app ist eine Open-Source-Plattform für Backend as a Service (BaaS), die eine verwaltete Datenbank, automatisch generierte REST- und GraphQL-APIs, Authentifizierung, Dateispeicher und Serverless-Funktionen mit Cloud Code kombiniert. Die Untergrenze liefert die Plattform: Jede REST-, GraphQL- und Live-Query-Verbindung läuft über TLS, und Daten wie Backups sind im Ruhezustand verschlüsselt – die beiden Basisschichten kommen als Standard statt als Projekt. Der verbleibende Anteil der Entwicklung ist genau das, was die Code-Tabs skizzieren: Passwörter werden von Back4app ab Werk mit bcrypt gehasht (nie gespeichert, nie wiederherstellbar – die Hashing-Regel strukturell durchgesetzt); wirklich sensible Felder bekommen Verschlüsselung auf Anwendungsebene in einem Cloud-Code-beforeSave, mit dem Schlüssel in der serverseitigen Konfiguration statt im Code, sodass Klartext den Speicher nie erreicht; und Geheimnisse bleiben aus Protokollen, URLs und Client-Bundles heraus – die Disziplin bei API-Schlüsseln, angewandt auf Daten. Dann das Stück, das Verschlüsselung nicht leisten kann: ACLs und Klassenberechtigungen regeln, wer was liest, denn der Schutz, der einen Angreifer mit gültigen Zugangsdaten stoppt, war nie die Kryptografie – es war die Autorisierung.
Häufige Fragen
Was ist Verschlüsselung im Ruhezustand?
Das Verschlüsseln gespeicherter Daten – Festplatten, Datenbanken, Backups, Objektspeicher –, sodass jeder, der das Speichermedium ohne die Schlüssel erlangt, nur Geheimtext in den Händen hält. Der Standard ist AES-256; geschützt wird gegen gestohlene Hardware, abgeflossene Backups und kompromittierte Speicherschichten.
Was ist Verschlüsselung bei der Übertragung?
Das Verschlüsseln von Daten, während sie Netzwerke durchqueren, sodass abgefangener Verkehr unlesbar bleibt – die Aufgabe von TLS, also genau das, was das S in HTTPS liefert. Es schützt gegen Mithören und Man-in-the-Middle-Angriffe auf jedem Hop zwischen Client und Server.
Was unterscheidet Verschlüsselung im Ruhezustand von Verschlüsselung bei der Übertragung?
Verschiedene Datenzustände, verschiedene Bedrohungen. Im Ruhezustand werden gespeicherte Kopien gegen den Diebstahl von Medien und Backups verteidigt; bei der Übertragung werden bewegte Daten gegen Mithören verteidigt. Sie ergänzen einander, sie ersetzen einander nicht – jedes ernsthafte Sicherheitsframework erwartet beides, weil jede Maßnahme Angriffe stoppt, die die andere nicht sieht.
Ist HTTPS dasselbe wie TLS?
HTTPS ist HTTP, das über TLS transportiert wird – das kryptografische Protokoll, das die Verbindung absichert. TLS 1.3 ist aktuell: schnellere Handshakes, schwache Cipher entfernt, Forward Secrecy verpflichtend. Die Versionen 1.0 und 1.1 sind formal abgekündigt und sollten deaktiviert werden.
Was ist AES-256?
Der Advanced Encryption Standard mit einem 256-Bit-Schlüssel – eine symmetrische Blockchiffre, standardisiert vom NIST, gegen Brute Force praktisch immun und die De-facto-Wahl für Daten im Ruhezustand. In der Praxis wollen Sie einen authentifizierten Modus wie AES-GCM, der Manipulation erkennt und nicht nur den Inhalt verbirgt.
Was ist der Unterschied zwischen symmetrischer und asymmetrischer Verschlüsselung?
Symmetrisch nutzt einen gemeinsamen Schlüssel in beide Richtungen – schnell, richtig für große Datenmengen (AES). Asymmetrisch nutzt ein Paar aus öffentlichem und privatem Schlüssel – langsamer, richtig für Schlüsselaustausch, Zertifikate und Signaturen. TLS nutzt beides: Ein asymmetrischer Handshake einigt sich auf einen symmetrischen Session-Schlüssel, der dann den eigentlichen Verkehr verschlüsselt.
Wie unterscheidet sich Ende-zu-Ende-Verschlüsselung von Verschlüsselung bei der Übertragung?
Durch den Vertrauensbereich. TLS schützt jeden einzelnen Hop, aber der Server entschlüsselt und kann alles lesen. Ende-zu-Ende-Verschlüsselung bedeutet, dass nur die kommunizierenden Benutzer die Schlüssel halten – der Betreiber des Dienstes selbst kann die Inhalte nicht lesen. E2EE schützt vor dem Server; TLS schützt den Weg dorthin.
Schützt Verschlüsselung im Ruhezustand vor Hackern?
Nur vor einer bestimmten Sorte: vor denen, die an den Speicher gelangen – gestohlene Laufwerke, abgeflossene Backups, falsch konfigurierte Buckets. Ein Angreifer, der die Anwendung kompromittiert oder Zugangsdaten stiehlt, liest die Daten ungehindert, weil die App legitim entschlüsselt. Verschlüsselung ist keine Zugriffskontrolle; sie ergänzt ACLs, sie ersetzt sie nie.