Kryptographie

Einführung

Kryptographie bzw. Kryptografie entstammt dem Griechischen und bedeutet ursprünglich ‚verborgen‘ oder ‚geheim‘. Heute steht Kryptographie für die Wissenschaft der Verschlüsselung von Informationen und befasst sie sich allgemein mit dem Thema der Informationssicherheit.

Die Verschlüsselung hat das Ziel, den Inhalt von Nachrichten vor Unbefugten geheim zu halten. Informationen sollen vertraulich übermittelt werden. Um dies zu erreichen, wird der Originaltext (auch „Klartext“ genannt) in einen Geheimtext (auch „Chiffrat“ genannt) umgewandelt. Die Umwandlung basiert auf einem Algorithmus und einem Geheimnis (auch „Schlüssel“ genannt).

Quelle Wikipedia

Beispiel

Das Cesar-Verschlüsslungsverfahren ist einfach und unsicher; eignet sich aber die Grundlagen der Kryptographie zu veranschaulichen.

Quelle Wikipedia

Hier wird jeder Buchstabe des Klartexts durch Buchstaben eines geordneten Alphabets ersetzt. Das Ersetzen erfolgt durch einen Algorithmus (siehe Abbildung). Die Anzahl der verschobenen Zeichen entspricht dem Geheimnis der Verschlüsselung bzw. dem Schlüssel. Beispiel für eine Verschiebung um drei Zeichen:

Klar: a b c d e f g h i j k l m n o p q r s t u v w x y z

Geheim: D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

Aus dem Klartext „caesar“ wird somit der Geheimtext „FDHVDU“. Für die Entschlüsselung wird das Alphabet um dieselbe Anzahl Zeichen nach links rotiert.

Ziele

Die Kryptographie hat vier Hauptziele (Quelle: Ertel: Angewandte Kryptographie, 2.Auflage, Carl Hanser Verlag 2003, S. 18):

  1. Vertraulichkeit/Zugriffsschutz: Nur dazu berechtigte Personen sollen in der Lage sein, die Daten oder die Nachricht zu lesen oder Informationen über ihren Inhalt zu erlangen.

  2. Integrität/Änderungsschutz: Die Daten müssen nachweislich vollständig und unverändert sein.

  3. Authentizität/Fälschungsschutz: Der Urheber der Daten oder der Absender der Nachricht soll eindeutig identifizierbar sein, und seine Urheberschaft sollte nachprüfbar sein.

  4. Verbindlichkeit/Nichtabstreitbarkeit: Der Urheber der Daten oder Absender einer Nachricht soll nicht in der Lage sein, seine Urheberschaft zu bestreiten, d. h., sie sollte sich gegenüber Dritten nachweisen lassen.

Diese vier Ziele werden durch unterschiedliche kryptographische Verfahren erreicht.

Typen

Es gibt unterschiedliche Verfahren zur Verschlüsselung von Nachrichten. Diese Verfahren lassen sich wie folgt gliedern:

Klassische Kryptographie

Methoden der klassischen Kryptographie ersetzten bei der Verschlüsselung immer vollständige Buchstaben oder Buchstabengruppen. Diese Verfahren entstammen zum Teil der Antike und wurden entwickelt als noch keine Computer zur Berechnung komplexer Ver- und Entschlüsselungsalgorithmen zur Verfügung standen. Sie sind heute veraltet und unsicher.

Ein Verfahren dieser Kategorie ist die Transposition. Bei der Transposition werden die Buchstaben der Botschaft nach einem Algorithmus anders angeordnet. Beispiel: Skytale.

Bei der Substitution werden die Buchstaben der Botschaft durch jeweils einen anderen Buchstaben oder ein Symbol ersetzt. Das Substitutionsverfahren lässt sich unterteilen in monoalphabetische und polyalphabetische Chiffrierverfahren. Monoalphabetische Chiffrierverfahren sind Verfahren, bei denen ein Buchstabe (Zeichen) immer durch denselben Buchstaben (dasselbe Zeichen) chiffriert wird. Ein Beispiele dafür ist die Caesar-Verschlüsselung.

Ein polyalphabetisches Chiffrierverfahren ist ein Verfahren, bei dem ein Buchstabe (Zeichen) in der Regel mit verschiedenen Buchstaben (verschiedenen Zeichen) chiffriert wird. Ein einfaches polyalphabetisches Chiffrierverfahren wurde von Blaise de Vigenère (* 1523 ; † 1596) entwickelt. Die nach ihm benannte Vigenère-Verschlüsselung galt lange Zeit als unknackbar.

Es gibt sehr viele Arten der klassischen Kryptographie. Alle diese Verfahren basieren darauf , dass das Verfahren der Verschlüsselung geheim ist. Ist das Verfahren bekannt, kann jede Nachricht entschlüsselt werden. Mit Hilfe der Kryptonalyse kann durch statistische Analysen das Verschlüsselungsverfahren dieser klassischen Cheffrierungen relativ leicht entschlüsselt werden.

Andersverhält es sich bei der modernen Kryptographie. Hier ist Verfahren bekannt und kann aufgrund von mathematischen Gesetzmäßigkeiten nicht praktisch nicht geknackt werden. Das entschlüsseln einer Nachrich ist nur möglich, wenn die so genannten Schlüssel bekannt sind.

Moderne Kryptographie

Methoden der modernen Kryptographie arbeiten durch Computereinsatz nicht mehr mit ganzen Buchstaben, sondern mit den einzelnen Bits der Daten. Dies vergrößert die Anzahl der möglichen Transformationen erheblich und ermöglicht außerdem die Verarbeitung von Daten, die keinen Text repräsentieren. Moderne Krypto-Verfahren lassen sich in zwei Klassen einteilen (Quelle: Kersken: IT-Handbuch für Fachinformatiker, 4. Auflage Galileo Computing, 2009):

Beider Einwegverschlüsselung ist die Dechifrierung nicht vorgesehen. Mit Hilfe einer mathematischen Einwegfunktion, die komplexitätstheoretisch „leicht“ berechenbar, aber „schwer“ umzukehren ist wird eine Nachricht verschlüsselt. Direkte Anwendung einer Einwegfunktion gibt es bei Passwörtern. Diese werden häufig nicht lesbar abgespeichert, sondern durch eine Einwegfunktion verschlüsselt. Die Prüfung beim Login erfolgt dann nicht durch Vergleich des Passworts im Klartext, sondern des Chiffrats. Dadurch kann ein Administrator oder ein Unberechtigter mit Systemzugang nie die Passwörter der Benutzer lesen.

Zweiwegeverschlüsselungen sehen hingegen ein dechivieren der verschlüsselten Nachricht vor. Die symmetrische Verfahren verwenden einen geheimen Schlüssel pro Kommunikationsbeziehung und für alle Operationen (z. B. Ver- und Entschlüsselung) des Verfahrens. Asymmetrische Verfahren verwenden pro Teilnehmer einen privaten (d. h. geheimen) und einen öffentlichen Schlüssel.

Symmetrische Verschlüsselung

Unabhänig davon ob eine Verschlüsselung klassisch oder modern erfolgt, können die Verfahren der Systematik einer symmetrischen oder asymmetrischen Verschlüsselung folgen. In einem symmetrischen Verfahren haben beide Kommunikationspartner einen gemeinsamen, geheimen Schlüssel s. Mit Hilfe einer Verschlüsselungfunktion f und dem Schlüssel s wird der Klartext in Geheimtext umgewandelt. Die Entschlüsselungsfunktion f* decheffriert den Geheimtext zusammen mit dem Schlussel s. Voraussetzung ist, dass sich die Kommunikationspartner vorab über einen gemeinsamen geheimen Schlüssel verständigt haben, was eine zusätzliche Unsicherheit bedeutet.

Symmetrische Verschlüsselung (Quelle: http://www.inf-schule.de)

Bei 4 Personen A(lice), B(ob), C(lara) und D(avid), die alle miteinander kommunizieren wollen, werden so bereits 6 Schlüssel benötigt: A-B, A-C, A-D, B-C, B-D, C-D. Wenn n Personen alle miteinander kommunizieren möchten, benötigt man insgesamt (n*(n-1))/2 Schlüssel. Bei größeren Gruppen führt das leicht zu einer Schlüsselinflation. Wenn beispielsweise alle Mitglieder einer Klasse mit 30 Schülerinnen und Schülern Geheimnisse austauschen wollten, so wären hier bereits (30*29)/2 = 435 verschiedene Schlüssel erforderlich.

Asymmetrische Verschlüsselung

Bei asymmetrischen Verfahren besitzt jeder Kommunikationspartner ein Schlüsselpaar bestehend aus persönlichem und geheimen Schlüssel. Der öffentliche Schlüssel wird öffentlich bekannt gemacht, zum Beispiel in einem Schlüsselverzeichnis im Internet. Im Gegensatz zu symmetrischen Verfahren müssen bei asymmetrischen Verfahren keine geheimen Schlüssel ausgetauscht werden. Ein asymmetrisches Chiffriersystem ist also ein System zum Ver- und Entschlüsseln von Nachrichten, bei dem ein öffentlich bereitgestellter Schlüssel e (public key) zum Verschlüsseln der Funktion f und ein privater Schlüssel d (private key) zum Entschlüsseln mit der Funktion f* benutzt wird.

Asymmetrische Verschlüsselung (Quelle: http://www.inf-schule.de)

Wenn mehrere Personen verschlüsselte Nachrichten austauschen wollen, dann reicht es, wenn jede Person ein Schlüsselpaar aus öffentlichem und privatem Schlüssel besitzt.

Schlüsselaustausch (Quelle: http://www.inf-schule.de)

Bei 4 Personen A(lice), B(ob), C(lara) und D(avid), die alle miteinander kommunizieren wollen, werden somit 4 Schlüsselpaare benötigt. Bei n Personen benötigt man entsprechend genau n Schlüsselpaare. Es werden also viel weniger Schlüssel benötigt als bei symmetrischen Chiffriersystemen.

Im Allgemeinen ist die asymmetrische Verschlüsselung rund 10.000 Mal langsamer als das symmetrische Verfahren. Das liegt daran, dass bei der asymmetrischen Verschlüsselung zwei Schlüssel erzeugt und ausgetauscht werden, bei der symmetrischen Verschlüsselung dagegen nur einer. Ferner ist der Verschlüsselungs-Algorithmus insbesondere bei großen Datensätzen deutlich langsamer als der von symmetrischen Verfahren.

Hybride Verfahren


Unter Hybrider Verschlüsselung, auch Hybridverschlüsselung genannt, versteht man eine Kombination aus asymmetrischer Verschlüsselung und symmetrischer Verschlüsselung. Dabei wählt der Sender einen zufälligen symmetrischen Schlüssel, der Sitzungsschlüssel (engl. Session-Key) genannt wird. Mit diesem Session-Key werden die zu schützenden Daten symmetrisch verschlüsselt. Anschließend wird der Session-Key asymmetrisch mit dem öffentlichen Schlüssel des Empfängers verschlüsselt. Dieses Vorgehen löst das Schlüsselverteilungsproblem und erhält dabei den Geschwindigkeitsvorteil der symmetrischen Verschlüsselung.

Quelle: https://de.wikipedia.org/wiki/Hybride_Verschl%C3%BCsselung

Verschlüsseln

Wenn ein Kommunikationspartner dem jeweils anderen ein Dokument verschlüsselt zukommen lassen will, dann kann das so wie im folgenden Beispiel gezeigt ablaufen:

  • Der Absender (Alice) produziert ein Dokument. Es ist noch unverschlüsselt. Weil davon auszugehen ist, dass das Dokument sehr groß ist, wird es symmetrisch verschlüsselt: Dazu wird ein symmetrischer Session-Key generiert. Mit diesem Session-Key wird das Dokument verschlüsselt. Anschließend wird der Session-Key asymmetrisch verschlüsselt:

  • Dafür kommt der öffentliche Schlüssel des Empfängers (Bob) zum Einsatz. Das verschlüsselte Dokument und der verschlüsselte Session-Key können nun an den Empfänger (Bob) versendet werden. Die Kombination der einzelnen Verschlüsselungsverfahren lässt sich wie folgt begründen:

  • Die Nutzdaten werden symmetrisch verschlüsselt, weil dabei eine hohe Geschwindigkeit wichtig ist, die nur ein symmetrisches Verfahren bieten kann. Der Session-Key wird asymmetrisch verschlüsselt, weil er klein genug ist, so dass die extrem langsame Rechengeschwindigkeit eines asymmetrischen Verfahrens nicht ins Gewicht fällt. Aber nur ein asymmetrisches Verfahren bietet den Vorteil, dass die Schlüsselverwaltung zwischen Alice und Bob geregelt ist.

Entschlüsseln

Nachfolgend wird beispielhaft gezeigt, wie der Empfänger das erhaltene Dokument entschlüsseln kann:

  • Der Empfänger (Bob) erhält vom Absender (Alice) ein verschlüsseltes Dokument und einen verschlüsselten Session-Key.

  • Zunächst wird der Session-Key asymmetrisch entschlüsselt:

  • Dazu kommt der geheime Schlüssel des Empfängers (Bob) zum Einsatz.

  • Mit Hilfe des so erhaltenen Session-Keys wird anschließend das Dokument symmetrisch entschlüsselt.

Quelle: https://de.wikipedia.org/wiki/Hybride_Verschl%C3%BCsselung