In der Regel sollte man denken, dass bei Verschlüsselungen die Prinzipien Geheimhaltung und Verschwiegenheit über allem stehen. Es existieren jedoch Verfahren, bei denen ein Teil des Schlüssels öffentlich zugänglich gemacht wird. Die möglichst große Verbreitung kann hierbei sogar förderlich sein, um von vielen Personen zum Beispiel verschlüsselte E-Mails zu empfangen. Aber warum gefährdet dies nicht die Sicherheit der Verschlüsselung?

Zwei Arten von Verschlüsselungen

Verschlüsselungen lassen sich generell in zwei Klassen einteilen: symmetrische und asymmetrische Verfahren. Beim symmetrischen Verfahren verwenden beide Kommunikationspartner den gleichen Schlüssel, zunächst zum Verschlüsseln der Nachricht und schließlich zum Entschlüsseln. Dabei gibt es jedoch das Problem oder zumindest die Frage, wie der Schlüssel sicher ausgetauscht werden kann. Denn nicht immer ist es realistisch, dass sich die Kommunikationspartner vorher treffen und einen Schlüssel direkt vereinbaren können.

Beim asymmetrischen Public-Key-Verfahren stellt sich die Situation anders dar. Hier wird durch einen Kommunikationspartner ein Schlüsselpaar erzeugt. Dieses Paar besteht aus einem öffentlichen und einem geheimen/privaten Schlüssel. Der öffentliche Schlüssel wird durch die Person verbreitet, die verschlüsselte Nachrichten erhalten möchte. Dieser sollte also möglichst vielen Personen bekannt sein, damit eine große Anzahl von Menschen in der Lage ist, Nachrichten zu verschlüsseln. Der Kommunikationspartner kann nun also mit dem öffentlichen Schlüssel die von ihm verfasste E-Mail verschlüsseln und an den Adressaten schicken. Der private Schlüssel hingegen wird niemand anderem zugänglich gemacht. Er dient dazu die empfangene, verschlüsselte Nachricht zu dekodieren. Dies kann ausschließlich nur der Besitzer des privaten Schlüssels tun, der dementsprechend auch absolut geheim gehalten werden sollte. Warum birgt dies keine Gefahr?

Die mathematische Falltür

Um diese Frage zu beantworten, lassen Sie uns eine kleine Matheaufgabe rechnen. Dazu nehmen wir uns zwei Primzahlen (Zahlen, die nur durch sich selbst und durch 1 ohne Rest teilbar sind) und multiplizieren diese. Zum Beispiel bilden wir das Produkt von 19 und 41, was 779 ergibt. Fertig! Entweder Sie rechnen dies schriftlich durch oder nehmen einen handelsüblichen Taschenrechner zur Hilfe. Wie Sie wahrscheinlich festgestellt haben, ist diese Rechnung sehr leicht (zumindest mit Taschenrechner) und schnell durchführbar. Noch ein weiteres Beispiel: Wir multiplizieren die Primzahlen 23 mit 83 und erhalten 1909. Wieder haben wir die Rechnung in sehr kurzer Zeit abschließen können.

Nun drehen wir den Spieß um. Jede natürliche Zahl lässt sich in ihre Primfaktoren zerlegen. Das bedeutet, dass jede ganze Zahl ab der 1 aufwärts, also 2, 3, 4, 5 usw., als eine Multiplikation von Primzahlen dargestellt werden kann. Nehmen wir als Beipiel die 6. Die Rechnung 2 mal 3 ergibt 6. 2 und 3 sind Primzahlen und demnach auch die Primfaktoren von 6. Gleiches gilt für die beiden Ergebnisse aus unseren Multiplikationsrechnungen 779 und 1909. Die Primfaktoren von 779 sind 19 und 41 und entsprechend splittet sich die 1909 in 23 und 83 auf. Dies wissen wir ad hoc aber nur, da wir vorhin selbst die Multiplikation durchgeführt haben.

Die Feststellung der Primfaktoren einer Zahl, die Primfaktorzerlegung genannt wird, ist nämlich keine einfache Sache. Bestimmen Sie doch mal die Primfaktoren von 3293. Der Taschenrechner wird Ihnen hier nicht sehr weiterhelfen. Die Mathematik hat bisher kein einfaches und schnelles Verfahren gefunden, was uns diese Aufgabe erleichtert. Vielleicht kommen Sie nach einigem Ausprobieren auf die richtige Lösung: 37 und 89. Noch komplizierter wird es bei immer größeren Primzahlen. Oder kennen Sie die Primfaktoren von 196764031 auswendig? Es sind die 10781 und 18251. Auch Computersysteme schaffen es nicht innerhalb kurzer Zeit sehr große Zahlen zu zerlegen.

Dieses Paar von einfacher und schneller Berechnung in einer Richtung und komplizierter und langwieriger Berechnung in der Gegenrichtung wird mit dem Ausdruck Falltür- oder Einwegfunktion bezeichnet. Es ist dadurch sehr gut für die Anwendung in Verschlüsselungverfahren geeignet. Diese Unumkehrbarkeit einer mathematischen Funktion ist daher eine Grundlage für die Verschlüsselung von E-Mails mit dem PGP-Verfahren (Pretty Good Privacy). PGP und seine verwandten Verfahren sind daher asymmetrische Verschlüsselungsverfahren [1, 2].

Ablage von Passwörtern

Auch bei der Ablage beziehungsweise Speicherung von Passwörtern kann die mathematische Falltür hilfreich sein. Vielleicht haben Sie sich schon einmal gefragt, ob Ihr E-Mail-Anbieter alle Passwörter, die bei ihm gespeichert liegen, einfach lesen kann. Dies sollte in der Regel nicht der Fall sein. Vielmehr wird Ihr Passwort durch eine Funktion umgerechnet und dieser neue Wert wird auf dem Server als eine Art Passwort gespeichert. Etwas anschaulicher ausgedrückt: Sie wählen als Passwort bei Ihrem E-Mail-Anbieter die Wortkette "GehenKoblenzBergAussichtSonne". Über eine Falltürfunktion, die in diesem Zusammenhang Hashfunktion heißt, wird Ihr Passwort zum Beispiel in die Zeichenkette "4c62a4944220826defe1f48f2ddf531484e60981" umgerechnet. Dies ist nun auch der Wert, der in der Datenbank abgelegt wird. Die Hashfunktion ist so konstruiert, dass es mit realistischem Aufwand - wie schon bei der Primfaktorzerlegung - nicht möglich ist von "4c62a4944220826defe1f48f2ddf531484e60981" auf Ihr ursprüngliches Passwort "GehenKoblenzBergAussichtSonne" zu schließen. Wenn Sie sich nun das nächste Mal bei Ihrem Anbieter einwählen, wird einfach Ihre Eingabe durch die gleiche Funktion umgerechnet und dieses Produkt dann mit dem Eintrag in der Datenbank verglichen. Es wird also nicht "GehenKoblenzBergAussichtSonne" mit einem Eintrag in der Datenbank verglichen, sondern vielmehr "4c62a4944220826defe1f48f2ddf531484e60981".

Referenzen

[1] The International PGP Home Page, 2014. URL: http://www.pgpi.org/ (24.03.2014)

[2] The GNU Privacy Guard, 2014. URL: http://www.gnupg.org/index.de.html (24.03.2014)

Über den Autor: Redaktion

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *


5 + = dreizehn

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>