In der Kryptografie wird i. d. R. zwischen zwei Verfahren unterschieden: der symmetrischen und der asymmetrischen Kryptografie.
Asymmetrische kryptografische Verfahren werden auch häufig als Public-Key-Verfahren oder asymmetrische Kryptosysteme bezeichnet. In diesem Beitrag möchten wir Ihnen grundlegende Mechanismen, Schutzziele und die teilweise komplexen Verfahren der asymmetrischen Kryptografie erklären. Warum in diesem Kontext von einem System statt von einem Verschlüsselungsmechanismus gesprochen wird, werden wir ebenfalls erläutern.
Ziele der asymmetrischen Kryptographie
Allgemein formuliert, verfolgt die Kryptografie die Ziele
- zu verhindern, dass Daten in unbefugte Hänge gelangen – sie schützt also den Grundwert der Vertraulichkeit
- sicherzustellen, dass die Daten nicht von Unbefugten verändert werden können – sie schützt also den Grundwert der Integrität
- die Identität der Benutzer eindeutig zuzuordnen – sie validiert also die Identität des Benutzers
Asymmetrische kryptografische Verfahren kommen oft für die Verschlüsselung der Inhalte der E-Mail-Kommunikation zur Anwendung.
Darüber hinaus werden asymmetrische kryptografische Verfahren aber nicht nur für die eigentliche Inhaltsverschlüsselung genutzt. Sie kommen auch oft zum Einsatz, um eine Transportverschlüsselung einzuleiten, also z. B. im Internet, um eine Kommunikation über das sichere HTTPS-Protokoll abzubilden.
In der Praxis wird bspw. der gesicherte Datenverkehr einer Anfrage bei einer Webseite im Internet mit Blockchiffren verschlüsselt, wie z. B. AES (Advanced Encryption Standard). AES ist ein kryptografischer Algorithmus, der bei symmetrischen Verschlüsselungsverfahren eingesetzt wird. Der Grund für die Verwendung der symmetrischen Verschlüsselung zur eigentlichen Kommunikation liegt in der benötigten Rechenleistung. Asymmetrische Verfahren benötigen wesentlich mehr Rechenleistung als symmetrische Verfahren. Die praktische Konsequenz daraus ist, dass die asymmetrischen Verfahren ca. um den Faktor 1000 langsamer sind als symmetrische Verfahren.
Für die symmetrische Verschlüsselung wird nur genau ein Schlüssel benötigt, welcher die Kommunikation verschlüsselt. Diesen müssen beide Kommunikationspartner kennen. Der Schlüssel muss allerdings demnach zuvor ausgetauscht werden, ohne dass ein Angreifer in Besitz des Schlüssels gelangt, da der übertragene Netzwerkverkehr potentiell von einem Angreifer abgehört werden könnte. Diese Aufgabe wird von asymmetrischen kryptografischen Verfahren übernommen. Der symmetrische Schlüssel wir also mithilfe eines asymmetrischen Verfahrens sicher übertragen. Die darauffolgende Kommunikation nutzt für die Transportverschlüsselung dann nur noch den symmetrischen Schlüssel.
Ein spezielles Ziel der asymmetrischen Kryptografie ist also ein Schlüsselaustausch über ein unsicheres Medium, z. B. das Internet.
Grundlagen der asymmetrischen Kryptografie
Bei der Public-Key-Kryptografie bzw. asymmetrischen Kryptografie existieren im Gegensatz zur symmetrischen zwei Schlüssel, ein öffentlicher und ein privater Schlüssel.
Die privaten Schlüssel werden von jedem Teilnehmer selbst erzeugt und der öffentliche Schlüssel muss auch dem anderen Kommunikationsteilnehmer zugänglich gemacht werden. Die Veröffentlichung kann z. B. auf einem Server, auf einer Webseite oder von Zertifizierungsstellen realisiert werden. Die Zertifizierungsstelle bestätigt in diesem Zuge und validiert die Authentizität der Identität, um sicherzustellen, dass auch die korrekten Kommunikationspartner in Verbindung treten. Der Prozess der Echtheitsprüfung wird noch näher erklärt.
Es gibt nun also pro Teilnehmer einen öffentlichen Schlüssel und einen privaten Schlüssel. Wenn ein Kommunikationspartner mit einem anderen in Verbindung treten will, so wird vorausgesetzt, dass beide Kommunikationspartner A und B diese öffentlichen Schlüssel kennen. Bei dem öffentlichen Schlüssel ist auch nicht relevant, ob ein Angreifer im Besitz dieser Information ist – er kann und sollte auch veröffentlicht und für jeden abrufbar zur Verfügung gestellt werden.
Der Sender A verschlüsselt nun die eigentliche Nachricht mit dem öffentlichen Schlüssel des Empfängers B. Diese nun verschlüsselte Nachricht kann nur von dem Empfänger, also dem Inhaber des privaten Schlüssels von B, entschlüsselt werden. Für die sichere Funktionsweise von asymmetrischen kryptografischen Verfahren setzt die Geheimhaltung des privaten Schlüssels voraus. Dieser Schlüssel muss aber nicht übermittelt werden, sondern bleibt während der Kommunikation in Besitz des jeweiligen Kommunikationspartners. Was schützt nun aber genau diese Verschlüsselung und verhindert, dass ein Angreifer diese Schlüssel nicht rekonstruieren oder errechnen können?
Mathematischer Hintergrund und Sicherheit der Public-Key-Kryptografie
Die Public-Key-Kryptografien basieren auf mathematisch noch als sicher angenommenen Verfahren, bei denen es Angreifern nicht in einem realistischem Zeitrahmen möglich sein darf, die Verschlüsselung durch bloße Rechenkapazität, z. B. mittels Brute-Force-Angriff, zu brechen.
Sie benötigen dafür spezielle mathematische Funktionen, deren Berechnung zwar effizient ist, aber die Umkehrung der Funktion nicht möglich sein darf, ohne eine Zusatzinformation zu besitzen. Diese Art von Funktionen wird in der Praxis als „Einwegfunktion mit Falltür“ (engl. trapdoor one-way function) bezeichnet. Beispiele für diese Einwegfunktionen sind der „Diskrete Logarithmus“ oder die Multiplikation bzw. Faktorisierung von Primzahlen.
Eine Multiplikation von Primzahlen, als Beispiel 13 x 19, ist leicht zu berechnen. Es ist allerdings nicht ohne Weiteres möglich, nur mit Hilfe des Ergebnisses (247) Rückschluss auf die beiden Faktoren 13 und 19 zu erlangen.
In praktischen technischen Umsetzungen werden allerdings wesentlich größere Zahlen aus dem Zahlenraum der natürlichen Zahlen verwendet und es gelten weitere Anforderungen, wie z. B., dass die gewählten Primzahlen nicht zu nah beieinander liegen dürfen.
Die kryptografischen Verfahren, die auf dem diskreten Logarithmusproblem basieren, werden zwar bisher noch als mathematisch sicher betrachtet, insofern u. a. die Schlüssellängen „ausreichend“ groß sind, dennoch gibt es sog. Seitenkanalangriffe. Ein Beispiel für einen Seitenkanalangriff ist ein kompromittiertes System, bei dem der Angreifer Zugriff auf den privaten Schlüssel erlangt.
Digitale Zertifikate und digitale Signaturen
Ein zentraler Aspekt, welcher eine Public-Key-Infrastruktur von einer reinen Verschlüsselung unterscheidet, ist die Gewährleistung der Authentizität und Integrität. Um die Authentizität der Kommunikationspartner sicherzustellen, werden zwingend Zertifizierungsserver genutzt. Diese sog. „Certification Authorities“ (CA) unterzeichnen die öffentlichen Schlüssel mit einer digitalen Signatur. In der Praxis wird die Echtheit eines öffentlichen Schlüssels von der CA über ein standardisiertes Zertifikat, dem sog. X.509-Zertifikat, bestätigt. Für die Überprüfung der CAs wiederum, muss ebenfalls deren Authentizität sichergestellt werden. So entsteht eine Art Kette, welche bis zu dem sog. „Root-Zertifikat“ bzw. der Root CA führt. Die Root CA und das Wurzelzertifikat bilden so eine Art hierarchische Baumstruktur, welche Vertrauen voraussetzt. In der Praxis sind häufig Stammzertifikate in den gängigen Browsern bereits integriert. Die Abhängigkeitsstruktur zwischen Kommunizierenden und den CAs verdeutlichen nun womöglich auch den Begriff des asymmetrischen Kryposystems.
Spezielle Verfahren asymmetrischer Kryptografie
Zu den bekanntesten technischen Verfahren der asymmetrischen Kryptografie gehören das Rivest-Shamir-Adleman-Verfahren (RSA-Verfahren) oder das Diffie-Hellman-Verfahren (DH-Verfahren). Sie unterscheiden sich u. a. in der Erzeugung der genutzten Primzahlen und das DH-Verfahren ist ein reines Schlüsselaustauschprotokoll, also streng genommen kein asymmetrisches Kryptosystem.
Zu den bekannten Anwendungsbereichen gehören die E-Mail-Verschlüsselung PGP und S/MIME, aber auch die Kommunikation über das Internet mittels des HTTPS-Protokolls. In der Praxis wird allerdings, wie bei dem HTTPS-Protokoll, die asymmetrische Kryptografie lediglich für die Schlüsselvereinbarung und die Authentifizierung genutzt. In Kombination mit der symmetrischen Verschlüsselung wird dies als hybride Verschlüsselung bezeichnet. RSA wird u. a. bei digitalen Signaturen verwendet. Ein Beispiel hierfür ist der DSA (Digital Signature Algorithm).
Fazit
Noch gelten die Public-Key-Verfahren, wie das RSA-Verfahren mit einer empfohlenen Schlüssellänge von über 3000 Bit und das DH-Verfahren in verschiedenen Variationen als sicher und auch das Bundesamt für Sicherheit in der Informationstechnik (BSI) empfiehlt noch Public-Key-Verfahren, wie z. B. RSA oder DH, in der technischen Richtlinie TR-02102-1 und gibt darüber hinaus noch die empfohlene Nutzungsdauer der jeweiligen Verfahren an.