Kapitel 4 Kryptographie

Werbung
Kapitel 4
Kryptographie
Inhalt
4.1 Was ist Kryptographie?
4.2 Monoalphabetische Verfahren: Cäsar, ...
4.3 Polyalphabetische Verfahren: Vignère, ...
4.4 Modernste Kryptographie: Das Problem des Schlüssels
Kapitel 4
© Beutelspacher
November 2004
Seite 2
4.1 Kryptologie = Kryptographie
• Geheimhaltung: Garantie, dass eine Nachricht
von nicht autorisierten Personen nicht gelesen werden kann.
• Authentifikation: Garantie, dass eine Nachricht
von nicht autorisierten Personen nicht verändert werden kann.
Kapitel 4
© Beutelspacher
November 2004
Seite 3
Kryptologie bietet Sicherheit
• Verschlüsselung
diplomatischer Dienst, Militär, Mobilfunk, Pay-TV, ...
• Authentifikation von Daten
e-commerce, Homebanking, electronic cash, Computerviren, ...
• Authentifikation von Personen
Geldautomat, Rechnerzugang, Telefonkarten, Wegfahrsperre bei
Kfzs, ...
Kapitel 4
© Beutelspacher
November 2004
Seite 4
Sicherheit ja ! Aber wozu Kryptologie?
Kryptologie bietet Verfahren,
die (im Prinzip) beweisbar sicher sind.
Kryptologische Mechanismen
können (im Prinzip)
beliebig sicher gemacht werden.
Kapitel 4
© Beutelspacher
November 2004
Seite 5
Der Angreifer
Kann man verhindern, dass ein Angreifer die Nachricht versteht?
Kapitel 4
© Beutelspacher
November 2004
Seite 6
Drei Geheimtexte
Dodasos isostot unonkoknonackokbobaror
URJZJKLEBERTASRI
TXN PUTGQWMSLODBP
Kapitel 4
© Beutelspacher
November 2004
Seite 7
Geschichte
Antike: die spartanische Skytala, der Cäsar-Code
Mittelalter: Leon Battista Alberti, Trithemius, Vigenère
Das Zeitalter der Chiffriermaschinen: Wheatstone, Jefferson,
Kasiski, Friedman, Scherbius, Hagelin, ...
Die mathematische Ära: Shannon, Diffie, Hellman, Shamir
Kapitel 4
© Beutelspacher
November 2004
Seite 8
4.2 Die Cäsar-Verschlüsselung
Man schreibt das normale Alphabet (Klartextalphabet = KT) auf und
darunter nochmals das normale Alphabet (Geheimtextalphabet = GT),
aber um einige Stellen verschoben.
Beispiel:
KT:
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
GT:
W X Y Z A B C D E F G H I J K L M N O P Q R S T U V
Verschlüsselung: Ein Klartextbuchstabe wird durch den darunterstehenden Geheimtextbuchstaben ersetzt.
Beispiel: Aus MATHE wird IWPDA.
Kapitel 4
© Beutelspacher
November 2004
Seite 9
Cäsar-Scheiben
Etwa um 1500 wurden “Verschlüsselungsmaschinen” erfunden, z.B. die
Cäsar-Scheiben:
Zwei runde Scheiben sind in ihrem
Mittelpunkt drehbar gegeneinander
befestigt. Auf jeder der Scheiben ist
das Alphabet in normaler Reihenfolge
zu sehen.
Verschlüsselt wird, indem von außen nach innen gelesen wird.
Entschlüsselt wird, indem man von innen nach außen liest.
Kapitel 4
© Beutelspacher
November 2004
Seite 10
Verschlüsselungsschema
Klartext:
Lieber Herr ...
wird
verschlüsselt
Geheimtext:
XYRTRE WREE...
wird
entschlüsselt
Klartext:
Lieber Herr ...
Sender und Empfänger brauchen einen geheimen Schlüssel.
Kapitel 4
© Beutelspacher
November 2004
Seite 11
Der Angreifer will den Geheimtext ohne Schlüssel entschlüsseln!
Mechanismus “Verschlüsselung”
Menge
Schlüs
von
seln
K
K
Menge von
Nachrichten
m
c
m
Geheimtext
Klartext
Verschlüsselung
c = fK(m)
Klartext
Entschlüsselung
m = fK-1(c)
Der Schlüssel K ist das gemeinsame Geheimnis
von Sender und Empfänger.
Kapitel 4
© Beutelspacher
November 2004
Seite 13
Kryptoanalyse der Cäsar-Verschlüsselung
• Ausprobieren aller Möglichkeiten
Da nur 26 Schlüssel zu testen sind, ist dies möglich.
• Statistische Analyse
Im Deutschen ist E der mit Abstand häufigste Buchstabe (ca. 20%).
Zähle die Buchstaben im Geheimtext.
Der häufigste entspricht dem Klartext-E.
Damit liegt der Schlüssel fest, und man kann entschlüsseln.
Kapitel 4
© Beutelspacher
November 2004
Seite 14
Cäsar knacken
UR J Z J K L EBERT ASR I
VSKAK LMFCF SUB T S J
WT L B L MNGDG T V C U T K
X U M C M N O J E H UWD V U L
Y V N D N O P I F I V X EWV M
Z WO E O P Q J G J W Y F X W N
A X P F PQRKHK X ZGY XO
B Y QGQR S L I L Y A H Z Y P
CZRHRS TMJMZ B I A ZQ
DAS I S TUNKNACKBAR
EB T J TUVOLOBD L CBS
F CU K U V W P M P C E M D C T
G DV L VW X Q N Q D F N E D U
Kapitel 4
H EWMW X Y R O R E G N F E V
I F X N X Y T S P S F HOG FW
J G Y O Y Z A T Q T G I P ‘HG X
KHZ P Z ABURUH J Q I HY
L I AQABCVSV I KR J I Z
M J B R B C DW T W J L S K J A
N KC SCD E XU X KMT L K B
O L D T D E F Y V Y L N UM L C
P M E U E F G ZW Z MO V NMD
Q N F V F G H A X A N P WO N E
R O GWG H I B Y B O Q X P O F
SPHXH I J C ZCPRYQPG
TQ I Y I J KD ADQS Z RQH
© Beutelspacher
November 2004
Seite 15
Kardinal, Pastor und Admiral, als Führungstrio null und
nichtig und darum völlig abhängig vom Ami-Trust, tat durch
Radionachricht und Anschlag kund, dass Nahrungsnot und
damit Tod aufs Volk zukommt. Zunächst tat man das als
Falschinformation ab. Das ist Propagandagift, sagt man. Doch
bald schon ward spürbar, was man ursprünglich nicht glaubt.
Das Volk griff zum Stock, zum Dolch. “Gib uns das täglich
Brot”, hallts durch Land und “pfui auf das Patronat, auf
Ordnung, Macht und Staat.” ...
(Georges Perec, Anton Voyls Fortgang. Zweitausendeins 1986.)
Kapitel 4
© Beutelspacher
November 2004
Seite 16
Monoalphabetische Verschlüsselungen
Ein Verschlüsselungsalgorithmus heisst monoalphabetisch (griech:
nur ein Alphabet), falls jeder Klartextbuchstabe immer in den gleichen
Geheimtextbuchstaben verschlüsselt wird.
Unter das Klartextalphabet schreibt man ein beliebig durcheinandergewürfeltes Geheimtextalphabet.
Beispiel:
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
F G W E V H D I C U A J T B S Q R K Z L M Y N O P X
Verschlüsselung: Von oben nach unten, aus MATHE wird TFLIV.
Kapitel 4
© Beutelspacher
November 2004
Seite 17
Schlüsselwort-Chiffrierung
Unter das Klartextalphabet schreibt man das Geheimtextalphabet;
dieses wird wie folgt gebildet:
Sender und Empfänger wählen ein Wort (Beispiel: MATHEMATIK).
Dieses bildet den Anfang des Geheimtextalphabets (wobei doppelt
auftretende Buchstaben beim zweiten Mal usw. entfallen). Dann
werden die restlichen Buchstaben des Alphabets aufgefüllt:
Beispiel:
KT:
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
GT:
M A T H E I K B C D F G J L N O P Q R S U V W X Y Z
Kapitel 4
© Beutelspacher
November 2004
Seite 18
Wie sicher sind monoalphabetische Verschlüsselungen?
Es gibt genau 26! Permutationen, also 26! Möglichkeiten für ein
Geheimtextalphabet. Da
26! = 403 291 461 126 605 635 584 000 000
ist, gibt es eine riesige Zahl von Schlüsseln.
Trotzdem haben monoalphabetischen Verschlüsselungen Nachteile:
1. Der Schlüssel ist die Folge der 26 Buchstaben des Geheimtextalphabets. Eine solche Folge ist schwer zu merken.
2. Sie sind relativ leicht zu knacken (trotz der großen Schlüsselzahl).‘
Statistische Analyse: Der Angreifer entschlüsselt die häufigsten
Buchstaben (E, N, ...) und rät die restlichen.
Kapitel 4
© Beutelspacher
November 2004
Seite 19
4.3 Polyalphabetische Verschlüsselungen
• Man müsste ...
so verschlüsseln können,
... dass die Häufigkeiten der Buchstaben vertuscht werden.
• Also müsste man ...
so verschlüsseln,
... dass sich das Geheimtextalphabet von Buchstabe zu
Buchstabe ändert.
• Aber da alles müsste so gehen, ...
dass der Empfänger des Geheimtexts
diesen wieder entschlüsseln kann.
Kapitel 4
© Beutelspacher
November 2004
Seite 20
Polyalphabetische Verschlüsselungen
Idee der polyalphabetischen Verschlüsselung:
Verwende bei jedem Buchstaben ein neues Alphabet! D.h.: Verwende
einen Cäsar-Code, aber wechsle nach jedem Buchstaben die
Einstellung der Scheiben.
Diese Idee entstand um 1500 und wurde u.a. von Alberti, Porta,
Trithemius und Vigenère weiterentwickelt.
Kapitel 4
© Beutelspacher
November 2004
Seite 21
Algorithmus und Schlüssel
Der Algorithmus ist die allgemeine Vorschrift, wie man ver- und
entschlüsselt. Der Algorithmus ist i.a. öffentlich bekannt (auch dem
Angreifer).
Beispiel: Beim Cäsar-Code repräsentieren die Cäsar-Scheiben den
Algorithmus.
Der Schlüssel gibt die konkrete Verschlüsselungsvorschrift an. Der
Schlüssel ist das exklusive Geheimnis von Sender und Empfänger.
Beispiel: Beim Cäsar-Code ist der Schlüssel die Einstellung der
Scheiben (oder der Buchstabe, in den A verschlüsselt wird, oder der
Buchstabe, in den E verschlüsselt wird, oder ...).
Kapitel 4
© Beutelspacher
November 2004
Seite 22
Vigenère-Quadrat
ABCDEFGHIJKLMNOPQRSTUVWXYZ
BCDEFGHIJKLMNOPQRSTUVWXYZA
CD EFGHIJKLMNOPQRSTUVW XYZAB
DEFGHIJKLMNOPQRSTUVWXYZABC
EFGHIJKLMNOPQRSTUVWXYZABCD
FGHIJKLMNOPQRSTUVWXYZABCDE
GHIJKLMNOPQRSTUVWXYZABCDEF
HIJKLMNOPQRSTUVWXYZABCDEFG
IJKLMNOPQRSTUVWXYZABCDEFGH
JKLMNOPQRSTUVW XYZABCDEFGHI
KLMNOPQRSTUVWXYZABCDEFGHIJ
LMNOPQRSTUVWXYZABCDEFGHIJK
MNOPQRSTUVW XYZABCDEFGHIJKL
NOPQRSTUVW XYZABCDEFGHIJKLM
OPQRSTUVWXYZABCDEFGHIJKLMN
PQRSTUVW XYZABCDEFGHIJKLMNO
QRSTUVW XYZABCDEFGHIJKLMNOP
RSTUVWXYZABCDEFGHIJKLMNOPQ
STUVW XYZABCDEFGHIJKLMNOPQR
TUVW XYZABCDEFGHIJKLMNOPQRS
UVW XYZABCDEFGHIJKLMNOPQRST
VWXYZABCDEFGHIJKLMNOPQRSTU
WXYZABCDEFGHIJKLMNOPQRSTUV
XYZABCDEFGHIJKLMNOPQRSTUVW
YZABCDEFGHIJKLMNOPQRSTUVWX
ZABCDEFGHIJKLMNOPQRSTUVW XY
Kapitel 4
© Beutelspacher
November 2004
Seite 23
Vigenère-Verschlüsselung
Schlüsselwort:
MA T H EMA T H EMA T H EM
Klartext:
DA S I S T UN KN AC KB AR
Geheimtext:
P A L PWF UGRRMC D I E Y
Anders ausgedrückt:
Jeder Buchstabe wird in eine Zahl übersetzt: A = 0, B = 1, ..., Z = 25.
Dann wird Klartext- und Schlüsselbuchstabe modulo 26 addiert.
Das Ergebnis ist der Geheimtextbuchstabe.
Kapitel 4
© Beutelspacher
November 2004
Seite 24
Rotormaschinen
• Idee: Durch Kopplung verschiedener „Rotoren“ entsteht ein
guter Algorithmus
• Komplexe Permutationen (Enigma)
• Große Periode (M-209)
Kapitel 4
© Beutelspacher
November 2004
Seite 25
Die Enigma
Die deutsche Wehrmacht benutzt im 2. Weltkrieg
die Chiffriermaschine Enigma (griech.: Rätsel).
Funktionsweise:
Nach einem Tastendruck fließt Strom durch eine
komplizierte Verdrahtung mehrerer gekoppelter
Rotoren und ein Lämpchen zeigt den Geheimtextbuchstaben an. Die Rotoren drehen sich bei
jedem Anschlag um eine Einheit weiter.
Kapitel 4
© Beutelspacher
November 2004
Seite 26
Besser = unknackbar?
• Der Vigenère-Code wurde 350 Jahre lang nicht geknackt.
• Kann man den Code noch sicherer machen?
• Man muss das Schlüsselwort so lang wie möglich machen und
die Buchstaben zufällig wählen.
So erhält man einen unknackbare Code!
Kapitel 4
© Beutelspacher
November 2004
Seite 27
Erfolg des Vigenère-Verfahrens
Im allgemeinen werden gleiche Klartextbuchstaben in verschiedene
Geheimtextbuchstaben verschlüsselt. Daher sind die Häufigkeiten der
Buchstaben des Geheimtexts sehr ausgeglichen.
Also kann man mit einer herkömmlichen statistischen Analyse (die
häufigsten Buchstaben suchen und zu E, N, ... entschlüsseln) einen
Vigenère-Code nicht knacken.
Dieses Verfahren blieb über 300 Jahre lang ungeknackt!
Erst 1863 fand der preußische Infanteriemajor Friedrich Wilhelm
Kasiski eine Möglichkeit der Kryptoanalyse. Sie besteht aus 2 Teilen.
Kapitel 4
© Beutelspacher
November 2004
Seite 28
Kryptoanalyse, 1.Teil: Bei bekannter Schlüsselwortlänge
Angenommen, das Schlüsselwort hat 5 Buchstaben, dann wurden die
Buchstaben Nr. 1, 6, 11, 16, ... alle mit dem ersten Schlüsselwortbuchstaben verschlüsselt. Dann könnten wir diesen bestimmen:
Wir suchen den häufigsten Buchstaben unter den Buchstaben Nr. 1, 6,
11, 16, ... Dieser muss dem Klartext-E entsprechen.
Erster Schlüsselwortbuchstabe: Anfangsbuchstabe des Alphabets, bei
dem E in diesen häufigsten Buchstaben verschlüsselt wird.
Beispiel: Wenn der häufigste Buchstabe Q ist, dann sucht man in der
Spalte, die oben mit E beginnt, den Buchstaben Q. Dann geht man in
dieser Zeile nach vorne – und findet M.
Durch Betrachten der Buchstaben Nr. 2, 7, 12, 17, ... findet man den
zweiten Schlüsselwortbuchstaben. Usw.
Kapitel 4
© Beutelspacher
November 2004
Seite 29
Kryptoanalyse, 2.Teil: Schlüsselwortlänge bestimmen (I)
Wenn die ersten Buchstaben (z.B. E) einer Folge, die an zwei Stellen
im Klartext vorkommt (z.B. EIN), zufällig unter dem gleichen Schlüsselwortbuchstaben (z.B. C) stehen, dann ergeben sich an diesen Stellen
auch zwei gleiche Geheimtextfolgen (z.B. GPQ).
Beispiel:
SW:
D A C H D A C H D A C H D A C H D A C H D A C H
KT:
: : E I N : : : : : : : : : : : : : E I N : : :
GT:
: : G P Q : : : : : : : : : : : : : G P Q : : :
Dieses Phänomen tritt dann auf, wenn der Abstand der Folgen (hier:
16) ein Vielfaches der Schlüsselwortlänge (hier: 4) ist.
Kapitel 4
© Beutelspacher
November 2004
Seite 30
Bestimmung der Schlüsselwortlänge (II)
Die Länge des Schlüsselworts kann man also wie folgt bestimmen:
1. Man sucht gleiche Folgen im Geheimtext.
2. Man bestimmt den Abstand dieser Folgen.
3. Der ggT (größte gemeinsame Teiler) dieser Abstände ist ein Kandidat
für die Länge des Schlüsselworts.
Beispiel: Findet man in einem Geheimtext mehrfach vorkommende
Folgen mit den Abständen 30 (= 235), 84 (= 2237) und 18 (= 233),
kommt man zur Vermutung, dass die Schlüsselwortlänge 6 ist.
Fazit: Auch der Vigenère-Code ist knackbar (wenn auch raffiniert)!
Kapitel 4
© Beutelspacher
November 2004
Seite 31
Vigenère knacken
E
T
J
T
U
F
P
F
V
E
I
P
V
F
G
Y
N
H
N
U
M
C
L
E
Y
L
Y
Y
H
A
R
E
Z
E
Y
W
Q
M
E
H
I
V
V
F
E
Kapitel 4
Y
E
V
R
J
V
U
Y
K
R
E
K
F
V
S
C
R
B
H
U
Z
C
F
S
T
R
K
G
J
S
F
F
F
M
F
T
H
F
O
V
J
V
B
P
H
W
L
X
C
O
Y
Y
N
C
Y
B
L
V
L
Y
L
J
M
G
I
O
R
E
Q
V
V
H
I
W
P
J
L
X
Y
S
I
G
V
D
X
V
V
I
Z
F
H
V
K
S
H
S
O
H
C
S
F
B
O
S
S
F
S
P
O
X
U
M
J
O
T
B
T
V
F
T
H
X
M
V
O
U
U
A
U
I
L
C
W
C
N
S
M
M
Y
V
I
W
O
X
V
F
I
L
R
L
I
V
V
V
U
I
K
V
S
X
V
U
E
V
R
U
Y
W
F
S
S
V
W
S
H
W
I
W
U
H
B
S
O
P
F
E
B
U
L
E
U
S
D
F
U
H
S
Z
N
M
C
N
L
U
U
H
Z
B
M
Y
M
T
S
E
K
I
X
Y
Q
W
M
X
X
X
R
J
K
I
V
R
Z
V
E
V
J
T
V
M
V
O U C S E G
C M I K Z S
A F C R V F
H J A O V W
P T W L C I
V Z V Y V F
B V H H W I
R A Y L E R
B F M A L F
G J Y A R S
V U A I J H
B J B V V P
S S F E J G
Z M N I R I
© Beutelspacher
November 2004
Seite 32
Ein unknackbarer Code
Schlüsselwort:
QX V H CAMDMZ S J E C B Y
Klartext:
DA S I S T UN KN AC KB AR
Geheimtext:
T X N P U T G QWM S L O D B P
Kapitel 4
© Beutelspacher
November 2004
Seite 33
Was heisst “unknackbar”?
T X N P U T G Q W M S L O D B P
A A A A A A A A A A A A A A A A
A A A A A A A A A A A A A A A B
.
.
.
.
.
D A S
I
S T U N K N A C K B A R
.
.
.
.
.
.
.
.
.
M A T H E M A T
I
K
I
S T G U T
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z
Kapitel 4
© Beutelspacher
November 2004
Seite 34
One-time pad („Einmalblock“)
Zufallsfolge (one-time pad )
01101 01000 11100 ...
Geheimtext
Klartext
00100 11001 00100 ...
01001 10001 11000 ...
• Algorithmus: Addition „modulo 2“
• Entschlüsseln = Verschlüsseln
• Die Vernam-Chiffre ist absolut sicher (“perfekt”),
falls die Schlüsselfolge wirklich zufällig ist (Shannon 1949)
• Problem: Länge der Schlüsselfolge = Länge des Klartexts
Kapitel 4
© Beutelspacher
November 2004
Seite 35
Pseudozufallsfolgen
Pseudozufallsbitgenerator
Pseudozufallsfolge
01101 01000 11100 ...
Geheimtext
Klartext
00100 11001 00100 ...
01001 10001 11000 ...
• Praktischer Kompromiss: Pseudozufallsfolgen
• Sender und Empfänger müssen nur einen Schlüssel (= Initialisierung
des Generators) konstanter Länge austauschen.
• Anwendung: Verschlüsselung beim Handy
Kapitel 4
© Beutelspacher
November 2004
Seite 36
4.4 Geht das mit rechten Dingen zu?
• Zwei Personen, die sich noch nie getroffen haben,
unterhalten sich öffentlich ...
... und am Ende des Gesprächs haben sie
ein gemeinsames Geheimnis,
während alle anderen keine Ahnung davon haben ???
• Das wäre die Lösung des Schlüsselproblems! Man müsste die
Übertragung des Schlüssels nicht mehr organisatorisch (o.ä.) regeln,
sondern könnte mathematische Methoden anwenden!
Kapitel 4
© Beutelspacher
November 2004
Seite 37
Die Kunst, öffentlich geheime Süppchen zu kochen
öffentlich:
gemeinsame Suppe
Kapitel 4
© Beutelspacher
November 2004
Seite 38
Diffie-Hellman Key-Exchange (1976)
Verfahren zur „symmetrischen“ Erzeugung eines gemeinsamen
Schlüssels
öffentlich: p Primzahl (100 Stellen),
g natürliche Zahl (100 Stellen)
Wählt Zahl a < p.
Wählt Zahl b < p.
Berechnet a = ga mod p. a
b Berechnet b = gb mod p.
Berechnet ba mod p
( = g ba mod p).
Berechnet ab mod p
( = g ab mod p).
g ba mod p = K = g ab mod p
gemeinsamer Schlüssel
Kapitel 4
© Beutelspacher
November 2004
Seite 39
“Systematische” Angriffe
• Systematisches Ausprobieren aller Schlüssel
symmetrisch
Schlüsselaust. Bewertung
40 Bit
56 Bit
256 Bit
512 Bit
völlig unsicher
heute knackbar
128 Bit
256 Bit
1024 Bit
2048 Bit
nicht knackbar
nie knackbar
• Bezüglich dieser Angriffe ist die Sicherheit von Algorithmen
unbeschränkt! Die einzige Gefahr droht von der Mathematik!
Kapitel 4
© Beutelspacher
November 2004
Seite 40
Herunterladen