Was ist Verschlüsselung? Schlüssel, Hashes und Prüfsummen
Verschlüsselung wandelt lesbare Informationen in einen Geheimtext um, der sich mit dem richtigen Schlüssel wiederherstellen lässt. Ihr Zweck ist es, Daten bei der Übertragung oder Speicherung vertraulich zu halten. Hashes und Prüfsummen lösen andere Aufgaben: Ihr Ergebnis wird nicht entschlüsselt, um die ursprüngliche Nachricht zurückzugewinnen. Wer die Verfahren verwechselt, wiegt sich schnell in falscher Sicherheit.
Schlüssel und der Verschlüsselungsvorgang
Ein Verschlüsselungsalgorithmus verknüpft Klartext mit einem Schlüssel und erzeugt daraus Geheimtext. Bei symmetrischer Verschlüsselung teilen sich die Beteiligten einen geheimen Schlüssel. In asymmetrischen Verfahren haben ein öffentlicher Schlüssel und der zugehörige private Schlüssel unterschiedliche Aufgaben. Algorithmus, Betriebsmodus, Schlüsselqualität und Schlüsselaufbewahrung spielen alle eine Rolle. Dass eine Datei „verschlüsselt“ ist, sagt wenig über ihre Sicherheit aus, wenn das Passwort leicht zu erraten ist oder der Schlüssel in derselben ungeschützten Nachricht mitgeschickt wird. Moderne Anwendungen sollten etablierte Protokolle und authentifizierte Verschlüsselung verwenden statt einer improvisierten Folge von Textumwandlungen.
Wie sich Hashes und Prüfsummen unterscheiden
Ein kryptografischer Hash erzeugt einen Digest fester Länge aus den Daten; er ist keine verschlüsselte Kopie der Eingabe. Ein SHA-256-Digest hilft dabei, eine heruntergeladene Datei mit dem Wert zu vergleichen, den ein vertrauenswürdiger Herausgeber angibt. Dieser Vergleich prüft auf Gleichheit, verbirgt die Datei aber nicht. Zum Speichern von Passwörtern braucht man spezielle Passwort-Hashverfahren mit Salt und einstellbarem Rechenaufwand. CRC32 eignet sich, um zufällige Übertragungsfehler zu erkennen, ist aber kein Authentifizierungsmechanismus gegen absichtliche Änderungen. MD5 und SHA-1 sind für neue Anwendungen, die Kollisionsresistenz erfordern, ungeeignet. Das NIST beschreibt seinen Ausstieg aus SHA-1. Der Hash-Generator von 2IP berechnet Hashes und Prüfsummen für Text.
Zwei typische Beispiele
Um ein vertrauliches Dokument weiterzugeben, wählen Sie eine vertrauenswürdige Anwendung, die die Datei verschlüsselt und authentifiziert, und übermitteln Sie die Passphrase über einen separaten, geschützten Kanal. Der Empfänger kann den Inhalt mit dem richtigen Schlüssel wiederherstellen. Um ein heruntergeladenes Archiv zu prüfen, berechnen Sie dagegen seinen Hash und vergleichen ihn mit einem Wert von einer authentischen Seite des Herausgebers. Das sind verschiedene Abläufe: Der Hash schützt das Archiv nicht davor, gelesen zu werden. Zeigt eine Website Base64-Text an, kann ihn jeder ohne geheimen Schlüssel dekodieren; Kodierung ist keine Verschlüsselung.
Grenzen, die Sie kennen sollten
TLS schützt Daten während der Übertragung zwischen Endpunkten, garantiert aber nicht, dass die Endpunkte selbst vertrauenswürdig sind. Schadsoftware auf einem Gerät, ein offengelegter Schlüssel oder ein schwaches Wiederherstellungsverfahren können ansonsten solide Kryptografie aushebeln. Klären Sie bei einem Online-Texttool, ob die gewählte Funktion verschlüsselt, hasht oder nur kodiert. Fügen Sie keine privaten Dokumente oder Zugangsdaten in einen unbekannten Dienst ein, nur weil auf seiner Schaltfläche „sicher“ steht. Prüfen Sie vor der Nutzung, wie Daten verarbeitet und gespeichert werden.
TLS 1.3 und Verbindungssicherheit
Bei HTTPS ist Verschlüsselung Teil eines umfassenderen Protokolls: TLS handelt Parameter aus, vereinbart Schlüssel und authentifiziert das Serverzertifikat. Das moderne TLS 1.3 hat mehrere veraltete Optionen entfernt und den normalen Handshake vereinfacht. Der Leitfaden zum TLS-1.3-Handshake erklärt den Ablauf ausführlicher. TLS schützt Daten auf dem Weg zur benannten Gegenstelle; es belegt für sich genommen nicht, dass eine Website vertrauenswürdig ist.