Grundlagen Kryptographie

Der Bedarf für den Einsatz für Kryptographie kann unter dem Begriff zusammengefasst werden, eine sichere Kommunikation im Beisein nicht vertrauenswürdiger Dritter zu gewährleisten. Die Ziele der Kryptographie sind:

  1. Zu verhindern, dass Daten in unbefugte Hände geraten (Die Vertraulichkeit der Daten zu gewährleisten).
  2. Herauszufinden, ob Daten während dem Transport verändert wurden (Die Integrität der Daten zu gewährleisten).
  3. Die Quelle der Daten eindeutig zu bestimmen (Die Authentizität der Daten zu gewährleisten).
  4. Zusätzlich können sich Benutzer oder Computer mithilfe der Kryptographie authentifizieren.

Bereits im alten Ägypten sorgte die Verwendung von Hieroglyphen dafür, dass Nachrichten nur von wenigen privilegierten Personen verstanden werden konnten. Auch die alten Römer griffen auf ein kryptographisches Verfahren, welches heute unter dem Namen "Cäsar-Verschlüsselung" bekannt ist, zurück, um geheime militärische Nachrichten vor dem Zugriff unbefugter zu schützen. Im zweiten Weltkrieg gelangte die Chiffriermaschine "Enigma" zu zweifelhafter Berühmtheit, bevor sie durch die alliierten Streitkräfte bezwungen werden konnte.

Grundlagen moderner Kryptographie

In der modernen Kryptographie kommen zwei Verfahren zum Einsatz, um die zuvor genannten Ziele zu erreichen: Verschlüsselung und Signierung. Beide werden nachfolgend vorgestellt.

Digitale Verschlüsselung

Digitale Verschlüsselung sichert die Vertraulichkeit der Daten. Hierbei wird ein Klartext in Kombination mit einem mathematischen Schlüssel in eine kryptographische Funktion eingegeben, um einen Chiffretext zu erzeugen. Digitale Verschlüsselung kennt hierbei zwei Verfahren: das symmetrische und das asymmetrische.

Symmetrische Verschlüsselung

Bei der symmetrischen Verschlüsselung wird der gleiche Schlüssel für die Ver- und die Entschlüsselung verwendet. In Folge dessen muss der Schlüssel dem Kommunikationspartner im Vorfeld über einen sicheren Übertragungsweg bekanntgegeben werden, damit er die verschlüsselten Daten entschlüsseln bzw. verschlüsselte Daten versenden kann.

Asymmetrische Verschlüsselung

Bei der asymmetrischen Verschlüsselung verfügt jeder Kommunikationspartner über jeweils zwei Schlüssel (ein Schlüsselpaar), welche für die verschlüsselte Kommunikation verwendet werden. Was mit einem der beiden Schlüssel verschlüsselt wurde, kann nur mit dem jeweils anderen Schlüssel wieder entschlüsselt werden. Es wird hier unterschieden zwischen dem privaten und dem öffentlichen Schlüssel: Beide Schlüssel sind technisch identisch aufgebaut, jedoch muss der private Schlüssel von seinem Besitzer unter Verschluss gehalten werden. Der öffentliche Schlüssel wird an die Kommunikationspartner herausgegeben. Sie können dann mit diesem Schlüssel Daten verschlüsseln, welche nur durch den Inhaber des privaten Schlüssels wieder mit diesem entschlüsselt werden kann.

Hybride Verschlüsselung

Der Nachteil der asymmetrischen Verschlüsselung ist, dass sie wesentlich mehr Rechenkapazität benötigt, als die symmetrische Verschlüsselung. Der Geschwindigkeitsunterschied liegt in Abhängigkeit vom verwendeten Algorithmus zwischen 1 und 5000 im Vergleich zur symmetrischen Verschlüsselung. Aus diesem Grund werden in der modernen Kryptographie oft beide Verfahren in Kombination eingesetzt, um deren Vorteile miteinander zu verbinden. Hierbei spricht man von einem hybriden Verschlüsselungsverfahren. Die Verschlüsselung der transportierten Daten erfolgt hierbei mit einem symmetrischen Verfahren, ein asymmetrisches Verfahren wird verwendet, um den symmetrischen Schlüssel zu verschlüsseln bzw. ihn den Kommunikationspartnern bekanntzugeben (Schlüsselaustausch, engl. Key Exchange).

Digitale Signierung

Digitale Signierung sichert die Authentizität und Integrität der Daten. Dieser Vorgang erfolgt nach folgendem Schema:

  • Es wird eine mathematische Einmalfunktion (Hashalgorithmus) eingesetzt, welche eine Prüfsumme von fester Länge über die Daten erzeugt, die sich bei einer Modifikation der Daten ändern würde, und keinen Rückschluss auf die Daten ermöglicht (daher der Name "Einmalfunktion").
  • Die Prüfsumme wird mit dem privaten Schlüssel der signierenden Entität verschlüsselt. Andere Teilnehmer können die Signatur mit dessen öffentlichen Schlüssel wieder entschlüsseln.
  • Der Empfänger der Daten erstellt nun mit dem gleichen Hashverfahren eine Prüfsumme der Daten und vergleicht diese mit der den Daten beiliegenden signierten Prüfsumme. Wurde der Inhalt der Daten während dem Transport verändert, unterscheiden sich die beiden Prüfsumme. Auf diese Weise kann eine Manipulation erkannt werden.

Da der Inhaber des privaten Schlüssels dessen einziger Besitzer sein sollte, wird auf diese Weise auch derjenige eindeutig identifiziert, der die Signatur ausgestellt hat. Somit wird verhindert, dass jemand leugnen kann, er hätte die Signatur ausgestellt (Nichtabstreitbarkeit). Ein Hashverfahren erzeugt aus einem Klartext nach einem gewählten Algorithmus eine mathematische Prüfsumme (Hashwert, Fingerabdruck, (Message) Digest). Technisch ist es möglich, aber äußerst unwahrscheinlich, dass ein Hashverfahren für zwei unterschiedliche Klartexte zur gleichen Prüfsumme kommt (Kollision). Einige ältere Hashverfahren gelten mittlerweile als unsicher, da bei ihnen gezielt Kollisionen herbeigeführt werden können.

Digitale Zertifikate

Digitale Schlüssel haben einen entscheidenden Nachteil: Sie enthalten keinerlei Metainformationen (Zusatzinformationen zu einer Information) wie etwa den Besitzer oder den vorgesehen Einsatzweck des Schlüssels. Digitale Zertifikate sind entsprechende Datenstrukturen, welche dieses Problem lösen:

Sie stellen die elektronische Repräsentation einer Person, eines Computers, Netzwerkgerätes oder eines Dienstes dar und verbinden somit den entsprechenden Schlüssel mit der dazugehörigen Identität und weiteren Metainformationen. Sie werden in der Regel von einer Zertifizierungsstelle (engl. Certification Authority, CA) signiert.

Digitale Zertifikate basieren auf der asymmetrischen Kryptographie und enthalten daher einen öffentlichen Schlüssel. Durch die (mit deren privatem Schlüssel verschlüsselte) Signatur der Zertifizierungsstelle wird das Zertifikat vor Änderungen geschützt. Würde man ein Detail des Zertifikats verändern, würde sich die Signatur verändern und damit letztendlich auch das Zertifikat selbst seinen Vertrauensstatus verlieren.

Bevor die Zertifizierungsstelle ein Zertifikat signiert, muss die Identität des Antragstellers überprüft und bestätigt werden, was direkt (persönliches Vorsprechen des Antragstellers) oder indirekt (z.B. Eingabe einer Benutzerkennung samt Passwort), oder delegiert an einen vertrauenswürdigen Dritten (eine Registrierungsstelle, engl. Registration Authority, RA) erfolgen kann.

Solche Details unterscheiden sich von Zertifizierungsstelle zu Zertifizierungsstelle und sind im Optimalfall in rechtlich verbindlichen sowie für Benutzer der Zertifizierungsstellen einsehbaren Dokumenten (engl. "Certificate Policy", CP und "Certificate Practice Statement", CPS) geregelt.

Weiterführende Links:

de_DEDeutsch