Kryptologie
KRYPTOLOGIE Die Kryptologie beschäftigt sich mit dem Verschlüsseln von Nachrichten. Sie zerfällt in zwei Gebiete: die Kryptographie, die sich mit dem Erstellen von Verschlüsselungsverfahren beschäftigt, und in die Kryptoanalyse, deren Aufgabe es ist, die von der Kryptographie gelieferten Verfahren zu unterlaufen, also den Code zu knacken. Doch wozu sollte überhaupt jemand Nachrichten verschlüsseln wollen?
Angriffe auf die Datensicherheit bei der Übertragung von Nachrichten:
Man unterscheidet aktive und passive Angriffe. Bei aktiven Angriffen bewirkt eine unberechtigte Person C, daß der Empfänger B die von A gesendete Nachricht nicht in ihrem Originalzustand bzw. gar nicht erhält. Von einem passiven Angriff spricht man, wenn B zwar die unveränderte Nachricht erhält, C sich aber Informationen über die Nachricht verschafft.
Passive Angriffe sind beispielsweise das unberechtigte Lesen von Nachrichten, aber auch das bloße Überwachen einer Leitung und die Analyse der Häufigkeit, mit der Nachrichten ausgetauscht werden. Passive Angriffe sind sehr schwer zu bemerken, weil ja an der Nachricht selbst keine Veränderung stattfindet.
Aktive Angriffe sind das Verändern von Nachrichten, sei es inhaltlich oder auch ihrer Reihenfolge, das Senden von Nachrichten unter Angabe einer falschen Identität und auch die Unterbrechung des Nachrichtenverkehrs zwischen Sender und Empfänger.
Siehe dazu auch die nebenstehende Abbildungen.
Beispiele:
A telefoniert mit B. C hört mit.
--passiver Angriff
A sendet B eine Nachricht, in der ein Treffpunkt vereinbart wird. C fängt die Nachricht ab und verändert die angegebene Uhrzeit.--aktiver Angriff
A schreibt B einen Brief. C fängt ihn ab und gibt ihn nicht weiter.--aktiver Angriff
C bringt in Erfahrung, daß B von A Post bekommt. Daraus schließt C, daß A und B zusammenarbeiten.
--passiver Angriff.
Um solche Angriffe abzuwehren, werden Nachrichten verschlüsselt. Mit dieser Methode kann verhindert werden, daß ein Unberechtigter eine Nachricht liest, die nicht für ihn bestimmt ist. Allerdings kann nicht verhindert werden, daß der Unberechtigte sich weiter über die Häufigkeit des Nachrichtenverkehrs informiert oder die Verbindung unterbricht.
Gute kryptographische Algorithmen ermöglichen nicht nur die Geheimhaltung des Inhalts einer Nachricht, sie geben dem (rechtmäßigen) Empfänger auch die Möglichkeit zu prüfen, ob die Nachricht auch wirklich von dem kommt, der als Sender in der Nachricht aufscheint.
Ein Verschlüsselungsverfahren besteht aus zwei Teilen: einem Algorithmus und einem Schlüssel.
Allgemein wird von einem Verschlüsselungsverfahren verlangt, daß es nicht nötig ist, den Algorithmus geheimzuhalten, sondern daß die Geheimhaltung des Schlüssels genügt. Denn nur wenn der verwendete Algorithmus bekannt ist, kann der Anwender abschätzen, wie sicher das Verfahren ist, und ob diese Sicherheit seinen Ansprüchen genügt.
Klassische Verschlüsselungsverfahren
Ersetzungsverfahren: Dabei wird jeder Buchstabe der Nachricht durch einen anderen ersetzt. Als Erfinder des Verfahrens gilt Julius Cäsar, der diese Methode verwendete, um militärische Nachrichten für den Feind unverständlich weiterzugeben. Vor- und Nachteile dieser Verfahrensgruppe sehen wir uns bei den beigefügten Beispielen an.
Transpositionsverfahren: Die Buchstaben der Nachricht werden vertauscht.
Oft werden Ersetzungsverfahren und Transpositionsverfahren kombiniert angewendet.
Moderne Verschlüsselungsverfahren
Die wichtigsten sind DES (Data Encryption Standard) und RSA (Rivest, Shamir, Adleman; die Erfinder des Algorithmus; eigentlich wollten sie zeigen, daß so etwas nicht möglich ist). Beide Verfahren sind zu kompliziert, um sie mit Schülern zu besprechen (einzelne Talente ausgenommen). Es sei nur soviel gesagt: DES verwendet einen 56 Bit langen Schlüssel, das Verfahren ist also „von Hand“ nur schwer nachvollziehbar. RSA beruht darauf, zwei möglichst große Primzahlen und ihr Produkt zu verwenden. Das Verfahren selbst verwendet einige nicht triviale Ergebnisse der Zahlentheorie und ist daher für Schüler nicht unbedingt geeignet.
(Die Idee mit den Primzahlen ist allerdings auch einer fünften Klasse klarzumachen, wenn man sich Zeit nimmt.)
Symmetrische Verfahren
Symmetrische Verfahren verwenden zur Ver- und Entschlüsselung den selben Schlüssel. Ersetzungsverfahren sind, wie wir noch sehen werden, symmetrisch. Dadurch entsteht der Nachteil, daß irgendwann der Schlüssel zwischen Sender und Empfänger ausgetauscht werden muß. Dieser Schlüsseltausch bietet eine gute Möglichkeit für einen Angriff.
Die obigen Graphiken geben vereinfacht die Abläufe in einem herkömmlichen Kryptosystem wieder.
Asymmetrische Verfahren
Hier wird für die Entschlüsselung ein anderer Schlüssel verwendet als für das Verschlüsseln. Bei solchen Verfahren kann man sich sogar erlauben, einen der beiden Schlüssel zu veröffentlichen. Das RSA-Verfahren ist asymmetrisch.
Beispiele:Die Cäsar-Chiffre:
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
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
Beim Verschlüsseln wird jeder Buchstabe des Alphabets durch den Buchstaben ersetzt, der in der Tabelle unter ihm steht. Beim Entschlüsseln verfährt man umgekehrt.
unchiffriert
v
e
r
l
a
s
s
e
r
o
m
chiffriert
y
h
u
o
d
v
v
h
u
r
p
Ein Nachteil dieses Verfahrens liegt darin, daß es nur 25 mögliche Schlüssel gibt.
Es kann einem Angriff durch bloßes Probieren (brute force Analyse) nicht lange widerstehen.
Monoalphabetische Chiffre
Funktioniert wie die Cäsar-Chiffre, allerdings bleibt die Reihenfolge der Buchstaben in der unteren Tabellenzeile nicht erhalten, man vertauscht also willkürlich. Auch dieses Verfahren bietet nicht viel Sicherheit, weil die Häufigkeit der Buchstaben als Anhaltspunkt verwendet werden kann, falls die Sprache, in der die Nachricht verfaßt ist, bekannt ist.
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
Q
W
E
R
T
Z
U
I
O
P
M
N
B
V
C
X
L
K
J
H
G
A
S
D
F
Y
unchiffriert
v
e
r
l
a
s
s
e
r
o
m
chiffriert
a
t
k
n
q
j
j
t
k
c
b
Playfair-Chiffre:
Man benötigt ein Schlüsselwort. Beispielsweise: MONARCHY
Mit Hilfe dieses Schlüsselwortes erstellt man untenstehende Tabelle:
M
O
N
A
R
C
H
Y
B
D
E
F
G
I/J
K
L
P
Q
S
T
U
V
W
X
Z
Für das Verschlüsseln gelten folgende Regeln:
1) Die Buchstaben des Ausgangstextes werden in Zweiergruppen eingeteilt. Doppelte Buchstaben werden durch einen Füllbuchstaben getrennt, falls sie in die gleiche Gruppe fallen würden.
Beispiel: AF FE --kein Füllbuchstabe nötig. BA LL -- nicht erlaubt-- BA LX L_. Das _ muß aufgefüllt werden falls kein weiterer Text folgt.
2) Falls die Buchstaben einer Gruppe in der gleichen Zeile der Tabelle stehen, werden sie durch ihren rechten Nachbarn ersetzt. Das erste Element der Zeile gilt als Nachfolger des letzten. AR wird zu RM.
3) Falls die Buchstaben einer Gruppe in der gleichen Spalte stehen, werden sie durch den Buchstaben unter ihnen ersetzt. TZ wird zu ZR.
4) In jedem anderen Fall wird jeder Buchstabe durch jenen ersetzt, der in derselben Zeile steht, aber in der Spalte des anderen Buchstaben der Gruppe. FT wird zu KP.
unchiffriert
v
e
r
l
a
s
s
e
r
o
m
x
chiffriert
u
f
m
t
b
x
l
i
m
n
a
u
Hier war es nötig einen Füllbuchstaben am Ende zu verwenden, weil das Verfahren nur mit einer geraden Anzahl von Buchstaben arbeitet.
Dieses Verfahren hat den besonderen Vorteil, daß die Buchstabenhäufigkeit nicht erhalten bleibt und damit keinen Hinweis für einen Angreifer bieten kann.
z.B. s wird einmal zu x und einmal zu l.
Die Vigenére Tabelle
Bei diesem Verfahren werden mehrere Cäsar-Chiffre kombiniert. Man benötigt einen Schlüssel, der genauso lang ist wie die Nachricht. Der Schlüssel wird willkürlich gewählt und sollte nur dem Sender und dem Empfänger bekannt sein.
Will man nun mit dem Schlüsselbuchstaben F den Nachrichtbuchstaben W verschlüsseln, so sieht man in der Tabelle in Zeile F, Spalte W nach. Der chiffrierte Buchstabe lautet also B.
Schlüssel
g
a
l
l
i
a
g
a
l
l
i
unchiffriert
v
e
r
l
a
s
s
e
r
o
m
chiffriert
b
e
c
w
i
s
y
e
c
z
u
Oft wird statt eines Schlüssels, der so lang ist wie die Nachricht, ein Schlüsselwort wiederholt. (Beispiel)
Es wird aber auch die Nachricht selbst als Schlüssel eingesetzt:
Schlüssel
j
u
l
i
a
v
e
r
l
a
s
unchiffriert
v
e
r
l
a
s
s
e
r
o
m
chiffriert
e
z
c
t
a
n
w
v
c
o
e
Auch dieses Verfahren ändert die Buchstabenhäufigkeit und nimmt so einem eventuellen Angreifer einen Anhaltspunkt.
Nebenstehende Abbildung zeigt, wie sich die Buchstabenhäufigkeit mit verschiedenen Verfahren ändert. Ein Verfahren, das die Häufigkeiten der Buchstaben vollständig angleicht, heißt „Polyalphabetic Chiffre“.
Ein solcher Code wäre absolut unknackbar, weil der Angreifer überhaupt keinen Anhaltspunkt hätte. Man sieht, daß die Vigenére-Chiffre diesem Idealzustand relativ nahekommt. In der Graphik ist die Häufigkeit des am öftesten vorkommenden Buchstaben gleich 100% gesetzt. Das Diagramm bezieht sich auf die englische Sprache.
Umzäunungstechnik
Hierbei handelt es sich um ein Transpositionsverfahren. Der zu chiffrierende Text wird zeilenweise in eine Tabelle eingetragen.
Den chiffrierten Text erhält man, wenn man der Reihe nach die Spalten aufschreibt.
Unchiffriert: Attacke von Norden im Morgengrauen
Tabelle:
a
t
t
a
c
k
e
v
o
n
n
o
r
d
e
n
i
m
m
o
r
g
e
n
g
r
a
u
e
n
Chiffriert: aermgtvdortoeraanngucnieekomnn
Um den Text zu entschlüsseln, muß man wissen, wie viele Zeilen die Tabelle hat (man sagt: mit welcher Tiefe die Umzäunung durchgeführt wurde). Da gilt: empfiehlt es sich, nicht gerade zwei Primzahlen als Zeilen- und Spaltenzahl zu verwenden. Falls es sich mit der Buchstabenzahl der Nachricht nicht ausgeht, kann man wieder Füllbuchstaben benutzen. Um die Sicherheit zu erhöhen, werden die Spalten zuweilen auch in einer anderen Reihenfolge aufgeschrieben.
Einen Hinweis für einen Angreifer bietet im obigen Beispiel das „c“.
Es braucht als Partner mit hoher Wahrscheinlichkeit ein „h“ oder „k“. Im obigen Text kommt nur ein „k“ vor, das 5 Zeichen hinter dem „c“ steht. Man kann also davon ausgehen, daß die Tiefe 5 betrug. Um solche Hinweise zu vermeiden, wird die Umzäunungstechnik meist mit einer Ersetzungstechnik kombiniert.
Rotormaschinen
Rotormaschinen sind historisch interessant. Sie wurden im 2.
Weltkrieg von den Deutschen und Japanern eingesetzt. Das Knacken dieser Codes durch die Alliierten war ein bedeutender Faktor für den Ausgang des Krieges. Rotormaschinen arbeiten mit unabhängig voneinander drehbaren Zylindern. Jeder Zylinder kann als monoalphabetische Ersetzung interpretiert werden. Nach jedem Zeichen dreht sich der schnellste Rotor weiter, nach einer Umdrehung dieses Rotors dreht sich der nächstlangsamere um ein Zeichen weiter und so fort. Dadurch wird für jeden Buchstaben der Nachricht ein anderes Ersetzungsalphabet verwendet.
Bei drei Zylindern wird ein einmal verwendetes Alphabet erst nach Zeichen wieder benutzt. Eine Verwendung von mehr Zylindern stellt entsprechend mehr Alphabete zur Verfügung. Der DES arbeitet nach einem ähnlichen System.
Die bis hierher besprochenen Verfahren kann man ganz gut auch mit Schülern einer 5. Klasse besprechen.
Die Idee der Public-Key-Codes
Public-Key-Codes sind asymmetrisch.
Das heißt, daß ein anderer Schlüssel zum Entschlüsseln als zum Verschlüsseln benötigt wird. In einem Public Key System besitzt nun jeder Teilnehmer einen eigenen Schlüssel. Den Entschlüssler hält der Teilnehmer geheim (Secret Key), den Verschlüssler veröffentlicht er (Public Key). Will nun A an B eine Nachricht schicken, so wird folgendermaßen verfahren: A wendet seinen Secret Key auf die Nachricht an und auf den so veränderten Text den Public Key von B. Das Ergebnis schickt er an B. B wendet auf die Nachricht seinen Secret Key an (und erhält das Zwischenergebnis, das A beim Verschlüsseln hatte).
Auf den so erhaltenen Text wendet er den Public Key von A an und erhält so die ursprüngliche Nachricht. Mit diesem Verfahren wurde nicht nur die Nachricht geheim gehalten, sondern B hat jetzt auch die Gewißheit, daß die Nachricht auch wirklich von A stammt. Denn hätte der Absender nicht den Secret Key von A besessen, hätte B die Nachricht nicht entschlüsseln können (B hat ja den Public Key von A verwendet).
Das RSA-Verfahren ist ein Public Key Verfahren.
Die Idee der Hash-Verfahren
Bei diesen Verfahren wird aus der Nachricht eine Kontrollsequenz errechnet. Der Sender A rechnet die Sequenz aus und schickt sie mit der Nachricht an B.
B rechnet die Sequenz der Nachricht aus, die er erhalten hat und vergleicht, ob sie mit der von A gesendeten übereinstimmt. Veränderungen der Nachricht durch einen Gegner können so bemerkt werden.
Anmerkungen: |
| impressum | datenschutz
© Copyright Artikelpedia.com