Das kleine Einmaleins der Verschlüsselung

Ein Beitrag von

// Erschienen am

Encryption Symbolik. Photo credit Christoph Scholz. Licensed under the creative Commons License 4.0: https://creativecommons.org/licenses/by-sa/4.0/deed.en

In unserer digitalen Welt ist die Verschlüsselung von Daten allgegenwärtig und das ist auch gut so. Durch Verschlüsselung schützen wir unsere sensiblen Informationen vor unbefugtem Zugriff, sei es beim Online-Banking, beim E-Mail-Versand oder bei der Cloud-Speicherung. Zusätzlich ermöglichen moderne Verschlüsselungsverfahren auch digitale Signaturen und Identitätsprüfungen. Es kann daher nicht schaden, ein wenig Verständnis zu haben, was da eigentlich geschieht, denn letztlich müssen Sie entscheiden, welches vertrauen Sie in die Technologien setzen, die sie nutzen.

Ohne den Anspruch, in diesem Artikel alle Fragen in der Tiefe zu beantworten, möchte ich den Grundstein für mehr Verständnis von Cybersecurity-Methoden und Prinzipien auch für diejenigen unter uns legen, die vielleicht weniger Technik-affin sind. Sie müssen also nicht die Mathematik hinter den Verschlüsselungsverfahren verstehen, es geht eher um die Anwendungsszenarien. Es schadet aber auch nicht, aktuelle Verschlüsselungsstandards namentlich zu kennen, denn so können Sie die Sicherheit der von Ihnen genutzten Produkte besser beurteilen.

Grundsätzlich wird zwischen zwei Hauptmethoden der Datenverschlüsselung unterschieden:

  • Die symmetrische Verschlüsselung, in der zwei (oder mehr) gleiche Schlüssel verwendet werden.
  • Die asymmetrische Verschlüsselung, in der zwei unterschiedliche Schlüssel verwendet werden.

Die Schlüssel sind in der digitalen Welt natürlich Zahlenfolgen, mit denen der zu verschlüsselnde Text durch mehrere logische Verknüpfungen verschlüsselt wird. Zum Verständnis der Konzepte bietet es sich aber an, sich der Analogie von Schlüssel und Schloss zu bedienen.

Symmetrische Verschlüsselung

Die symmetrische Verschlüsselung ist vergleichbar mit Ihrem Schloss an der Haustür oder der Schließanlage in einem Mehrfamilienhaus. Es gibt einen Schlüssel, der die Türen auf- und zuschließen kann. Der Schlüssel lässt sich beliebig vervielfältigen, muss aber stets in vertrauensvollen Händen bleiben. Sobald jemand den Schlüssel hat, bekommt er Zugang zum Haus. Man spricht daher auch von „Secret-Key“ Verschlüsselung.

Im digitalen Pendant wird also sowohl zur Ver- als auch zur Entschlüsselung der Daten der gleiche Schlüssel verwendet. Wenn zwei Parteien verschlüsselt im Internet kommunizieren wollen, müssen also auch beide Seiten den Schlüssel besitzen und er muss trotzdem geheim gehalten werden.

Symmetrische Verschlüsselung als Schema dargestellt
Symmetrische Verschlüsselung schematisch dargestellt

Sie bemerken, dass hier für die Anwendung im Internet ein Problem entsteht, aber dazu gleich mehr. Symmetrische Verschlüsselung hat – neben einigen Nachteilen – große Vorteile, weshalb sie der Standard für die verschlüsselte Datenübertragung im Internet ist:

Vorteile

  • Symmetrische Verschlüsselung ist verhältnismäßig effizient, bietet also hohe Verarbeitungsgeschwindigkeit
  • Die Algorithmen sind relativ einfach zu implementieren
  • Auch große Datenmengen lassen sich effizient ver- und entschlüsseln
  • Auch mit verhältnismäßig kleinen Schlüssellängen kann hohe Sicherheit erreicht werden
  • Symmetrische Verschlüsselung ist bei entsprechender Schlüssellänge auch mit Quantencomputern nicht einfach zu brechen

Nachteile

  • Ein sicherer Schlüsselaustausch ist notwendig; alle Kommunikationsparteien benötigen den geheimen Schlüssel
  • Dadurch steigt der Aufwand bei vielen Teilnehmenden
  • Potenziell hoher Verwaltungsaufwand für die Schlüssel
  • Verhältnismäßig hohes Risiko der Schlüsselkompromittierung

Der Advanced Encryption Standard“ (AES) ist aktuell der Quasi-Standard für weltweit genutzte symmetrische Verschlüsselungsalgorithmen. Zwar gibt es bekannte Angriffsmethoden aber praktisch ist der Rechenaufwand bei entsprechender Schlüssellänge so groß, dass der AES-Standard auch für zukünftige Angriffe mit Quantencomputern als sicher gilt. Der AES-Standard sieht Schlüssellängen von 128, 192 und 256 Bit vor.

Der AES-Standard findet zusammen mit asymmetrischen Verschlüsselungsmethoden zum Beispiel bei HTTPS-Verbindungen im Internet Anwendung. Der Twofish-Algorithmus gilt ebenfalls als sehr sicher und wird zum Beispiel bei der E-Mail- und der Festplattenverschlüsselung mit Schlüssellängen von bis zu 256 Bit verwendet.

Asymmetrische Verschlüsselung

Die asymmetrische Verschlüsselung ist ein relativ junges Verfahren, das erst in den 1970er Jahren entwickelt wurde. Lange wurden entsprechende mathematische Funktionen für unmöglich gehalten und man kann sagen, dass die Entdeckung der asymmetrischen Verschlüsselungsverfahren die sichere Kommunikation durchaus revolutioniert hat. Sie basiert mathematisch auf sogenannten Falltürfunktionen. Dies sind Einwegfunktionen, die zwar einfach zu berechnen sind, aber sehr schwer umzukehren sind. Bei der asymmetrischen Verschlüsselung kommt dabei häufig die Primfaktorzerlegung zum Tragen.

Dadurch, dass man sehr einfach zwar das Produkt zweier Primzahlen berechnen kann, das Ergebnis aber nur mit sehr hohem Aufwand in seine Primfaktoren zerlegen kann, lassen sich asymmetrische Schlüsselpaare erzeugen. So erhält man ein Schlüsselpaar, bei dem ein Schlüssel nur zur Verschlüsselung verwendet werden kann und der andere nur zur Entschlüsselung.

Asymmetrische Verschlüsselung schematisch dargetsellt
Die Funktionsweise und Anwendung von asymmetrischer Verschlüsselung symbolisch

Man erhält also ein Zwei-Schlüssel-System, bei dem man einen Schlüssel öffentlich macht und den zweiten geheim hält. Daher spricht man auch von „Public-Key“ Verschlüsselung. Kommunikationsteilnehmer können mit dem öffentlichen Schlüssel eines ihnen bekannten Empfängers verschlüsselte Nachrichten senden, die nur der Empfänger, der auch gleichzeitig Inhaber des geheimen Schlüssels ist, entschlüsseln kann.

Es ist also kein Austausch eines Schlüssels mehr nötig. Damit löst asymmetrische Verschlüsselung das Problem des Schlüsselaustauschs bei symmetrischer Verschlüsselung. Allerdings hat die asymmetrische Verschlüsselung auch Nachteile.

Vorteile

  • Kein direkter Schlüsselaustausch nötig
  • Ideale Lösung für offene Netzwerke wie das Internet
  • Weitere Anwendungen, wie Digitale Signaturen ermöglichen Authentifizierung

Nachteile

  • Rechenintensive Verschlüsselung und dadurch höhere Anforderungen an Systemressourcen
  • Größere Schlüssellängen sind erforderlich, um Sicherheit zu gewährleisten (2048 Bit und größer)
  • Daher nicht gut für große Datenmengen geeignet
  • Aktuelle asymmetrische Verschlüsselungsverfahren sind zukünftig mit Quantencomputern angreifbar, im Rahmen des Post-Quanten-Kryptografie Projektes wurden aber bereits sichere, potenzielle Nachfolger identifiziert

Asymmetrische Verschlüsselungsverfahren werden heute in Kombination mit symmetrischen Verschlüsselungsverfahren genutzt, um im Internet die sichere Kommunikation per HTTPS zu realisieren. Zunächst werden mit asymmetrischer Verschlüsselung die geheimen Schlüssel getauscht, um dann eine symmetrisch verschlüssele Kommunikation aufzubauen. Die asymmetrische Verschlüsselung liefert also die Lösung für das Problem der Schlüsselverteilung mit symmetrischer Verschlüsselung.

Hashing

Beim sogenannten Hashing (engl. für „zerhacken“) handelt es sich genau genommen nicht um Verschlüsselung. Hashing ist eine Methode, in der aus einer beliebigen Zeichenfolge mit Hilfe einer mathematischen Streuwertfunktion eine kürzere Zeichenfolge mit definierter Länge erzeugt wird, der Hashwert. Es gibt dazu keine Umkehrfunktion. Das heißt, man kann aus einem Hashwert die Originaldaten nicht mehr rekonstruieren, weshalb man auch von Einweg-Verschlüsselung sprechen kann.

Einweg-Verschlüsselung (Hashing) schematisch dargestellt mit einem konkreten Anwendungsfall
Die Anwendung von Einweg-Verschlüsselung (Hashing) symbolisch dargestellt

In der Kryptografie spielen Hash-Algorithmen eine große Rolle. Sie finden z.B. Anwendung bei der Erzeugung von Prüfsummen und Signaturen (siehe unten), und auch beim sicheren Speichern von Passwörtern. Man braucht Hash-Funktionen aber auch in der Datenspeicherung, um beispielsweise große Datenobjekte in Listen mit eindeutigen IDs zu speichern.

Ein Problem bei Hash-Algorithmen besteht in der Möglichkeit von sogenannten Kollisionen. Da ein Hash-Algorithmus in der Regel aus einer großen Datenmenge eine definierte, kleinere Datenmenge macht, kann nicht ausgeschlossen werden, dass es auch mehrere Datenobjekte geben kann, die den selben Hashwert haben. Das nennt man dann eine Kollision.

Bei den in der Kryptografie verwendeten Hash-Funktionen ist es besonders wichtig, dass die Chance auf Kollisionen möglichst gering ist. Der relativ bekannte MD5-Algorithmus war lange Standard in der Kryptografie. Es wurde jedoch festgestellt, dass er nicht in ausreichendem Maße Kollisionsresistent ist. Momentan gilt der sogenannte Secure-Hash-Algorithm (SHA) als sicherer Standard. Zumindest in den Varianten SHA-2 und SHA-3 mit Bitlängen ab 256 Bit.

Insbesondere beim sicheren Speichern von Passwörtern, zum Beispiel in Passwort-Managern, aber auch überall sonst, sollte eine möglichst starke kryptografische Hash-Funktion wie SHA-2 oder SHA-3 verwendet werden. So gespeicherte Passwörter können nicht ohne erheblichen Aufwand in ihren Klartext zurückverwandelt werden, zumindest wenn auch die sonstigen gebotenen Praktiken zur sicheren Speicherung Passwörter beachtet werden.

Signaturen und PKI

Durch die Eigenschaften der asymmetrischen Verschlüsselung ergeben sich auch vollkommen neue digitale Anwendungsmöglichkeiten. Die wichtigste ist die der digitalen Signaturen. Dabei benutzt man die Schlüssel des Schlüsselpaares im Prinzip umgekehrt:

Als Inhaber des geheimen Schlüssels kann ich mit diesem eine digitale Signatur meiner Nachricht hinzufügen. Wenn ich die signierte Nachricht dann einem anderen Teilnehmer sende, kann dieser dann mit Hilfe meines öffentlichen Schlüssels prüfen, dass die Signatur auch tatsächlich von mir stammt. Die Signatur wird dabei so erzeugt, dass aus der Nachricht mit einer Hash-Funktion eine kryptografische Prüfsumme erzeugt wird, der dann mit dem privaten Schlüssel verschlüsselt wird.

Der Empfänger kann nun die Prüfsumme mit dem öffentlichen Schlüssel entschlüsseln. Dann kann er ebenfalls mit der selben Hash-Funktion die Prüfsumme der empfangenen Nachricht erzeugen und diese dann mit de entschlüsselten, empfangenen Prüfsumme vergleichen. Sind beide gleich, ist sichergestellt, dass die Nachricht auch tatsächlich von dem Absender stammt, der im Besitz des privaten Schlüssels ist. Weiterhin kann so sichergestellt werden, dass die Nachricht auf dem Übertragungsweg nicht verändert wurde. So werden Authentizität und Datenintegrität sichergestellt.

So funktionieren auch Prüfsummen, zum Beispiel wenn Sie Software aus dem Internet herunterladen. Idealerweise wird dann zu jedem Paket eine Prüfsumme mitgeliefert, die Sie ebenfalls herunterladen können. Damit können Sie dann die Datenintegrität des heruntergeladenen Software-Paketes überprüfen.

Mit Hilfe asymmetrischer Verschlüsselung lassen sich sogenannte Public-Key-Infrastrukturen (PKI) aufbauen. In diesen können sich die beteiligten Parteien gegenseitig ihre Identität über digitale Zertifikate bestätigen und so sicher miteinander kommunizieren. Sie ermöglichen es auch, Dokumente digital zu signieren und sind die Grundlage für Anwendungen wie elektronische Ausweise.

Fazit

Zusammenfassend lässt sich sagen, dass die praktischen Anwendungen von Verschlüsselungstechnologien unseren digitalen Alltag schon längst durchdrungen haben. Ob Online-Banking, E-Mail und Internet-Kommunikation, Messaging-Apps oder Datensicherung in Cloud-Speichern. Ohne moderne Verschlüsselungsmethoden wäre unser Online-Alltag mit der Sicherheit wie wir sie heute kennen kaum denkbar.

Aber die Sicherheit durch Verschlüsselung basiert immer auf dem Prinzip, dass es hinreichend schwer ist, eine Verschlüsselung zu brechen. Unmöglich ist es nicht. Absolute Sicherheit gibt es nicht und mit der ständig steigenden Rechenleistung moderner Computersysteme muss die Entwicklung neuer Kryptografie-Methoden ständig Schritt halten. Mein Rat ist also, bleiben Sie auf dem Laufenden. Sollten Sie Fragen zur Anwendung von Verschlüsselungsmethoden in jeglicher Form bei Ihnen haben, sprechen Sie mich gerne jederzeit an.

Bildquellen

Das Beitragsbild wurde von Christoph Scholz unter der Creative Commons License 4.0 lizensiert: https://creativecommons.org/licenses/by-sa/4.0/deed.enFoto.