IT Sicherheit - Micro Fusion

Werbung
IT Sicherheit
Teil 2
Kryptologie
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
1
Literatur
• Basiswissen IT-Sicherheit
Werner Boguntke
W3L
• Angewandte Kryptographie
Dr. W. Ertel
Hanser Verlag
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
2
1
Inhalt
• Kryptologie=
Kryptographie + Kryptoanalyse
•
•
•
•
•
•
Motivation: Caesars Chiffre
Modulare Arithmetik
Historische kryptographische Algorithmen
Kryptoanalyse
Kerckhoffs’ Prinzip
Moderne kryptographische Algorithmen
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
3
Nomenklatur
Bezeichnungen:
– Klartext M
– Chiffrierung E
– Schlüssel K
– Geheimtext C
– Entschlüsselung D
(message)
(encryption)
(key)
(chiphertext)
(decryption)
Beispiel: C = EK( M )
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
4
2
Nomenklatur
Personen der Handlung:
• Alice
Bob +Carol, Carlos, Charlie
• Eve (= eavesdropper, passive Attacke)
• Mallory, Marvin, Mallet
(= malicious attacker)
• Trudy (= intruder)
• Peggy (prover) und Victor (verifier)
• Trent (trusted entity)
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
5
Nomenklatur
Kryptographische Algorithmen
= Berechnungsvorschriften
– eingeschränkte Algorithmen
müssen geheim gehalten werden
– starke Algorithmen / starke Kryptographie
gem. Kerkhoffs' Prinzip (s.w.u)
müssen invertierbar sein: D( E(M) ) = M
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
6
3
Grafik: FH Trier
Motivation
Chiffre durch Verschiebung im Alphabet:
 Caesars Verschlüsselung
Zyklische Verschiebung (Rotation)
eines Alphabet Rings
= Addition in (endlicher) Menge von Buchstaben
 Modulare Arithmetik
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
7
Grafik: FH Trier
Verschiebechiffre
Caesars Code
• Julius Caesar (100-44 v. Chr.)
hat dieses Verfahren bereits verwendet
• zyklischen Rotation
des Alphabets um k Zeichen
• Schlüssel z.B. „D“
„ABCDEFG“ -> „DEFGHIJ“
verschlüsseln
KLARTEXT
+ DDDDDDDD (D=3)
NODUWHAW
WS 2010/11
entschlüsseln
NODUWHAW
- DDDDDDDD
KLARTEXT
Vorlesung: IT-Sicherheit
M. Harms
8
4
Grafik: FH Trier
Verschiebechiffre
Caesars Code
„monoalphabetische Substitution“:
jedem Buchstaben eines Textes
wird ein anderer eindeutiger Buchstabe
zugeordnet.
z
WS 2010/11
( z + k ) mod n
Vorlesung: IT-Sicherheit
M. Harms
9
Modulare Arithmetik
Dividiert man eine natürliche Zahl n durch eine
andere, bleibt ein Rest r {0, 1, 2, … , n-1}
• Beispiele:
15 : 4 = 3 Rest 3
oder
15 = 4 · 3 + 3
15 : 5 = 3 Rest 0
oder
15 = 5 · 3
Satz:
Seien a, b
und b > 0.
Dann gibt es eindeutige q, r
a = q·b + r
und
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
mit
r<b
10
5
Arithmetik auf endlichen Mengen
Kongruenz in der Zahlentheorie
Man nennt zwei Zahlen kongruent bezüglich eines Moduls (eine weitere
Zahl), wenn sie bei Division durch den Modul den selben Rest haben.
Beispiel:
5 ist kongruent zu 8 modulo 3, denn
5 mod 3 = 2
8 mod 3 = 2
Schreibweise:
a
b mod m
Formale Definition:
•
•
Zwei Zahlen a und b sind kongruent modulo m, wenn m die Differenz a − b teilt.
Zwei Zahlen a und b sind inkongruent modulo m, wenn m die Differenz a − b nicht teilt.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
11
Grafik: FH Trier
Verschiebechiffre
Caesars Code
Warum ist die
monoalphabetische Substitution
einfach zu knacken?
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
12
6
Kryptoanalyse
Verschiebechiffre (Cäsars Code)
Chiffretest
0%
0%
1,30%
6,49%
0%
7,79%
2,60%
11,69%
5,19%
1,30%
9,09%
7,79%
0%
0%
3,90%
1,30%
9,09%
2,60%
0%
0%
9,09%
9,09%
3,90%
2,60%
3,90%
1,30%
Faust
4,97%
1,87%
3,98%
4,87%
15,69%
1,90%
2,78%
6,75%
8,44%
0,19%
1,07%
3,97%
3,22%
9,67%
2,32%
0,92%
0,04%
6,73%
6,67%
6,30%
4,05%
0,64%
1,86%
0,04%
0,03%
1,03%
14%
12%
10%
8%
6%
4%
2%
0%
WS 2010/11
Grafik: FH Trier
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
Reihe1
1 3
20,00%
5 7
9 11 13 15 17 19 21 23 25
Faust
15,00%
10,00%
Reihe1
5,00%
0,00%
1 3
5 7 9 11 13 15 17 19 21 23 25
Vorlesung: IT-Sicherheit
M. Harms
13
Wiederholung Mathematik
Kommutativgesetz
• a+b=b+a
• a·b=b·a
Assoziativgesetz
• a + ( b + c) = (a + b) + c
• a · ( b · c ) = (a · b) · c
Distributivgesetz
• a·(b +c) =a·b+a·c
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
14
7
Arithmetik auf endlichen Mengen
Ring:
 Addition OK
 Multiplikation funktioniert
 0 und 1 bei Multiplikation und Addition: wie gewohnt
Kommutativer Ring:
 Multiplikation funktioniert noch besser
Körper
 kommutativer Ring plus:
 Division klappt
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
15
Arithmetik auf endlichen Mengen
Def: Eine Struktur (M,+,·) heißt Ring, wenn
• (M,+) eine kommutative Gruppe ist
Das heißt
– bez. + gibt es ein neutrales Element 0,
– sowie zu jedem a ein inverses Element a- und
– es gelten das Assoziativ- und Kommutativgesetz
• (M,·) besitzt ein neutrales Element 1 und es gilt das
Assoziativgesetz
• Es gilt das Distributivgesetz
a·(b+c) = a·b + a·c
a, b, c
M
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
16
8
Arithmetik auf endlichen Mengen
Def:
Ein Ring heißt kommutativ wenn er bezüglich der Multiplikation kommutativ ist.
,
Def: n
der Restklassenring modulo n ist
n
(sprich „Z modulo n“)
:= /n
:= {0,1,…,n-1}
Satz: (
Def: p
/n
, + , · ) ist ein kommutativer Ring.
heißt Primzahl,
wenn sie genau durch zwei verschieden natürliche Zahlen teilbar ist.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
17
Arithmetik auf endlichen Mengen
Def:
Ein Ring (M,+,·) heißt Körper,
– wenn (M, ·) kommutativ ist und
– wenn es zu jedem a 0 ein inverses a-1 gibt,
für das a·a-1 = 1 ist und
– Null und Eins verschieden sind.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
18
9
Arithmetik auf endlichen Mengen
Satz:
Für den Ring (
n prim
/n
, + , · ) gilt:
( /n , + , · ) ist ein Körper
Satz (Fermat, 1608-1665):
Sei n eine Primzahl,
dann gilt in /n für alle a
0
an-1 = 1
oder: a
bzw: a -
WS 2010/11
an
an mod n
ist durch n teilbar
Vorlesung: IT-Sicherheit
M. Harms
19
Arithmetik auf endlichen Mengen
Funktion
f(x) = gx mod p
x=
• Bsp: p=7
Restklassenring
6 ={0,1,…,6}
•
g=
1
2
3
4
5
6
1
1
2
3
4
5
6
3
1
1
6
1
6
6
6
\0

3 und 5 sind „Erzeuger“ von
WS 2010/11
2
1
4
2
2
4
1
Vorlesung: IT-Sicherheit
M. Harms
4
1
2
4
4
2
1
5
1
4
5
2
3
6

6
1
1
1
1
1
1
20
10
Arithmetik auf endlichen Mengen
Def: Zwei Zahlen a und b heißen relativ prim (oder
teilerfremd), wenn ggT(a,b) = 1
Satz (Euklidischer Algorithmus): Für a,b
\{0} gilt:
ggT(b, a mod b)
falls a mod b 0
ggT(a,b) =
b
falls a mod b = 0
Satz: Ist ggT(a,n) = 1 dann gibt es ein a-1 bez.
a·a-1 1 mod n
/n
mit
a-1 kann mit dem „erweiterten Euklidischen Algorithmus“ errechnet werden.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
21
Übung: Ring vs. Körper
Erinnerung
Def: Eine Struktur (M,+,·) heißt Ring, wenn
•
(M,+) eine kommutative Gruppe ist (bez. + gibt es neutrales Element 0, zu jedem a
ein inverses Element a- und es gelten das Assoziativ- und Kommutativgesetz)
•
(M,·) besitzt neutrales Element 1 und es gilt das Assoziativgesetz
•
Es gilt das Distributivgesetz a·(b+c) = a·b + a·c
a, b, c
M
Def: Ein Ring (M,+,·) heißt Körper,
•
wenn (M, ·) kommutativ ist und
•
wenn es zu jedem a
•
Null und Eins verschieden sind.
0 ein inverses a-1 gibt, für das a·a-1 = 1 ist und
Seien A=0, B=1, … und so weiter
Zeige, dass {A,B,C} ein Körper, aber {A,B,C,D} nur ein Ring ist.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
22
11
Beispiele für Ringe und Körper
Ring:
• Ganze Zahlen
= { …, -3, -2, -1, 0, 1, 2, …}
• Restklassenring
• Polynome
(kommutativer Ring)
• Matrix
(nicht kommutativ Ring)
• Ziffernblatt der Uhr
Körper:
• rationale Zahlen
• primer Restklassenring
• Felder F wie F23
• ein Bit
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
23
Modulare Division
Wie wird eine Division berechnet?
x = a / b mod m
Antwort:
x = a·b-1
mod m
Zentrale Frage daher:
Wie berechnet man das modular Inverse b-1?
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
24
12
Modulare Division
Wie bestimmt man das modular Inverse b-1?
Ausgangsbasis:
b·b-1 1 mod m
Es gibt also ein q mit
b·b-1 = q·m + 1
b·b-1 - q·m = 1
Bézout-Identität:
ggT(a,b) = s·a + t·b
also
ggT(b, m) = b·b-1 - q·m
erw. Euklidischen Algorithmus:
ggT( m, b ) = ggT( b, m mod b ) = … = ggT( 1, 0 ) = 1
Alle Multiplikatoren qi merken a = q·b + r
ggT(b,m) =1 = s·1 + t·0
und dann alle Schritte rückwärts
si-1 = ti
WS 2010/11
weil m Primzahl
also s= 1, t =0
und ti-1 = si – qi ti
Vorlesung: IT-Sicherheit
M. Harms
25
Modulare Division
• Beispiel:
m
x
x^-1 = ?
23
12
a = q·b + r
a
23
12
11
1
b
12
11
1
0
ggT(a,b) = s·a + t·b
q
1
1
11
s
t
-1
2
1
-1
0
1
1
0
1 = s·1 + t·0
1 = -1 23 +
2 12
=s - q*t
x-1 = 2
Prüfung:
2 * 12 = 24
WS 2010/11
1 mod 23
Vorlesung: IT-Sicherheit
M. Harms
26
13
Historische kryptographische
Algorithmen
•
•
•
•
Verschiebechiffre (Cäsars Code)
Vigenère Chiffre
Enigma
One Time Pad
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
27
Monoalphabetische Substitution
monoalphabetische Substitution:
jedem Buchstaben eines Textes ein anderer eindeutiger
Buchstabe zugeordnet.
Verschiebechiffre (Caesar)
z
( z + k ) mod n
Multiplikative Chiffre
z
( z · t ) mod n
mit ggT(t,n) = 1
Tauschchiffre (affine Chiffre)
z
( z · t + k ) mod n
mit ggT(t,n) = 1
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
28
14
Tauschchiffre (affine Chiffre)
z
( z · t + k ) mod n
z.B.: t=5, k=7, n=26
und es ist ggT(t,n) = 1
(5z + 7) mod 26
(Az + B) mod 26
A=?, B=?
0
1
3
4
5
6
8
9
10 …
7
12 17 22
1
6
11 16 21
0
7
…
7
12 17 22
1
6
11 16 21
0
7
…
0
1
4
5
6
9
10 …
2
2
WS 2010/11
3
7
7
Vorlesung: IT-Sicherheit
M. Harms
8
29
Vigenère Chiffre
• Polyalphabetischer Chiffre
• Verschleiert Häufigkeiten
• Sender u. Empfänger
vereinbaren Schlüsselwort
• M=VERTRAULICH
• K=GEHEIMGEHEI
• C=CJZYANBQQHQ
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
30
15
Vigenère Chiffre -Kryptoanalyse
1. Verfahren:
•
•
Schlüssellänge L „finden“ oder raten
Weiter wie bei Caesar:
alle L Zeichen zusammen analysieren
2. Verfahren (Babbage/Kasiski)
•
•
•
Wiederholungen von 3 (oder mehr) Buchstaben
suchen
Abstand (je weiter, desto sicherer) ist wahrscheinlich
Vielfaches der Schlüssellänge
Danach Analyse der Häufigkeiten von Buchstaben
bez. auf potentielle Schlüssellängen
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
31
Vigenère Chiffre -Kryptoanalyse
• XNXMCXMYCSOYLXNWBJBHYXMYMY
XMXJKXUIXHWTWCYWXHTJBAYSDIYS
GNY ???
• XMY:
Abstand 16 = 2*2*2*2
• Wahrscheinliche Keylängen:
2, 4, 8, 16
• z.B. Schlüssellänge 4:
jedes 4. Zeichen auf Häufigkeiten
untersuchen
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
32
16
Enigma
• Die ENIGMA ist eine elektromechanische
Rotor-Schlüsselmaschine
• polyalphabetische Substitution
• 1918: erstes Patent
Arthur Scherbius (Elektroingenieur)
• 1934: Firma „Heimsoeth & Rinke“
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
33
Enigma – Grundprinzip
Reflektor
li. Mittel- Re.
Rotor Rotor Rotor
A
Quelle: Wikimedia Commons
x
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
34
17
Enigma - Schlüsselraum
•
Walzenlage
–
•
Ringstellung
–
•
2 Walzen je 26 Stellungen:
26² = 676 Ringstellungen
Walzenstellung
–
•
3 von 5 Walzen und eine von zwei Umkehrwalzen werden ausgewählt.
2·(5·4·3) = 120 mögliche Walzenlagen.
drei (rotierenden) Walzen mit 26 Möglichkeiten (A bis Z), ohne Redundanzen:
26·25·26 = 16.900 Walzenstellungen
Steckerverbindungen
–
13 Steckerverbindungen zwischen den 26 Buchstaben
= 150 Billionen Steckmöglichkeiten
Schlüsselmöglichkeiten
120 · 676 · 16.900 · 150.738.274.937.250 =
206.651.321.783.174.268.000.000
entspricht ca. 77 bit
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
35
One-Time-Pad
• One-Time-Pad (OTP)
Einmalverschlüsselung
• M: VERTRAULICH
• K: PIYXQLTAXRA
z
( m + k ) mod 26
• C: LNQRIMOMGUI
 Nicht praktikabel, da Schlüsselaustauschproblem besteht.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
36
18
Kryptoanalyse
Ziel:
Alle verfügbaren Informationen über Verfahren in die
Analyse mit einzubeziehen
öffentlich bekannte Informationen
–
–
–
–
Algorithmen/Verfahren
Parameter
plausible Vermutungen
…
geheime Informationen
– Schlüssel
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
37
Kryptoanalyse
Kategorien
• Vollständiges Aufbrechen
– Schlüssel gefunden
• Globale Deduktion
– Äquivalenter Algorithmus
• Lokale Deduktion
– Nachricht entziffert
• Informationsdetektion
– Eingeschränkt entziffert
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
38
19
Kryptoanalyse
Wichtige Methode:
• Häufigkeits-/Wiederholungsanalyse
• Brute-Force
• Wörterbuch
• Seitenkanalanalyse
• Lineare / differentielle Kryptoanalyse
• Algebraische Analyse
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
39
Kryptoanalyse: Häufigkeits- u.
Wiederholungsanalyse
• Häufigkeit von Buchstaben auswerten:
–
–
–
–
E ca. 15 % - 20 %
N ca. 10%
A, D, I, R,S, T ca. 5 – 10 %
…
• Paarhäufigkeit:
– EN, ER ca. 4 %
– CH, TE ca. 3%
– TE, DE, ND, EI, IN, ES
um 2%
• Abstände von Zeichenfolgen aus mind. 3 Zeichen
 Ermittlung der Schlüssellänge (Kasiski Test)
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
40
20
Seitenkanalanalyse
Angreifer versucht zunächst andere Daten zu
erfassen und daraus Informationen über den
verwendeten Algorithmus und Schlüssel zu
gewinnen:
• Dauer der Verschlüsselung
• zeitliche Verlauf des Stromverbrauchs eines
Chips
• Berechnungsfehler aufgrund extremer
Umgebungsbedingungen
• Branch Prediction Analysis
• Abstrahlung elektromagnetischer Wellen
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
41
Einschub:
Wie rechnet man möglichst schnell xy?
xn
=
1
wenn n=0
x (x (n-1)/2 ) 2 wenn n ungrade
(x n/2 ) 2
wenn n grade
Quadriere und Multiplizieren
Quadiere
 binäre Exponentiation
z.B. n = 38 = #100110
 xn = x #100110
= ( x #10011 )2
= ( ( x (x #1001 ) 2 ) )2
= ( ( x ( x ( x #100 ) 2 ) 2 ) )2
= ( ( x ( x ( ( x #10 ) 2 ) 2 ) 2 ) )2
= ( ( x ( x ( ( ( x #1 ) 2 ) 2 ) 2 ) 2 ) )2
= ( ( x ( x ( ( x ) 2 ) 2 ) 2 ) 2 ) )2
Programmablauf Q QM QM Q Q
#100110
Also statt 38 Multiplikationen nur 7 Multiplikationen !!
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
42
21
BPA bei RSA
mit Standard Algorithmus
geheimer
Schlüssel: d
C = Md (mod N)
Binary Square-and-Multiply Exponentiation Algorithm
Code:
S = M
for ( int
S = S*S
if ( di
S =
}
}
return S;
WS 2010/11
i =
mod
= 1
S*M
1; i <n-1; i++) {
N
) {
mod N
Sprungbefehle der
CPU analysieren:
 di  d
Ref: On the Power of Simple
Branch Prediction Analysis
Onur Aciiçmez, Çetin Kaya
Koç and Jean-Pierre Seifert
Vorlesung: IT-Sicherheit
M. Harms
43
Kryptoanalyse
Angriffsszenarien:
•
•
•
•
•
Ciphertext-Only-Angriff
Propable/Known-Plaintext-Angriff
Choosen-Plaintext/Chiphertext-Angriff
Man in the middle
Kriminalität (Gewalt / Erpressung / Bestechung)
Meist ist der Mensch (Besitzer des
Schlüssels) die größte Sicherheitslücke.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
44
22
Ciphertext-Only-Angriff
C = Verschlüsselter Text
P = plaintext (Klartext)
Ek = Verschlüsselungsalgorithmus E mit dem
Schlüssel k
Gegeben:
C1 = Ek(P1), C2 = Ek(P2), ... Ci = Ek(Pi)
Gesucht:
Px, k, E oder D
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
45
Propable/Known-Plaintext-Angriff
Gegeben:
C1 = Ek(P1), C2 = Ek(P2), ... Ci = Ek(Pi)
und
P1
exakt bekannt, oder wahrscheinlich.
Gesucht:
k, Ek oder Dk
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
46
23
Chosen-Plaintext/ChiphertextAngriff (CPA)
1. Angreifer kann Nachricht frei bestimmen.
2. Angreifer hat Zugriff auf verschlüsselte Nachricht.
z.B.: Opfer Nachricht unterschieben
 Informationen zum System ermitteln
Vergleich von verschlüsselten Nachrichten
 Wörterbuch: Chiffretext
WS 2010/11
Nachricht
Vorlesung: IT-Sicherheit
M. Harms
47
Man in the middle
Alice
Mallory
Bob
• Alice:
„Hallo Bob, ich bin‘s Alice, gib mir bitte Deinen Schlüssel!“
• Mallory:
„Hallo Bob, ich bin‘s Alice, gib mir bitte Deinen Schlüssel!“
• Bob:
„Mein Schlüssel ist XYZ!“
• Mallory:
„Hallo Alice, mein Schlüssel ist ABC!“
• Alice verschlüsselt mit ABC:
„Bob, kommst Du zu mir?“
• Mallory verschlüsselt mit XYZ :
“Hi Bob, ich habe heute leider keine Zeit!“
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
48
24
Man in the middle
• Physikalischer Zugriff auf LAN Kabel
• Betriebssystem Eingriff
– Treiber
– „hosts“ Datei
•
•
•
•
•
•
ARP
DHCP
Router Hacking
WLAN Snarfing
DNS Cache Poisoning
manipulierte Eingabegeräte (Kartenleser, Tastaturen, …)
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
49
Kriminalität
in der Kryptoanalyse
• „Social Engineering“ (z.B, Phishing)
–
–
–
–
zwischenmenschliche Beeinflussung
falsche Identität vortäuschen
Ausnutzen von Autoritätshörigkeit
(privat) Ausspähen
• Gewalt
• Erpressung
• Bestechung
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
50
25
Kerckhoffs’ Prinzip (1883)
• Eine verschlüsselte Nachricht darf ohne Schlüssel nicht effizient zu
entschlüsseln sein
• die Kommunikationspartner dürfen keinen Schaden erleiden, wenn
das Verschlüsselungssystem bekannt wird
• der Schlüssel muss leicht zu merken und auswechselbar sein
• die Kryptogramme müssen übertragbar, das heißt damals
telegraphierbar, sein
• der Chiffrierapparat und die Dokumente müssen transportierbar sein
• das System muss einfach (ohne Expertenhilfe) zu benutzen sein
• das Chiffriersystem sollte von Experten gut untersucht sein
Zu Kerckhoffs Zeiten existierte ein solches Chiffriersystem nicht.
-> Security by obscurity
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
51
Grundlagen der Kryptographie
•
•
•
•
Einwegfunktionen
Trapdoor-Einwegfunktionen
Algorithmen
Protokolle
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
52
26
Einschub: Binäre Arithmetik
X
0
0
1
1
ODER (OR)
Y
XvY
0
0
1
1
0
1
1
1
X
0
0
1
1
UND (AND)
Y
X Y
0
0
1
0
0
0
1
1
Excl.ODER (XOR)
X
Y
X Y
0
0
0
0
1
1
1
0
1
1
1
0
A XOR B = (A+B) mod 2
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
53
Einwegfunktion
= Leicht berechenbar, schwer umkehrbar
• Primfaktorzerlegung
– Fundamentalsatz der Arithmetik
– Bsp: Primfaktorzerlegung von 112
• Gruppentheorie: Diskreter Logarithmus
f(x) = bx mod m
• Hashfunktionen
– MD5 / SSH
• elliptische Kurven
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
54
27
Primfaktorzerlegung
Fundamentalsatz der Arithmetik:
Jede natürliche Zahl lässt sich als Produkt von endlich
vielen Primzahlen darstellen. Ordnet man diese
Primzahlen der Größe nach, so ist diese Darstellung
sogar eindeutig.
Primfaktorzerlegung = Faktorisierung
Durch rekursive Anwendung von Faktorisierungsverfahren in
Kombination mit Primzahltests kann die Primfaktorzerlegung
einer ganzen Zahl berechnet werden.
Für die Faktorisierung ist keine effiziente Rechenmethode
bekannt.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
55
Primfaktorzerlegung für n
• Probedivision
bis √
Beispiel 21
[0-10] m=2*3*5= 30
ggT(30, 21) = 7
21 / 7 = 3
ggT(21,3) = 1
21 = 3*7
• Berechnung über ggT(n,m)
Intervall [a,b], a,b < n,
m Produkt aller Primzahlen aus [a,b]
Probedivision n/ggT(m,n)
• …
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
56
28
Primzahlentests
• Sieb des Eratosthenes
• Miller Rabin Test
= probabilistisch mit nach oben beschränkter Wahrscheinlichkeit
(Fehlerwahrscheinlichkeit 25%)
 Monte Carlo Algorithmus
• AKS Algorithmus
polynome Rechenzeit
besondere Bedeutung Polynomialzeit:
Man betrachtet Sie als eine Grenze zwischen praktisch lösbaren und praktisch nicht lösbaren
Problemen.
• …
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
57
Zufallszahlen
• Fast alle Schlüssel werden mit Zufallszahlen
generiert!
• Zufallszahlengeneratoren Z
– Computer kennen keinen Zufall
– Zufallszahlen werden berechnet!!
– Pseudozufallszahlen
• Berechnungsformel Z muss sicher sein.
• Parameter p für Z(p) sind meist Uhrzeit,
Rechneradresse oder Tastatureingaben.
• Zufallsgeneratoren dürfen nicht knackbar sein
– Z(p) darf nicht „vorhersagbar“ sein.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
58
29
Pseudozufallszahlen
• arithmetische Zufallszahlengeneratoren
z = i · y0 mod 1
irrationale Zahl: y0
]0,1[
• rekursiver arithmetischer Zufallszahlengenerator
z wird rekursiv aus einer/mehrerer Vorgänger berechnet
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
59
Pseudozufallszahlen
rekursiver arithmetischer Generator
• Kongruenzgenerator
– linearer Kongruenzgenerator
zn = (a · zn-1 + b) mod m
– Fibonacci-Generator
zn = (zn-1 + zn-2) mod m
– Blum-Blum-Shub-Generator (BBS)
zn = z2n-1 mod p·q
p,q Primzahlen, ggT(z0, p·q) =1, p
q
3 (mod 4)
• Inverser Kongruenzgenerator
• Mersenne-Twister
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
60
30
Satz von Marsaglia
linearen Kongruenzgenerator:
zn+1 = 24298zn + 99991mod 199017
zn = (a · zn-1 + b) mod m
• k-Tupel: (z0…zk), (z1…zk+1), …
Satz:
k-Tupel liegen auf maximal
(m · k!)1/2
Hyperebenen
Quelle:
Wikipedia
Inverse Konguenzgeneratoren haben dieses Verhalten nicht!
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
61
Einwegfunktion:
Diskreter Logarithmus
A = logg a , wobei A = g a mod p
• Spezialfall: „prime Restklassengruppe“
• Bsp: Primzahl p=7 / Primitivwurzel = 3
• 3¹ mod 7 = 3 mod 7 = 3
• 3² mod 7 = 9 mod 7 = 2
• 3³ mod 7 = 27 mod 7 = 6
• 35 mod 7 = 81 mod 7 = 4
• 36 mod 7 = 729 mod 7 = 1
Alle Elemente der Restklassengruppe werden gebildet.
3 ist ein Erzeuger des Körpers.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
62
31
Hashfunktion MD5
• Message Digest Algorithm 5
• 1991: Ron Rivest (MIT)
• 128 Bit Prüfsumme
– für Nachricht variabler Länge
• gilt nicht mehr als sicher
– Nachweis 2008: Cluster von 200 PS3
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
63
Hashfunktion MD5: 4 x Runde
128 bit
A
B
Initialisierung !!
C
D
Fk
Mi
32bit Block
Ki
+ mod 232
F1 = (B C)v(!B D)
F2 = (B C)v(B !D)
F3 = B C D
F4 = C (Bv!D)
+ mod 232
<<<ki
+ mod 232
A
WS 2010/11
B
C
Vorlesung: IT-Sicherheit
M. Harms
D
64
32
Übung
MD5 „Light“ in Java
Entwickle einen
MD5 Hash Algorithmus Light in Java
• Light =
–
–
–
–
–
A, B, C, D = 8 Bit = byte
Initialisierung mit 218, 77, 255, 31
M = String Zeichen für Zeichen verarbeiten
F = F1
ki = k1 = const {1...7}
• Hilfestellung: Java Templates
• Experimetieren:
– Initialsisierung (Werte von A,B,C,D)
– Statt 4 Schleifen: 3, 2 oder nur 1 Schleife
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
65
Übung
MD5 „Light“ in Java
Algorithmus Experimente:
Message
MD5L = 4Loop
2Loop
1Loop
Text
01110010 11101100 01010110 00010000
11000000 11011110 11011100 11011110
11100110 00100001 01000011 01100111
Test
11010000 00110001 01001010 11011010
10010111 01010100 00100110 11110110
11100110 10111000 00011011 01100111
Tes
10011011 11110000 01001000 00001101
01100111 11110110 10010111 10110010
01001101 00011011 01100111 11100110
Te
00111010 01101100 10100010 00101110
11100110 10110010 01100111 11011110
11111111 01100111 11100110 01001101
T = 01010100
11100110 11100110 11011111 11011110
11111111 11011110 11100110 01001101
00011111 11100110 01001101 11111111
U = 01010101
11101110 01001001 11110000 00101111
11111111 00101111 11101110 01001101
00011111 11101110 01001101 11111111
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
66
33
Übung
MD5 „Light“ in Java
Sicherheit von MD5-Light
Brute Force Attacke:
Md5lHash( ? ) = Md5lHash(„Test“)
Zeit für Attacke:
• Schlüssellänge: 28*4 = 232 = 4.294.967.296
• Optimierter Algorithmus* auf Core2 @2,5 GHz:
– ca. 10.000.000 7-Zeichen-Strings pro 25 Sekunden
– also ca. 400.000 / sec
 ca. 10.000 sec. oder knapp 3 h
Aber:
Einige Bits scheinen extrem von Stringlänge abzuhängen, daher
müssen mehrere Stringlängen getestet werden
 Angriffsdauer x 16 (geschätzt)
*) Siehe: Shirazi, Java Performance Tuning
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
67
MD5 in Java
MD5 ist in J2SE integriert:
import java.math.BigInteger;
import java.security.*;
MessageDigest
unterstützt:
MD2, MD5, SHA-1,
SHA-256, SHA-384,
SHA-512
MessageDigest md = MessageDigest.getInstance("MD5");
byte[] messageDigest = md.digest(input.getBytes());
BigInteger number = new BigInteger(1, messageDigest);
String hashtext = number.toString(16);
Zur Ausgabe:
Hexadezimal konvertieren und auf feste Länge justieren
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
68
34
Hashfunktion SHA
•
•
•
•
Secure Hash Algorithm
NIST + NSA
sehr ähnlich zu MD5
Bestandteil
•
•
•
•
•
„kollisionssicher“
160 Bit Prüfsumme
SHA-1
SHA-2 (SHA-224, SHA-256, SHA-384, SHA-512)
Salted Hash
– von Digital Signature Algorithm (DAS)
– für den Digital Signature Standard (DSS)
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
69
Kryptographie
symmetrisch / asymmetrisch
• Symmetrisch:
• C = Ekey ( M )
• M = Dkey ( M )
– Verschlüsselung und Entschlüsselung mit dem selben
Schlüssel
– Problem: Austausch des Schlüssels auf sicherem Weg
• Asymmetrisch
• C = EpupKey ( M )
• M = DprivKey ( M )
– Verschlüsselung mit öffentliche Schlüssel,
Entschlüsselung mit privatem Schlüssel
– Problem: öffentliche Schlüssel sicher zuordnen
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
70
35
Kryptographie
Übersicht über aktuelle Verfahren
• Verschlüsselungsverfahren
– symmetrisch (z.B. DES / 3DES)
+ Schlüsselaustausch
– asymmetrisch (z.B. RSA)
• PKI
– Hybrid
– Block-/Stromverschlüsselung
• Authentifizierung (z.B. Kerberos)
– Challenge-Response-Authentifizierung und
Zero Knowledge
• Autorisierung
• Zertifizierung und Signatur
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
71
Moderne Block Chiffrierverfahren
• DES
= Data Encryption Standard
• 1973 von H. Feistel im Auftrag von IBM entwickelt
– weite Verbreitung
Einwegfunktionen
Nachfolger:
• AES
= Advanced Encryption Standard
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
72
36
Feistel Blockchiffre
Feistel Netzwerk:
F = Transformationsfunktion
= invertierbare Verknüpfung
(Umkehrung ①)
 bijektiv (umkehrbar)
Projekt „Lucifer“, IBM 1970er Jahre
Verschlüsselung:
M aufteilen in L und R
Li+1 = Ri
/
Ri+1 = Li
n Runden C = (Ln,Rn)
M
K1
L1
F
K2
L2
Ki
Li
 SYMMETRISCH
WS 2010/11
R2
F
F(Ri,Ki)
Entschlüsselung:
M aufteilen in L und R
Ri = Li+1 /
Li = Ri+1 ① F(Ri+1,Ki)
n Runden C = (Ln,Rn)
R1
Ri
F
C
Vorlesung: IT-Sicherheit
M. Harms
73
Feistel Chiffre
•
•
•
•
•
•
•
•
•
Blowfish
Camelia
CAST
DES/Triple-DES
FEAL
MARS
TEA/XTEA
Twofish
MISTY1
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
74
37
DES
Algorithmus Eckdaten:
• 64 Bit Schlüssel
– symmetrisch: ke = kd
– sicherer Kanal für Austausch von k benötigt
• 64 Bit (8 Byte) Blöcke m bilden
• blockweise Verschlüsselung:
DES(m,k)
• Verfahren ist offen gelegt:
– Abwechselnd Substitution und Permutation mit
unterschiedlichen Teilen des Schlüssels
– „Feistel-Chiffre“ -> Lawineneffekt
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
75
DES Algorithmus
Klartext
Eingangspermutation
Schlüssel
R0
L0
DES Runde 1
K1
R1
L1
DES Runde 2
K2
…
DES Runde 16
L16
R16
Schlusspermutation
WS 2010/11
K16
Vorlesung: IT-Sicherheit
M. Harms
Chiffretext
76
38
DES Algorithmus
Klartext
Eingangspermutation
Schlüssel
R0
L0
F
K1
R2
L2
F
K2
F
K16
R16
L16
Schlusspermutation
WS 2010/11
Chiffretext
Vorlesung: IT-Sicherheit
M. Harms
77
DES – Runde i
Li-1
32 bit
Ri-1
Schlüssel
28 bit
32 bit
F
Shift
Expansionsmutation
Shift
Kompressionspermutation
48 bit
48 bit
28 bit
Ki
S-Box Substitutionen
32 bit
P-Box Permutation
32 bit
Li
WS 2010/11
Ri
Schlüssel
Vorlesung: IT-Sicherheit
M. Harms
78
39
DES - Expansionsmutation
E: F232
F248
Aus 4 Byte
werden 6 Byte
32
1
2
3
4
5
4
5
6
7
8
9
8
9
10 11 12 13
12 13 14 15 16 17
E(b1,b2,b3,…)
=b32 b1 b2 b3 …
16 17 18 19 20 21
20 21 22 23 24 25
24 25 26 27 28 29
28 29 30 21 32
WS 2010/11
1
Vorlesung: IT-Sicherheit
M. Harms
79
DES S-Box
nichtlineare Substitutionsoperation
Anforderungen:
• Vollständigkeit:
Jedes Ausgangsbit ist von jedem Eingangsbit abhängig.
• Avalanche:
Die Änderung eines Eingangsbits zieht im Mittel die Änderung der
Hälfte aller Ausgangsbits nach sich.
• Nichtlinearität:
Kein Ausgangsbit ist linear oder affin von einem Eingangsbit
abhängig. Dies sollte auch nicht näherungsweise der Fall sein.
• Korrelationsimmunität:
Solange nur ein Teil der Eingangsbits bekannt ist, können keine
Rückschlüsse auf die Ausgangsbits gezogen werden. Und
umgekehrt.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
80
40
DES S-Box Beispiel
• statische 6×4-Bit S-Box (S5) von DES
Quelle:
Wikipedia
Operation: S5 ( 011011 )  1001
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
81
DES Dechiffrierfunktion
• S-Boxen: nicht invertierbar,
daher darf F nicht rückwärts durchlaufen
werden
• Umkehrfunktion:
– gleicher Algorithmus
– jedoch umgekehrte Anwendung der Schlüssel
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
82
41
DES Sicherheit
• Lawineneffekt:
„Hammingabstand“ H zweier Bitvektoren
steigt rasant an
• Beispiel:
– Ausgang
– DES 1. Runde:
– DES 2. Runde:
– ab DES 3. Runde:
H=1
H=3
H = 17
H ca. 30
• gilt nur für „gut“ gewählte S-Boxen
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
83
Übung - DES
Kryptoanalyse:
Passwortverschlüsselung (Web Server) mit DES
• Beurteile die Gefährlichkeit von
–
–
–
–
Ciphertext-Only Angriff
Known-Plaintext Angriff
Choosen-Plaintext Angriff
Man in the middle
• Welche Seitenkanalangriffe sind zu befürchten?
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
84
42
DES Historie
• 1973: Ausschreibung für einen standardisierten
kryptographischen Algorithmus
• 1977: DES wird veröffentlicht
• 1981: ANSI Standard
• 1994: DES wird erstmals geknackt:
12 HP Workstations: 50 Tage
• 1998: DES wird von der EFF
mit einem Spezialchip in 3 Tagen geknackt
• 1999: DES wird in 22h geknackt:
100.000 PCs + Spezialrechner
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
85
3DES
• 64 bit Schlüssel:
– aus heutiger Sicht recht einfach
• Längere Schlüssel -> höhere Sicherheit
• 3x DES Kaskade = 3DES = Tripple DES
– mit 3x 64 bit Schlüssel
k1
k2
k1 / k3
E
D
E
Nachricht
WS 2010/11
Chiffretext
Vorlesung: IT-Sicherheit
M. Harms
86
43
DES
• DES Hardware
– ca. 10 GBit / sec
• 3DES Hardware
– einige 100 MBit / sec
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
87
Blockchiffre: ECB
Quelle: Wikipedia
• Probleme:
– Austausch eines Blocks wird nicht erkannt
– Abschneiden wird nicht erkannt
– Mustererkennung
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
88
44
ECB Problem mit Bitmustern
Quelle: Wikipedia
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
89
Cipher-block chaining (CBC)
• Problem: Austausch eines Blocks
Quelle: Wikipedia
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
90
45
Blockchiffre: CFB
• CFB = Chiffre Feedback Mode
Quelle: Wikipedia
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
91
Blockchiffre: OFB
• OFB = Output Feedback
„Pseudo-One-Time-Pad“
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
Quelle: Wikipedia
92
46
Zufallszahlen mit DES - CFB
XOR
Zeichenstrom
8
8
Pseudozufallszahl
8
Bit Maske
64
8
DES
64
Puffer
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
93
AES
• NIST (2000): Nachfolger von DES
– Ausschreibung
• Rijndael-Algorithmus
– offen gelegt
– bietet ein sehr hohes Maß an Sicherheit
– Referenz-Implementierung:
weniger als 500 Zeilen C-Code
• USA:
Zulassung zur Verschlüsselung von
Dokumenten höchster Geheimhaltungsstufe
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
94
47
AES
Verwendung
• IEEE 802.11i für Wireless LAN: WPA2
• SSH
• IPsec
• IP-Telefonie
• offenen Protokollen wie SRTP
• proprietären Systemen wie Skype
• Mac OS X: Disk-Images
• Dienst: FileVault
• transparente Verschlüsselung EFS in Windows XP
• diverser komprimierter Dateiarchive, z. B.
– 7-Zip, RAR.
• PGP und GnuPG
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
95
AES Algorithmus
Schlüssel 192 bit
Klartext 128 bit
K0
Schlüsselexpansion
S0
Si
AES Runde 1
K2
Substitution
ByteSub
S1
Shift
Row
ShiftRow
AES Runde 2
Mix
Column
MixColumn
Ki+1
Si+1
K11
S11
AES Runde 12
K12
Chiffretext 128 bit
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
96
48
AES
• Substitution
– ähnlich DES S-Box aber monoalphabetisch
• Shift Row
– Block als Feld
– Je nach Blocklänge, Zeilen um 1-4 Spalten
verschoben
• Mix Column
– Block als Feld
– Multiplikation mit konstanter Matrix
auf Galois-Körper
(Addition ist bitweises XOR)
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
97
AES
• Rundenzahl variiert mit Schlüssellänge
• alle Transformationen sind invertierbar
• Entschlüsselung durch
– Umgekehrten Ablauf
– Einsatz der invertierten Operationen
• AES ist
– um vielfaches schneller als DES
– leicht parallelisierbar
– einfach in Hardware zu implementieren
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
98
49
IDEA
•
•
•
•
•
•
IDEA =International Data Encryption Algorithm
Lai/Massey 1990
verschlüsselt 64-Bit-Blöcke
Schlüssellänge 128 Bits
arbeitet mit 8 (statt 16) Runden,
verwendet
–
–
–
–
Xor
Addition
Multiplikation
d.h. keine Permutation oder Substitution
• Patentiert
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
99
IDEA - Arbeitsweise
Quelle: Wikipedia
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
100
50
Stromchiffre:
lineare Schieberegister
LFSR:
sn sn-1 sn-2
…
s3
s2
s1
Ausgabgsbit
Rückkopplungsfunktion
• Initialisierung
• Rückkopplungsfunktion z.B, „XOR“:
sj = ( c1sj-1 + c2 sj-2 +…+ cn sj-n) mod 2
• ist periodisch!!
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
101
Stromchiffre:
nichtlineare Schieberegister
• nichtlineare Kombinationsgeneratoren:
– mehere LFSR parallel geschaltet
– Ausgabebits wird nichtlineare Funktion
angewendet
• Nichtlineare Filtergeneratoren
– nichtlineare Funktion wird auf alle n
Speicherstellen angewendet
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
102
51
GSM: A5/1 Algorithmus
Nichtlinearität:
Es werden nur diejenigen
Schieberegister getaktet,
deren T-Bit zur Mehrheit
der T-Bits gehört.
Offiziell nicht veröffentlicht:
„security by obscurity“
Takt Bit
pro GSM Frame
• Initialisierung
–
–
–
–
Nullen
Sitzungsschlüssel laden
64 Taktungen (Mischen)
Framenumber laden
• 100 Bits verfallen
• je 114 Bits für 114 Bit GSM Frame pro Richtung
Quelle: Wikipedia
– Sende-Bits und Empfangs-Bits mit XOR verschlüsseln
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
103
Asymmetrische Kryptographie
•
•
•
•
•
Schlüsselaustauschproblem
Diffie Hellmann
RSA
ElGamal
Elliptische Kurven
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
104
52
Merkles Rätsel (1974)
Schlüsselaustausch für symmetrische Verschlüsselung
Wie kann Alice eine verschlüsselte Nachricht an Bob sendet, ohne vorher einen Schlüssel mit ihm
auszutauschen?
1.
Bob generiert eine Millionen Nachrichten der Form:
„Dies ist Rätsel mit der Zahl x. Der Schlüssel ist y.“
Bob verschlüsselt die Nachrichten mit einem jeweils unterschiedlichen 20Bit Schlüssel und sendet
sie an Alice.
2.
Alice wählt eine Nachricht zufällig aus und führt einen Brute-Force-Angriff durch,
um den Klartext zu ermitteln.
Der dafür erforderliche Arbeitsaufwand ist zwar groß – aber nicht unmöglich.
3.
Alice chiffiert ihre geheime Nachricht mit einem symmetrischen Algorithmus mit dem Schlüssel y,
und sendet sie mit der Zahl x an Bob
4.
Bob weiß, welcher geheime Schlüssel y zur Zahl x gehört, so dass er die Nachricht dechiffrieren
kann.
Der Sinn dieser Methode ist, dass A nur eine Nachricht aufbrechen muss.
Jemand der diese Nachrichten mithört muss alle Nachrichten aufbrechen bis er einmal den richtigen
erwischt.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
105
Diffie Hellmann
Schlüsselaustausch
• Diffie/Hellmann/Merkle
(1976, Stanford-Universität, Kalifornien):
Schlüsselverabredung über unsicheren Kanal
– löst langen Tradition von Streichlisten und Codebüchern ab
• Aufgabenstellung:
Wenn ein Element g einer Gruppe
und die Werte ga und gb gegeben sind,
welchen Wert hat dann gab ?
• in bestimmten Gruppen nur mit enormen
Rechenaufwand lösbar
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
106
53
Diffie Hellmann
Alice sucht
–
Primzahl p, Primitivwurzel g mod p mit 2 < g < p-2 und geheime Zufallszahl a
–
berechnet A = ga mod p
–
Sendet A, g, p an Bob
–
sucht geheime Zufallszahl b
–
berechnet B = gb mod p
–
Sendet B an Alice
–
berechnet K = Ab mod p
–
berechnet K = Ba mod p
{1, 2, … , p-2}
Bob
{1, 2, … , p-2}
Bob
Alice
KAlice = Ab mod p = (ga mod p)b mod p = gab mod p = (gb mod p)a mod p = Ba mod p = KBob
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
107
Diffie Hellmann
Schlüsselaustausch
• Problem:
Man-in-the-middle Attacke
• zusätzlich :
– digitale Signaturen
und
– Message Authentication Codes.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
108
54
RSA Schlüsselsystem
• Public Key Kpub /Private Key Kpriv
C = EKpub (M)
M = DKpriv (C)
• Ronald L. Rivest, Adi Shamir und Leonard
Adleman (1977, MIT)
• RSA um Faktor 1000 langsamer als DES/AES
• RSA praktisch:
– zum Austausch eines Schlüssels
– für symmetrische (schnelle) Verschlüsselung
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
109
RSA
• Signieren von Nachrichten:
• Sender
– Hash Wert:
– Signieren:
– Versenden:
H(M)
SigM = EKpriv ( H(M) )
M, SigM
• Empfänger
– Hash Wert
H(M)
– Vergleich mit HSig = DKpub ( SigM )
• Integrität und Authentizität garantiert
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
110
55
RSA
vereinfachtes Grundprinzip
•
Wie arbeiten privater und öffentlicher Schlüssel?
•
Vorgehensweise: 3 Zahlen
•
–
Erste Zahl x: Multiplikation von 2 Primzahlen x = p · q
–
Zweite Zahl y: eine zufällige Primzahl die Teil des öffentlichen Schlüssels wird
–
Dritte Zahl z:
Wird aus y und dem Modul m von p und q gebildet m= (p-1)(q-1)
y · z 1 mod m
oder
ggT( z , m ) = 1
–
Nachricht M in Blöcke n mit je zwei Zeichen zerlegen,
–
Verschlüsselung mit dem öffentlichem Schlüssel y, m aller Blöcke m jeweils mit
c = ny mod m
–
Entschlüsselung aller Blöcke c jeweils mit dem privatem Schlüssel z, m
n = cz mod m
RSA rechnet in mit sehr großen Zahlen,
die zu einer bestimmten Wahrscheinlichkeit (mehr als 99%)
als Primzahlen angesehen werden können.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
111
RSA
„einfaches” Beispiel
•
•
•
•
•
•
Erste Zahl x: Multiplikation von 2 Primzahlen x = p · q
– p=3 q=5
x=p·q=3·5
x = 15
Zweite Zahl y: eine zufällige Primzahl die Teil des öffentlichen Schlüssels wird
y =7
Dritte Zahl z:
Wird aus y und dem Modul m von p und q gebildet m= (p-1)(q-1)
– m = (p-1)(q-1) =(3-1) *(5-1) = 2 * 4 = 8
m=8
– Das Produkt mit y·z muss ein Vielfaches von m um eins übertreffen: y · z 1 mod m
– Also 7 * z 1 mod 8  erweiterter Euklidischer Algorithmus: 7·7= 49 =6·8 +1
z=7
Nachricht M = „geheim“ in Blöcke b mit je zwei Zeichen zerlegen (ASCII)
– ge = 103 + 256 * 101 = 25959 >>> viel zu groß für verständliches Beispiel
– he = 104 + 256 * 101 = 25960
– im = 105 + 256 * 109 = 28009
Verschlüsselung mit dem öffentlichem Schlüssel x, y also 15 und 7 aller Blöcke m jeweils mit
c = by mod x
– einfaches Beispiel b=2
– 27 mod 15 = 128 mod 15 = 8 * 15 + 8
c=8
Entschlüsselung aller Blöcke c jeweils mit dem privatem Schlüssel z, m
n = cz mod x
– 87 mod 15 = 2097152 mod 15 = 139810 *15 + 2 2 mod 15
b=2
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
112
56
RSA
„einfaches” Beispiel
•
•
•
•
•
Erste Zahl x: Multiplikation von 2 Primzahlen x = p · q
– p=3 q=5
x=p·q=3·5
Zweite Zahl y: zufällige Primzahl die Teil des öffentlichen Schlüssels wird
Dritte Zahl z:
Wird aus y und dem Modul m von p und q gebildet m= (p-1)(q-1)
– m = (p-1)(q-1) =(3-1) *(5-1) = 2 * 4 = 8
– Das Produkt mit y·z muss ein Vielfaches von m um eins übertreffen:
y · z 1 mod m
– Also 7 * z 1 mod 8  erweiterter Euklidischer Algorithmus:
7·7= 49 =6·8 +1
Verschlüsselung mit dem öffentlichem Schlüssel x=15 und y=7
aller Blöcke b jeweils mit
c = by mod x
– einfaches Beispiel b=2
– 27 mod 15 = 128 mod 15 = 8 * 15 + 8
Entschlüsselung aller Blöcke c jeweils mit dem privatem Schlüssel z, m
n = cz mod x
– 87 mod 15 = 2097152 mod 15 = 139810 *15 + 2
2 mod 15
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
x = 15
y =7
m=8
z=7
c=8
b=2
113
Rechentrick für z.B.
25959 19 mod 2080
x a+b =x a x b
19 = 1 + 2 +16 = 20 + 21 + 24
(Zerlegung in 2er Potenzen)
x19 = x1 x2 x16 = X0 X1 X4
Da modulo 2080, werden vom Ergebnis Vielfache von 2080 so lange
abgezogen, bis das Ergebnis kleiner als n 2080 ist.
X0 = 25959 = 12 * 2080 + 999 999 mod 2080
X1 = X02 = 999 2 = 998001 = 479*2080 + 1681 1681 mod 2080
X2 = X12 = 1681 2 = 2825761 = 1358 *2080 + 1121 1121 mod 2080
X3 = X22 = 11212 = 1256641 = 604*2080 + 321 321 mod 2080
X4 = X32 = 3212 = 103041 = 49*2080 + 1121 1121 mod 2080
x19 = x1 x2 x16 = X0 X1 X4 = 999* 1681* 1121 = 905056 *2080 + 119
x19 119 mod 2080
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
114
57
Übung: RSA mit JAVA
Programmiere ein Java Programm zur
1.
2.
3.
Erstellung von Public und Private Key
Verschlüsseln eines Textes mit dem Public Key
Entschlüsseln des Chiffretextes mit dem Private Key
Zusatzaufgabe
a)
b)
Erstellung einer Signierung
Prüfung einer Signatur
Anleitung:
http://www.javamex.com/tutorials/cryptography/rsa_encryption.shtml
WS 2010/11
Generate Keys:
Vorlesung: IT-Sicherheit
M. Harms
115
RSA mit Java
KeyPairGenerator kpg = KeyPairGenerator.getInstance("RSA");
kpg.initialize(2048);
KeyPair kp = kpg.genKeyPair();
Key publicKey = kp.getPublic();
Key privateKey = kp.getPrivate();
KeyFactory fact = KeyFactory.getInstance("RSA");
RSAPublicKeySpec pub = fact.getKeySpec( publicKey, RSAPublicKeySpec.class );
RSAPrivateKeySpec priv = fact.getKeySpec( privateKey, RSAPrivateKeySpec.class );
PrivateKey privKey = fact.generatePrivate( priv );
PublicKey pubKey = fact.generatePublic( pub );
Encrypt
Cipher cipher = Cipher.getInstance("RSA");
cipher.init(Cipher.ENCRYPT_MODE, pubKey);
byte[] cipherData = cipher.doFinal( strg.getBytes() );
Decrypt
Cipher cipher = Cipher.getInstance( "RSA" );
cipher.init( Cipher.DECRYPT_MODE, privKey );
byte[] msg = cipher.doFinal( data );
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
116
58
Angriffe aus RSA
Bob‘s Public Key x
• Faktorisierung
– Gelingt es Eve x = pq zu faktorisieren, hat sie die
selben Informationen wie Bob
• Ungeeignete Benutzung
– Wenn Bob einen zu kleinen Private Key wählt, kann
RSA geknackt werden.
• RSA Falle
– „Signatur verschlüsseln“
• Seitenkanal Attacken
– Trojaner beobachtet Bob‘s Programm beim
verschlüsseln
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
117
Angriffe auf RSA
• Seitenkanal bei Binary Square-andMultiply Exponentiation Algorithm über
BPA
• Primfaktorzerlegung für große Zahlen:
– mit heute bekannten Verfahren praktisch nicht
durchführbar.
– Es ist nicht bewiesen, dass es sich um ein
prinzipiell schwieriges Problem handelt.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
118
59
RSA Faktorisierung
09.01.10, 22:27 Uhr: 232-stellige Zahl faktorisiert
Zahl
Dezimalstellen
rsa120 (399 Bit)
120
Aufwand
100 MIPS-Jahre
Status
512-Bit-Modul
154
8000 MIPS-Jahre
auf schnellem PC in 1/2
Woche machbar
1999
RSA-768
232
20.000 MIPS-Jahre
Aktueller Rekord
1024-Bit-Modul
308
1011 MIPS-Jahre
2048-Bit-Modul
616
1015 MIPS-Jahre
(ganz kurzfristige
Sicherheitsgrenze)
(mittelfristige
Sicherheitsgrenze)
Schätzung der Sicherheit in Dezimalstellen bis 2020:
• optimistisch:
ca. 150
• pessimistisch:
ca. 600
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
119
Angriffe auf RSA
Spezialfälle:
RSA-Verfahren knacken ohne das
Faktorisierungsproblem zu lösen:
Annahme
• private Schlüssel hat nur eine geringe Bitlänge
– Angriff von Wiener:
• Kettenbruchverfahren + Gitterbasenreduktion
– Angriff von Håstad
• ermittelt Klartext
• Klartext wurde für mehrere Empfänger vor dem
Verschlüsseln speziell aufbereitet
(etwa wenn die Nummer des Empfängers in den Klartext
codiert wurde).
• verwendet die „Coppersmith-Methode“,
um kleine Nullstellen eines Polynoms in einer Unbestimmten
zu berechnen, welche wiederum auf Gitterbasenreduktion
basiert.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
120
60
RSA + Padding
•
Problem: RSA Formel ist multiplikativ
c = by mod x
ay·by mod x = (a·b)y mod x
Hat man mehrere Nachrichten: M1, M2, …mit mehreren Signaturen S1, S2, …
lassen sich Signaturen aus Produkten von bekannten Signaturen fälschen
•
Lösung: „Padding“ Verfahren
–
–
–
–
Konkatenation: Klartext oder Hashwert + String R
R hat vorgegebener Struktur (d. h. mit Redundanz)
dann Verschlüsselung oder Signatur
R enthält
• eine Angabe über Länge der Nachricht / Hash-Wertes oder
• eine eindeutige Zeichenfolge, die den Beginn von R kennzeichnet
•
•
Standards: PKCS#1 oder ISO 9796
moderne Paddingverfahren (Optimal Asymmetric Encryption Padding
(OAEP) oder Probabilistic Signature Scheme (PSS):
– verwenden kryptographische Hashfunktionen und sind (unter idealisierten
Annahmen) beweisbar ebenso schwierig zu brechen, wie RSA selbst
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
121
Kryptographische
Herausforderungen
• RSA Factoring Challenge:
– Decimal Digits: 193 wurde faktorisiert:
• 30 „2.2GHz-Opteron-CPU“ years
– Offen z.B.: Decimal Digits: 212
• 740375634795617128280467960974295731425931888892
312890849362326389727650340282662768919964196251
178439958943305021275853701189680982867331732731
089309005525051168770632990723963807867100860969
62537934650563796359
• RSA Secret Key Challenge: $10.000 pro Key
• http://www.mysterytwisterc3.org/
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
122
61
Elliptische Kurven
• Eine elliptische Kurve ist die
Lösungsmenge einer (geeigneten)
kubischen Gleichung
• Eine Grade schneidet die Kurve in drei Punkten
 zwei Punkten lässt sich ein dritter zuordnen
• elliptische Kurven über
– Reellen Zahlen (x-y-Zahlenebene)
– primen Restklassenring
– Bit-Vektoren
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
123
Elliptische Kurven
• Allgemein: y2 + a1 xy + a3 y = a2 x3 + a4 x + a6
• Vereinfacht: y2 = x3 + ax + b
• Punkte auf der Kurve sind abelsche Gruppe
d.h.: Sind P und Q zwei Punkte,
dann ist R=P+Q auch ein Punkt auf der Kurve.
• Einwegfunktion: k und P gegeben, dann ist
D = kP = P+P+P+…+P (also k-mal addiert) einfach zu rechnen,
aber bei gegebenen P und D kann man keine Rückschlüsse auf k
ziehen
 ECDL: k = logP D.
• Wird in diversen Verfahren (z.B. ElGamal EC) eingesetzt
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
124
62
Elliptische Kurven
Quelle: Certicom
Beispiele in R2:
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
125
Elliptische Kurven in Fp
Quelle: Certicom
Beispiele:
a=1, b=0
y2 mod p = x3 + x mod p
P+Q=R
s = (yP - yQ) / (xP - xQ) mod p
xR = s2 - xP - xQ mod p
yR = -yP + s(xP - xR) mod p
2P = R
s = (3xP2 + a) / (2yP ) mod p
xR = s2 - 2xP mod p
yR = -yP + s(xP - xR) mod p
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
126
63
Übung: Elliptische Kurven
Quelle: Certicom
Beispiele:
a=1, b=0
y2 mod p = x3 + x mod p
2P = R
s = (3xP2 + a) / (2yP ) mod p
xR = s2 - 2xP mod p
yR = -yP + s(xP - xR) mod p
Berechne für P = (9,5)
den Wert R=2P.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
127
Übung: Elliptische Kurven
Quelle: Certicom
Beispiele:
a=1, b=0
y2 mod p = x3 + x mod p
2P = R
s = (3xP2 + a) / (2yP ) mod p
xR = s2 - 2xP mod p
yR = -yP + s(xP - xR) mod p
Berechne für P = (9,5)
den Wert R=2P.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
128
64
Elliptische Kurven in F2m
Bsp:
• m=4 also: F24
• g = (0,0,1,0) als Feld-Erzeuger
g0=(0,0,0,1), g1= (0,0,1,0), g2 = (0100), g3 = (1000),
g4 = (0011), g5 = (0110), g6 = (1100), g7 = (1011),
g8 = (0101), g9 = (1010), g10 = (0111), g11 = (1110),
g12 = (1111), g13 = (1101), g14 = (1001) und g15 = (0001)
• Kurve: y2+xy = x3+g4x2+g0
(a=g4, b=g0)
• Punkte der Kurve
(1, g13), (g3, g13), (g5, g11), (g6, g14),
(g9, g13), (g10, g8), (g12, g12), (1, g6),
(g3, g8), (g5, g3), (g6, g8), (g9, g10),
(g10, g), (g12, 0) und (0, 1)
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
129
Elliptische Kurven in F2m
2P = R
s = xP + yP / xP
xR = s2 + s + a
yR = xP + (s+1) xR
• Praktische Applikationen: m= 160
• Erzeuger g geheim halten
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
130
65
Elliptische Kurven in F24
g = (0,0,1,0)
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
131
Schlüsselaustausch
• Alice und Bob einigen sich z.B. auf
– F27 als Feld
– P = (10,11)
• Alice: Geheimschlüssel ist a=2 -> A = 2·P
„Hi Bob, mein Wert ist A.“
• Bob: Geheimschlüssel ist b=3 -> B = 3·P
„Hi Alice, mein Wert ist B.“
• gemeinsames Geheimnis = Schlüssel:
K = a·B = b·A = a·b·P
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
132
66
Vergleich DL / EKDL
Diskreter Logarithmus
Elliptische Kurven
DL
Parameter
Primzahl p
p und
Kurvenparameter a,b
Körper/Ring
Öffentlich
Geheim
Rest g
ge mod p
Exponent e
Punkte auf Kurve
Punkt R = nP
Faktor n
Größe von p
1024 bit
160 bit
Operation
1x mod Multiplikation
2x mod Multiplikation
1x mod Division
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
133
Zero Knowledge Protokolle
Alice:
„Bob, ich kann Dich überzeugen, dass ich das
Geheimnis kenne, ohne direkt darüber zu sprechen.“

Alice,
komm
bitte links
raus!

Bob

Tür mit
Schloß

„Challenge – Response“
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
134
67
ElGamal Kryptosystem
Taher Elgamal (1985)
• Beruht auf dem diskreten Logarithmus
Problem (DL)
• Asymmetrisch (Diffie-Hellmann Idee)
• Effektiv und effizient
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
135
ElGamal Kryptosystem
Schlüsselgenerierung
• Primzahl p so, dass p-q großen Primfaktor q hat
• oder q wählen, p=2q+1 berechnen und auf
Primzahl prüfen
• Primitivwurzel g (Generator)
• a { 2, …, p-2 } wählen
• A = ga mod p
• öffentlicher Schlüssel: (p,g,A)
• geheimer Schlüssel: a
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
136
68
ElGamal Kryptosystem
Vorgehensweise
A = ga mod p
öffentlicher Schlüssel: (p,g,A)
Verschlüsselung von m
• b
{ 2, …, p-2 } wählen
• B = gb mod p
c = Abm mod p
und
Geheimtext: (B,c)
Entschlüsselung durch
Bx c mod p
mit
x=p-1-a
denn:
Bp-1-a c gb(p-1-a) Abm
(gp-1)b ( ga)-b Abm A-b Abm
m mod p
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
137
Digitale Zertifikate
Zertifizierungsinstanz:
vertrauenswürdige Organisation
Inhalt des Zertifikats
• Name des Ausstellers
• Verfahren, Regeln
• Gültigkeitsdatum
• öffentlicher Schlüssel
– Eigentümer
– Informationen
– Geltungsbereich
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
138
69
Digitale Zertifikate
Standards:
• X.509v3
– SSL/TLS, S/MIME, VPN, IPSec, SSH
• PGP (RFC 2440)
• …
Deutsches Signaturgesetz:
• Akkreditierte Anbieter von Zertifikaten
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
139
Digitale elektronische Signatur
Erstellung:
Hash
10010101 EPrivK
Hash
Daten
}
Digital signierte
Daten
10100011
Signatur
10100011
Zertifikat
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
140
70
Digitale elektronische Signatur
Verifikation:
Digital signierte
Daten
Hash
10010101
Hash
Daten
Identisch?
10100011
10100011
DPubK
10010101
Hash
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
141
Digitale Wasserzeichen
•
•
•
•
•
Transparent
Robust
Kapazität
Sicherheit
Performance
z.B. SegMark
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
142
71
Staganographie
• ein Außenstehender erkennt die Existenz
der übertragenen Information nicht
• Dritte erkennen nicht, dass im Medium
Information enthalten ist
• Dritte können selbst bei Wissen um die
versteckte Information diese nicht
ermitteln
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
143
Staganographie
Klassisch
• Geheimtinte, doppelter Briefumschlag,
Micropunkte, Mikrofilm etc., Linguistische
3 Bits versteckt
Steganographie,
(pro Pixel möglich)
RGB: 255,0,0
Wahrnehmungsschwelle
RGB: 254,1,1
Computer
• Audiodatei, Bilddatei, Video, Blog (öffentlich
beschreibbare Information im Internet),
Semagramme
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
144
72
Politische Randbedingungen
• Zulassung für Geheimhaltungsstufen
(z.B. AES)
• Exportverbot (HW, SW)
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
145
Wiederholung: Grundlagen
Was sind “personenbezogene Daten”?
1. Eine Regelung des BDSG.
2. Informationen einer natürlichen Person
3. Informationen einer juristischen Person
4. Unterliegen der informationellen
Selbstbestimmung
5. Müssen weltweit vertraulich behandelt werden
wenn sie in IT Systemen gespeichert werden
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
146
73
Wiederholung: Symm. Chiffre
Welcher der genannten Technolgoien
verwenden ausschließlich symmetrische
Verschlüsselung?
1. SSL
2. MD5
3. Caesar Chiffre
4. RSA
5. 3DES
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
147
Wiederholung: Krypt. Funktionen
Welche der Funktionen wird in der
Kryptographie eingesetzt?
1. Natürlicher Logarithmus
2. Diskreter Logarithmus
3. Sinus
4. Kubische Gleichung
5. Affine Enigma Transformation
6. Linearer Kongruenzgenerator
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
148
74
Wiederholung: Passwort-Ciffre
Welche der Chiffre sind Stand heute für
Passwortdateien sinnvoll?
1. DES
2. SETI
3. AES
4. RSA
5. SHA
6. MD5
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
149
Wiederholung: diskrete Mathematik
Welche g sind Erzeuger für die Funktion
f = gx mod m
auf dem primen Restklassenring
3?
1. g=1 und g=2
2. g=2
3. g=2 und g=3
4. g=3
5. Erzeuger gibt es für diese Randbedingungen
nicht.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
150
75
Wiederholung: Kryptoanalyse
Welche sind Kryptoanalytische Verfahren?
1. Seitenkanalanalyse
2. Seitenflußanalyse
3. Häufigkeitsanyse
4. Wiederholungsanalyse
5. Paarbildungsanalyse
6. Social Engineering
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
151
Wiederholung: Feistel Chiffre
Was sind Anforderungen an einen Feistel
Chiffre?
1. Mindesten 16 Runden im Algorithmus
2. Lawineneffekt
3. 1024 Bit Schlüssellänge
4. Zertifiziert
5. Rijndael Algorithmus
6. Salted Hash kompatibel
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
152
76
Wiederholung: RSA
Was Aussagen zu RSA sind korrekt?
1. RSA ist mathematisch nachgewiesen nicht
knackbar.
2. RSA lässt sich bei kleiner Schlüssellänge mit
einem PC knacken.
3. Ein 1024 Bit Key gilt heute noch als sicher.
4. Theoretisch ist RSA mathematisch knackbar,
der Beweis wurde nie geführt, da es viele
Jahre Rechenzeit benötigen würde.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
153
Wiederholung:
Algorithmenvergleich
Was Aussagen sind korrekt?
1. RSA ist wesentlich schneller als DES.
2. One Time Pad ist sicherer als Vigenere
3. Enigma hatte einen längeren Schlüssel
als DES
4. ECDL ist bei halber Bit-Zahl von P
immer noch sicherer als RSA
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
154
77
Wiederholung: Elektr. Signatur
Was Aussagen sind korrekt?
1. Eine qualifizierte Signatur ist für elektronische
Rechnungen in Deutschland verpflichtend.
2. Digitale Signaturen werden mit dem Private
Key erstellt.
3. Digitale Signaturen werden mit dem
Public-Key erstellt.
4. Digitale Signaturen werden mit einem Hash
Key geprüft.
WS 2010/11
Vorlesung: IT-Sicherheit
M. Harms
155
78
Herunterladen