a) Kryptographisch sichere Pseudozufallsfolgen-Generatoren ⇒ Einwegfunktionen:Wir nehmen der Einfachheit halber an, dass G ein kryptographischsicherer Pseudozufallsfolgen-Generator ist mit Erweiterungsfunktionl(n) = 2n.⋃Dann definiert man eine Funktion f : 1}n∈Æ{0, 2n →n∈Æ{0, ⋃ 1} 2ndurch f(x, y) = G(x) für x, y ∈ {0, 1} n .Dann erfüllt f die Bedingung einer Einwegfunktion:Polynomiale Berechenbarkeit folgt aus der von G.Ang. f ist keine Einwegfunktion. Dann existiert probabilistischer polynomialerAlgorithmus <strong>und</strong> positives Polynom Q, so dassfür unendlich viele n.pr(A(f(x), 1 2n ) ∈ f −1 (f(x))| x ← Ω 2n ) > 1Q(2n)Man benötigt jetzt einen probabilistischen polynomialen AlgorithmusD, der Ω 2n <strong>und</strong> G(Ω n ) ‘unterscheidet’.Bei Eingabe von α ∈ {0, 1} 2n nutzt D den Algorithmus A. D gibt 1aus, falls A ein Urbild von F zu α findet, sonst 0.Wegen f(Ω 2n ) = G(Ω n ) [denn für β ∈ {0, 1} 2n ist|{α ∈ {0, 1} 2n |f(α) = β}| = 2 n · |{γ ∈ {0, 1} n |G(γ) = β}|] istpr(D(G(x)) = 1|x ← Ω n ) =pr(D(f(z)) = 1|z ← Ω 2n ) =pr(A(f(z), 1 2n ) ∈ f −1 (f(z))|z ← Ω 2n ) > 1Q(2n)für unendlich viele n.Andererseits gibt es nur maximal 2 n viele Elemente in {0, 1} 2n , dieUrbilder unter f haben können (denn G hat nur 2 n viele Bilder in{0, 1} 2n ); also wird D nur bei maximal 2 n vielen Elementen aus {0, 1} 2nWert 1 ausgeben. Also pr(D(z) = 1| z ← Ω 2n ) ≤ 2n = 12 2n 2 nDamit: pr(D(G(x)) = 1| x ← Ω n ) − pr(D(z) = 1| z ← Ω 2n )≥ 1 − 1 ≥ 1 für unendlich viele n, Widerspruch.Q(2n) 2 n 2Q(2n)Man kann schließlich mit einfachen Techniken, auf die hier nicht eingegangenwird, aus f eine Funktion f ′ : {0, 1} ∗ → {0, 1} ∗ konstruieren,die eine Einwegfunktion ist. 3737 s. Goldreich [24], S. 36ff.116
) Einwegfunktionen ⇒ kryptographisch sichere Pseudozufalls-Generatoren:Zunächst Begriff des Hard-Core-Prädikats einer Einwegfunktion.Bei einer Einwegfunktion f ist es so gut wie nicht möglich, ein Urbildx aus y = f(x) mit einem effizienten Algorithmus zu bestimmen.Dennoch tritt oft der Fall auf, dass einzelne Bits von x leichtzu berechnen sind. (Z.B. g Einwegfunktion; für x = (x 1 , . . .,x n ) seif(x, x n+1 ) = (g(x), x n+1 ). Dann f Einweg, aber x n+1 leicht zu bestimmen.)Andererseits können bei einer Einwegfunktion nicht alle Bits vonx aus f(x) leicht zu berechnen sein, denn sonst wäre x leicht zu berechnen.Welche Bits schwierig zu bestimmen sind, könnte allerdingsbei jedem x unterschiedlich sein. Jedenfalls ist es plausibel, dass es einegewisse Boolesche Funktion h : {0, 1} ∗ → {0, 1} gibt, so dass h(x) ausf(x) im Wesentlichen genauso schwierig zu bestimmen ist wie x, d.h.die Schwierigkeit, x aus f(x) zu bestimmen, manifestiert sich schon ineinem Bit h(x). Dies ist die Idee der Hard-Core-Prädikate.Def.:Sei h : {0, 1} ∗ → {0, 1} durch einen deterministischen polynomialenAlgorithmus berechenbar. h heißt Hard-Core-Prädikat einer Funktionf : {0, 1} ∗ → {0, 1} ∗ , falls für jeden probabilistischen polynomialenAlgorithmus A (Input Elemente aus {0, 1} ∗ , Output 0 oder 1) <strong>und</strong>jedes positive Polynom P für alle genügend großen n gilt:Bedeutung:pr(A(f(x)) = h(x)| x ← Ω n ) ≤ 1 2 + 1P(n)• Beachte zunächst:Die Bedingung pr(A(f(x)) = h(x)| x ← Ω n ) ≤ 1 + P(n) <strong>und</strong> die2entsprechende Bedingung für den Algorithmus A ′ = 1 + A implizieren,dass |pr(h(x) = 0| x ← Ω n ) − pr(h(x) = 1| x ← Ω n )|vernachlässigbar klein ist, d.h. h verhält sich fast wie Münzwurfauf Ω n .Daher besagt die Bedeutung von Hard-Core-Prädikaten, dass dieBestimmung von h(x) aus f(x) durch einen effizienten Algorithmusbis auf einen vernachlässigbaren Rest nicht besser ist als h(x)durch Münzwurf zu ‘raten’.• Für die Existenz eines Hard-Core-Prädikats kann es zwei Gründegeben:117
- Seite 1:
Universität TübingenWilhelm-Schic
- Seite 5 und 6:
Abbildungsverzeichnis1 Grundschema
- Seite 7 und 8:
EinleitungKryptologie: Wissenschaft
- Seite 9 und 10:
1 GrundbegriffeKlartext (plaintext)
- Seite 11 und 12:
Bei symmetrischen Verschlüsselungs
- Seite 13 und 14:
• Uneingeschränkt sicher:Auch be
- Seite 15 und 16:
werden permutiert. Zeichen bleiben
- Seite 17 und 18:
2.2 Kryptoanalyse monoalphabetische
- Seite 19 und 20:
Buchstabe Anzahl Häufigkeit Buchst
- Seite 22 und 23:
1 2 n.. . . . . . ... .. . .. .. f(
- Seite 24 und 25:
Eine solche Chiffrierung heißt pol
- Seite 26 und 27:
Also entspricht die Häufigkeit ein
- Seite 28 und 29:
alle drei Monate, dann jeden Tag, d
- Seite 30 und 31:
EEIYWX JLNRRU UYVCJC BELDHZ YVSKFE
- Seite 32 und 33:
erzeugten Texten.(zum Vergleich: κ
- Seite 34 und 35:
d ≈0, 0377l(l − 1)κ(c) − 0,
- Seite 36 und 37:
kommt allerdings der in deutschen T
- Seite 38 und 39:
Zur Verdeutlichung dieser Tatsache
- Seite 40 und 41:
Dies ist eine bedingte Wahrscheinli
- Seite 42 und 43:
4 Symmetrische BlockchiffrenWir bet
- Seite 44 und 45:
Das haben wir schon in 2.1(b) über
- Seite 46 und 47:
Die Dechiffrierung von w = vA + b e
- Seite 48 und 49:
δ > 0.Bei einem Chosen-Plaintext-A
- Seite 50 und 51:
4.5 Feistel-ChiffrenFeistel-Chiffre
- Seite 52 und 53:
(L ′ r−1 , R′ r−1 ) = (R 1,
- Seite 54 und 55:
an den Positionen 8, 16, 24, . . .,
- Seite 56 und 57:
Schlüsselpermutation57 49 41 33 25
- Seite 58 und 59:
S-Box 47 13 14 3 0 6 9 10 1 2 8 5 1
- Seite 60 und 61:
die S-Boxen in Runde i + 1 sorgt.)W
- Seite 62 und 63:
Sicherheit erhöhen können. Dies w
- Seite 64 und 65:
Die 2 56 DES -Verschlüsselungsfunk
- Seite 66 und 67: Da S-Boxen nichtlinear sind, kann g
- Seite 68 und 69: auftreten. Die Nichtlinearität wä
- Seite 70 und 71: ten; die S-Box verhält sich für s
- Seite 72 und 73: Nur 2 Möglichkeiten für ( ¯B 1 ,
- Seite 74 und 75: Wendet man mit solchen Klartextblö
- Seite 76 und 77: Wie oben geschildert ist x 13 +x 11
- Seite 78 und 79: Als Element von2 8 ist also x2 das
- Seite 80 und 81: ) Rijndael ist eine iterierte Block
- Seite 82 und 83: ⎛⎜⎝1 0 0 0 1 1 1 11 1 0 0 0 1
- Seite 84 und 85: Wende auf b, c, d, a die SubBytes-T
- Seite 86 und 87: Als Beispiel sei genannt:M. Gorski,
- Seite 88 und 89: 5 Betriebsarten von BlockchiffrenBl
- Seite 90 und 91: sind nur m i und m i+1 beeinflusst,
- Seite 92 und 93: solange aus, bis der fehlerhafte Bl
- Seite 94 und 95: 6.2 Selbstsynchronisierende Stromch
- Seite 96 und 97: 6.3 SchieberegisterDef.:Ein (rückg
- Seite 98 und 99: Beispiele:Sei K =2.a) f(x 3 , x 2 ,
- Seite 100 und 101: Es gilt: Es gibt genau ϕ(2n −1)n
- Seite 102 und 103: C m v 0 = v m . Daher:v m , . . .,v
- Seite 104 und 105: mit den am Ende von 6.6 beschrieben
- Seite 106 und 107: 6.8 Spezielle Stromchiffrena) A5-Fa
- Seite 108 und 109: Ein anderer Punkt ist außerdem von
- Seite 110 und 111: (3) Für jeden probabilistischen po
- Seite 112 und 113: • Die Bedingung in 7.2 für den v
- Seite 114 und 115: teilung auf {0, 1} l(n) . D kann ˜
- Seite 118 und 119: (a) Informationsverlust von f (d.h.
- Seite 120 und 121: Für alle x ∉ L : pr[M(x) = 0]
- Seite 122 und 123: [14] Leonore Blum, Manuel Blum and
- Seite 124: [45] Michael Welschenbach. Kryptogr