Übung_11

Werbung
TECHNISCHE UNIVERSITÄT DARMSTADT
Einführung in die
Kryptographie
FACHGEBIET THEORETISCHE INFORMATIK
PROF. JOHANNES BUCHMANN
DR. JULIANE KRÄMER
WS 2015/ 2016
11. Übungsblatt — 14.01.2016
Ankündigung
-
P1 Hashfunktionen und Kompressionsfunktionen
1. Was ist eine Hashfunktion?
2. Was ist eine Kompressionsfunktion?
3. Was ist eine Einwegfunktion?
4. Was ist eine Kollision?
5. Besitzen Hash- und Kompressionsfunktionen Kollisionen? Warum (nicht)?
6. Was bedeutet es wenn wir sagen, dass eine Hashfunktion schwach bzw. stark kollisionsresistent ist?
7. Welche kryptographischen Schutzziele können mit Hashfunktionen erreicht werden?
P2 Hashfunktionen
Sei f : R → R, x 7→ x − bxc. Dabei ist b·c die sogenannte floor function („abrunden“),
die einer reellen Zahl x die größte
p
ganze Zahl zuordnet, die kleiner oder gleich x ist. (Beispielsweise gilt b 7c = 2.) Betrachte die Hashfunktion
p
h : N≥0 → N≥0 , k 7→ b10 · f ( 3k)c.
1. Was ist die Bildmenge von h, d.h. welche Funktionswerte kann h(k) annehmen?
2. Wieviele Funktionswerte von h mußt Du höchstens untersuchen um eine Kollision zu finden?
3. Gib eine Kollision von h an.
P3 Hashfunktionen aus Kompressionsfunktionen
Es seien die folgenden zwei Verschlüsselungsverfahren gegeben:
1. Klartext- und Schlüsseltextraum sowie Schlüsselraum seien {0, 1}4 . Die Verschlüsselungsfunktion ist XOR:
(a)
Ek (x) = k ⊕ x.
2. Klartext- und Schlüsseltextraum sowie Schlüsselraum seien wie in 1. Die Verschlüsselungsfunktion ist als Exponentiation bzw. Multiplikation zum Modulus 17 definiert. Zu diesem Zweck identifizieren wir einen Bitstring (a3 . . . a0 )
P3
mit der Zahl 1 + i=0 ai · 2i , um aus Klartexten und Schlüsseln ganze Zahlen zu machen.
(b)
Ek (x) = x k mod 17.
(c)
Ek (x) = x · k mod 17.
1
Auf der Grundlage dieser beiden Verschlüsselungsverfahren definieren wir jetzt die Kompressionsfunktionen
g1 (k||x) =
g2 (k||x) =
g3 (k||x) =
(b)
Ek (x) ⊕ k,
(c)
(a)
Ek (Ek (x)),
(b)
(c)
Ek (x) ⊕ Ek (x).
(a) Finden Sie Kollisionen für alle drei Kompressionsfunktionen.
(b) Wir bilden die Hashfunktion h nach dem in der Vorlesung vorgestellten Verfahren aus der Kompressionsfunktion
(a)
(a)
g4 (k||x) = Ek (x) mit Ek (x) wie oben definiert. Bestimmen Sie den Hashwert der Nachricht
m = 10101101011.
H1 Kompressionsfunktion
Sei p = 17 prim und h die folgende Kompressionsfunktion:
h : {1, . . . , p − 1}2 −→ {1, . . . , p − 1}
(x, y) 7−→ 3 x · 5 y mod p.
Finden Sie mit dem Babystep-Giantstep-Algorithmus, der in der Ferienübung eingeführt wurde, ein zweites Urbild zu
h(2, 2) = 4.
2
Herunterladen