Ein Entwurf speichert den Hauptschlüssel in derselben Datenbank, die er schützt. Was ist falsch, und wie lautet die Lösung?
Kurzantwort
Liegt der Schlüssel beim Chiffrat, bekommt jeder, der die Datenbank stiehlt, beides — die Verschlüsselung schützt also nichts; es ist ein Schloss mit angeklebtem Schlüssel. Schlüssel gehören in ein dediziertes KMS oder HSM, getrennt von den Daten, mit strenger Zugriffskontrolle, Rotation und Funktionstrennung. Den Schlüssel zu hashen macht ihn einwegig und zum Entschlüsseln unbrauchbar, und zusätzliche Kopien am selben Ort vervielfachen nur die Exposition, statt sie zu verringern.
Dies ist einer der häufigsten kryptografischen Designfehler und ein gutes Interview-Signal: Der Kandidat erkennt die sich selbst aushebelnde Anordnung sofort, oder er akzeptiert „aber es ist doch verschlüsselt" unhinterfragt.
Warum das Zusammenlegen von Schlüssel und Daten die Verschlüsselung aushebelt
Verschlüsselung verwandelt ein Vertraulichkeitsproblem in ein Schlüsselmanagement-Problem. Die gesamte Sicherheit des Verfahrens ruht nun auf der Geheimhaltung des Schlüssels. Speicherst du diesen Schlüssel in genau der Datenbank, die er schützt, dann legt jede Datenpanne, die die Daten preisgibt, auch den Schlüssel offen. Der Angreifer stiehlt das Chiffrat und das Mittel zu seiner Entschlüsselung in einem Zug. Es ist ein Tresor, dessen Kombination auf der Tür steht — die Verschlüsselung wird zur Zeremonie, nicht zum Schutz.
Die Lösung: getrennte, verwaltete Schlüssel
Schlüssel gehören in ein dediziertes Key-Management-System (KMS) oder, für höchste Sicherheit, in ein Hardware-Sicherheitsmodul (HSM), das Krypto-Operationen ausführen kann, ohne den Schlüssel je zu exportieren. Lege darüber:
- Zugriffskontrolle — nur bestimmte Identitäten dürfen den Schlüssel nutzen, alles protokolliert und auditiert.
- Funktionstrennung — wer die Daten lesen darf, ist nicht, wer die Schlüssel administriert.
- Rotation — Schlüssel wechseln planmäßig und nach vermuteter Exposition.
- Envelope-Verschlüsselung — Datenschlüssel sind selbst durch einen Hauptschlüssel im KMS verschlüsselt, sodass der Hauptschlüssel den Datenspeicher nie berührt.
Warum die falschen Antworten falsch sind
„Nichts, solange die Datenbank verschlüsselt ist" verfehlt den Punkt völlig — Verschlüsselung mit zusammengelegtem Schlüssel ist kein Schutz. „Den Schlüssel hashen, bevor er gespeichert wird" ist ein Kategorienfehler: Hashing ist einwegig, ein gehashter Schlüssel kann die Daten nie entschlüsseln; das System bricht. „Zwei Kopien zur Redundanz speichern" optimiert die Verfügbarkeit und verdoppelt zugleich die Exposition des sensibelsten Geheimnisses im System — genau verkehrt herum.
Worauf der Interviewer achtet
Er will sehen, dass du verstehst: Schlüsselmanagement ist das Herz der Kryptografie, kein nachträglicher Gedanke, und dass du zu einem KMS/HSM mit Funktionstrennung und Rotation greifst, statt eine fatal fehlerhafte Anordnung schönzureden.
Wahrscheinliche Anschlussfragen
- Was ist der Unterschied zwischen einem KMS und einem HSM, und wann würdest du ein HSM verlangen?
- Wie würdest du diesen Hauptschlüssel ohne Ausfallzeit oder Datenverlust rotieren?
- Was ist Envelope-Verschlüsselung und wie hilft sie hier?