Zum Inhalt springen

Verschlüsselung in der Praxis — symmetrisch, asymmetrisch und Zertifikate

Zwei Arten von Schlüsseln, Hashing und wie HTTPS alles zusammenbindet

Einleitung

Bei der Verschlüsselung geht es darum, Daten für alle unlesbar zu machen außer für den, der den richtigen Schlüssel hat — das ist der Kern der Vertraulichkeit in der IT-Sicherheit. Aber es gibt nicht nur eine Art von Verschlüsselung; verschiedene Situationen verlangen verschiedene Techniken, und ein Techniker sollte sie unterscheiden können.

Symmetrische Verschlüsselung

Bei der symmetrischen Verschlüsselung wird derselbe Schlüssel zum Verschlüsseln und zum Entschlüsseln der Daten verwendet. AES (Advanced Encryption Standard) ist der am weitesten verbreitete Algorithmus und wird unter anderem zum Verschlüsseln von Festplatten und großen Datenmengen genutzt, weil er schnell ist. Der Nachteil ist das Problem der Schlüsselverteilung: Beide Parteien müssen denselben geheimen Schlüssel haben, und dieser muss irgendwann sicher übertragen werden, ohne dass ein Dritter ihn abfängt.

Asymmetrische Verschlüsselung

Die asymmetrische Verschlüsselung — auch Public-Key-Kryptografie genannt — verwendet ein Schlüsselpaar: einen öffentlichen Schlüssel, der frei geteilt werden kann, und einen privaten Schlüssel, der den Besitzer nie verlässt. Mit dem öffentlichen Schlüssel verschlüsselte Daten können nur mit dem zugehörigen privaten Schlüssel entschlüsselt werden. RSA ist ein bekannter Algorithmus dieser Art. Die Methode löst das Problem der Schlüsselverteilung, ist aber weit rechenintensiver als die symmetrische Verschlüsselung und wird deshalb typischerweise nur genutzt, um einen symmetrischen Schlüssel sicher auszutauschen, wonach der eigentliche Datenstrom symmetrisch verschlüsselt wird.

Hashing — etwas anderes als Verschlüsselung

Hashing ist keine Verschlüsselung, denn es lässt sich nicht rückgängig machen: Eine Hash-Funktion wandelt Daten in einen Wert fester Länge um, aus dem man nicht zurückrechnen kann. Sie wird genutzt, um die Integrität zu prüfen — ob eine Datei seit dem letzten Mal verändert wurde — und um Passwörter zu speichern, sodass ein Techniker oder Angreifer, der die Datenbank sieht, nicht das Passwort selbst sieht, sondern nur dessen Hash.

SymmetrischAsymmetrischHashing
SchlüsselEin einziger gemeinsamer SchlüsselÖffentlicher + privater SchlüsselKein Schlüssel
Lässt sich rückgängig machenJa, mit dem SchlüsselJa, mit privatem SchlüsselNein, in eine Richtung
Typische VerwendungGroße Datenmengen verschlüsselnSchlüsselaustausch, SignaturenIntegrität, Zugangscodes

TLS/HTTPS und Zertifikate

Wenn ein Browser eine HTTPS-Verbindung aufbaut, werden alle drei Techniken zusammen genutzt. Die asymmetrische Verschlüsselung wird zu Beginn verwendet, um sicher einen gemeinsamen, geheimen Schlüssel zu vereinbaren; danach wird der eigentliche Datenstrom symmetrisch verschlüsselt, weil das schneller ist; und Hashing wird eingesetzt, um sicherzustellen, dass die Daten unterwegs nicht verändert wurden. Die Identität des Servers wird mit einem Zertifikat bestätigt, das von einer Zertifizierungsstelle (Certificate Authority) ausgestellt wird und einen öffentlichen Schlüssel an einen bestimmten Domänennamen bindet — das ist die Grundlage dessen, was man PKI (Public Key Infrastructure) nennt.

Verschlüsselung schützt Daten auf dem Weg. Sie schützt dich nicht davor, sie freiwillig an die falsche Person zu übergeben.

Fachliche Grundregel in der IT-Sicherheit