Kryptologie

Interaktive Mathebücher zum Üben & Testen

Die interaktiven Mathebücher von bettermaks gibt es für die Klassenstufen 4 bis 10. bettermarks bietet über 100.000 Aufgaben mit ausführlichen Erklärungen und Lösungswegen.

Kostenlos registrieren Einloggen

Die Kryptologie ist die Wissenschaft von den Ver- und Entschlüsselungsverfahren, wobei die Lehre von Verschlüsselungsverfahren auch als Kryptographie bezeichnet wird. Die Sicherung von zu übermittelnden Botschaften (Informationen) ist zu allen Zeiten betrieben worden, sei es durch Verwendung von Geheimsprachen oder durch Verschlüsselung. Bis weit ins 20. Jahrhundert betraf dies vorwiegend militärische Geheimnisse, seitdem aber auch Daten und Sprache, die zwischen Unternehmen oder zwischen Privatpersonen über das Internet ausgetauscht werden und vor dem unbefugten Zugriff durch Dritte geschützt werden sollen.

Die einfachste Form der Verschlüsselung (man spricht auch von Chiffrierung oder Codierung) ist die Cäsar-Verschlüsselung, bei der die Buchstaben eines Texts um eine feste Anzahl von Buchstaben im Alphabet verschoben werden. Bei einer Verschiebung um 5 Buchstaben wird so aus „Haus“ das Wort „MFZX“, wobei man auf die Groß- und Kleinschreibung verzichtet. Dieser Code ist allerdings leicht zu knacken, wenn man um die Häufigkeitsverteilung der Buchstaben in den Wörtern einer Sprache weiß. Im Deutschen kommt „E“ am häufigsten vor, ist also im verschlüsselten Text leicht zu identifizieren. Indem man die Verschiebung rückgängig macht, wird der Text sofort entschlüsselt (dechiffriert oder decodiert). Schon komplizierter und damit nicht so leicht zu dechiffrieren ist die polyalphabetische Verschlüsselung. Auch dabei werden Buchstaben durch andere ersetzt, aber nicht gleichmäßig, sondern in Anhängigkeit von einem Schlüsselwort.

Beispiel: Ist das geheime Schlüsselwort „bettermarks“ so wird beim zu verschlüsselnden Text der erste Buchstabe um 1 Buchstaben verschoben, der zweite um 4, der dritte und vierte um 19 Buchstaben usw., Leerzeichen werden ignoriert.

Der verschlüsselte Text lautet: cimmcdmcydvjgaymkundklii

Wie lautet der unverschlüsselte Text?[1]

Solche Verschlüsselungsverfahren können beliebig kompliziert sein, haben aber immer den Nachteil, dass der Sender und der Empfänger im Besitz des verwendeten Schlüssels sein müssen. Wie man in den Besitz des Schlüssels kommen kann, zeigt die Geschichte um die „Enigma“, eine Chiffriermaschine, die im Zweiten Weltkrieg verwendet wurde. Heute verwendet man (bei Chipkarten, bei Daten- und Sprachverschlüsselung im Internet) meist die Public-Key-Verschlüsselung.

Die bekannteste, das RSA-Verfahren wurde 1977 von Ron Rivest, Adi Shamir und Leonard Adleman entwickelt und beruht auf der Tatsache, dass die Zerlegung sehr großer Zahlen mit genau zwei großen Primfaktoren (100 Stellen und mehr) in ihre beiden Primfaktoren auch unter Computereinsatz in kurzer Zeit nicht möglich ist.

Soll eine Nachricht versandt werden, so kann sie mit einem öffentlichen, also von jedermann einsehbaren Schlüssel codiert werden. Da nur der Empfänger den Schlüssel kennt, kann auch nur er die Nachricht decodieren.

Das RSA-Verfahren funktioniert wie folgt: Es gibt einen öffentlichen Schlüssel (e, N) und einen privaten Schlüssel (d, N) mit einer Zahl N, die das Produkt zweier verschiedener Primzahlen p und q ist. Die Zahl N ist der RSA-Modul, e der Verschlüsselungsexponent und d der Entschlüsselungsexponent. Für die Eulersche φ-Funktion (->Arithmetik-Zahlentheorie) von N gilt dann: . Als Beispiel seien hier p = 11 und q = 13 gewählt.
Dann ist φ(N) = pq = 143 und φ(N) = 10∙12 = 120.

Als Verschlüsselungsexponent e mit 1 < e <φ(N) und ggT(e, φ(N)) = 1 wird der einfache Wert e = 7 gewählt. Mit dem euklidischen Algorithmus lassen sich natürliche Zahlen d und k bestimmen, so dass:

\(e\cdot d +\varphi (N) \cdot k=1, \text{ d.h. } 7d + 120k = 1.\)

Im vorliegenden Fall ist d = 103 und k = -6.
Die Zahl d = 103 ist dann der private Schlüssel, während k nicht weiter von Bedeutung ist.
Man kann jetzt Zahlen verschlüsseln. Zum Verschlüsseln von Text müssen die Buchstaben und Sonderzeichen zuvor in Zahlen umgewandelt werden. Dazu verwendet man die Zuordnung „Zeichen“ -> „Zeichencode“, wobei der Zeichencode als Dezimalzahl im ASCII-Standard angegeben wird.
Ist etwa das Wort „bettermarks“ zu verschlüsseln, ermittelt man in der ASCII-Tabelle dafür die Zeichencode-Folge

98-101-116-116-101-114-109-97-114-107-115.

Man setzt diese Werte nacheinander an Stelle von K in \(C=K^e\) (mod N) ein und erhält die Folge:

32-62-129-129-62-49-21-59-49-68-80

Also wird die Zahl 98 und damit der Buchstabe b mit der Zahl 32 verschlüsselt usw.
Zum Entschlüsseln beachtet man, dass nach dem Satz von Euler (->Arithmetik-Zahlentheorie):

\(K = K^{e\cdot d+ \varphi (N)\cdot k} \equiv C^d \text{(mod N)}\)

gilt, falls K und N teilerfremd sind, und man kann mit etwas Mehraufwand sogar zeigen, dass dies auch für nicht teilerfremde K und N richtig bleibt.

Wer d kennt, kann also die Werte für K zurück berechnen.


[1] Unverschlüsselter Text: betty macht dich fit in mathe