14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz...

61
Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie –472– 14: Public-Key-Kryptographie

Transcript of 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz...

Page 1: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14: Grundlagen der Public-Key-Kryptographie

–472– 14: Public-Key-Kryptographie

Page 2: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14: Grundlagen der Public-Key-Kryptographie

Wiederholung: Symmetrische Kryptographie

• 1 Schlüssel für Sender und Empfänger

• Benötigt sicheren Kanal zum Schlüsselaustausch=⇒ skaliert schlecht

• I. d. R. effizient

BobAlice

C = EK(M)

K K

Grafik von C. Lübbemeier, inspiriert von Randall Munroe–473– 14: Grundlagen der Public-Key-Kryptographie

Page 3: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Asymmetrische Kryptographie• Schlüsselpaar: öffentlicher (P K) und geheimer Schlüssel (SK)

• Kein sicherer Kanal benötigt

• Jeder kann verschlüsseln, jedoch nur der Inhaber des geheimenSchlüssels kann entschlüsseln

• I. A. ineffizienter als symmetrische Kryptographie

BobAlice

C = EP KB(M)

(P KA, SKA) (P KB, SKB)

–474– 14: Grundlagen der Public-Key-Kryptographie

Page 4: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Public-Key-KryptographieHistorie

ca. 1971 Ein Mitarbeiter des britischen Geheimdienstes erfindet die“non-secret” Kryptographie(bis Ende der 90er Jahre geheimgehalten)

1974 “Merkle Puzzles”

1976 Diffie und Hellman

1977 Rivest, Shamir, Adleman (RSA)

seit etwa 1990 Zunehmende kommerzielle Bedeutung derasymmetrischen Kryptographie

–475– 14: Grundlagen der Public-Key-Kryptographie

Page 5: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Symmetrische und asymmetrische KryptographiePretty Good Privacy

Data

Encrypt key

using receiver‘s

public key

RSA

Encrypted Message

Encrypt Decrypt

Encrypt data

using random

key

q4fzNeBCRSYqv

Encrypted Key

Generate

Random

Key

Data

TIakvAQkCu2u

Random Key

Encrypted Message

Data

q4fzNeBCRSYqv

Encrypted Key

Decrypt data

using key

Decrypt using

receiver‘s

private key

RSA

TIakvAQkCu2u

Data

Quelle: https://en.wikipedia.org/wiki/Pretty_Good_Privacy

Page 6: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Symmetrische vs. Asymmetrische Kryptosysteme

Symmetrische Kryptosysteme

• Basieren auf effizientenOperationen

• Systematische Analyse

• Heuristiken undComputer-gestützte Analyse

Asymmetrische Kryptosysteme

• Basieren auf harten Problemender Mathematik

• Integer-Faktorisierung

• RSA-Problem

• Diskreter Logarithmus

• Diffie-Hellman-Problem

• . . .

–477– 14: Grundlagen der Public-Key-Kryptographie

Page 7: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Harte ProblemeInteger-Faktorisierungsproblem

Integer-Faktorisierungsproblem

Gegeben eine große Zahl n$← Z, finde seine Primfaktoren q1, . . . , qk, sodass2

n = q1 · . . . · qk.

Vermutung (informell):

• Für große (zufällige) Zahlen n existiert kein effizienter Algorithmus, dermit signifikanter Wahrscheinlichkeit n faktorisieren kann.

–478– 14: Grundlagen der Public-Key-Kryptographie

Page 8: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Harte ProblemeRSA-Problem

RSA-Problem (e-te Wurzel modulo n)

Seien (n, e, C) gegeben, mit n$← Z, e ∈ Z

n und

C = M e mod n

und M geheim. Finde M .

Vermutung (informell):

• Für große und zufällige Zahlen n und M existiert kein effizienterAlgorithmus, der mit signifikanter Wahrscheinlichkeit das RSA-Problemlösen kann.

–479– 14: Grundlagen der Public-Key-Kryptographie

Page 9: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Harte ProblemeDiskretes-Logarithmus-Problem

Diskretes-Logarithmus-Problem

Gegeben g und eine große Primzahl p. Sei a$← Zp geheim. Gegeben

(g, ga mod p), finde a.

Vermutung (informell):

• Für großes p und zufälliges a existiert kein effizienter Algorithmus, dermit signifikanter Wahrscheinlichkeit das Diskrete-Logarithmus-Problemlösen kann.

–480– 14: Grundlagen der Public-Key-Kryptographie

Page 10: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Harte ProblemeDiffie-Hellman-Problem

Diffie-Hellman-Problem

Gegeben g und eine große Primzahl p. Seien a$← Zp und b

$← Zq unabhängigund geheim. Gegeben (g, ga mod p, gb mod p), finde gab.

Vermutung (informell):

• Für großes p und zufällige Zahlen a und b existiert kein effizienterAlgorithmus, der mit signifikanter Wahrscheinlichkeit dasDiffie-Hellman-Problem lösen kann.

–481– 14: Grundlagen der Public-Key-Kryptographie

Page 11: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Wiederholung Zahlentheorie

• Wiederholung Gruppentheorie

• RSA: Modulare Arithmetik

◦ Restklassen◦ Kongruenz◦ Eulersche ϕ-Funktion

• Diffie-Hellman: Modulare Arithmetik und Potenzen

◦ Zyklische Gruppen◦ Generator, Ordnung

–482– 14: Grundlagen der Public-Key-Kryptographie

Page 12: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14.1: Wiederholung: Gruppentheorie

–483– 14: Grundlagen der Public-Key-Kryptographie 14.1: Wiederholung: Gruppentheorie

Page 13: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14.1: Wiederholung: Gruppentheorie

• Gruppoid: nichtleere Menge G und Verknüpfung auf G

• Halbgruppe: Gruppoid mit assoziativer Verknüpfung

• Monoid: Halbgruppe mit neutralem Element

• Gruppe: Monoid mit Inversem

Monoid HalbgruppeGruppe Gruppoid

–484– 14: Grundlagen der Public-Key-Kryptographie 14.1: Wiederholung: Gruppentheorie

Page 14: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Gruppoid und Verknüpfung

Definition 23 (Gruppoid)

Sei G eine nichtleere Menge. Eine Funktion ◦ : G×G→ G bezeichnen wirals Verknüpfung auf G. Das Paar (G, ◦) bezeichnen wir als Gruppoid.

• Beispiele: (N, +), (Z, +), (N,−), (Z, ·), . . .

• Wir schreiben auch a ◦ b statt ◦(a, b)

• Wir schreiben auch G statt (G, ◦) wenn ◦ klar ist

• Ordnung von G: Anzahl Elemente in G (|G|)• Wir nennen (G, ◦) kommutativ (abelsch) wenn für alle a, b ∈ G:

a ◦ b = b ◦ a

–485– 14: Grundlagen der Public-Key-Kryptographie 14.1: Wiederholung: Gruppentheorie

Page 15: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Gruppeneigenschaften: Halbgruppe

Definition 24 (Halbgruppe)

Sei (G, ◦) ein Gruppoid. Wir nennen ◦ assoziativ und (G, ◦) eineHalbgruppe genau dann, wenn für alle a, b, c ∈ G gilt:

a ◦ (b ◦ c) = (a ◦ b) ◦ c.

• Beispiel: (Z, +) ist eine Halbgruppe

a + (b + c) = (a + b) + c

• Beispiel: (Z,−) ist keine Halbgruppe

6− (5− 4) 6= (6− 5)− 4.

–486– 14: Grundlagen der Public-Key-Kryptographie 14.1: Wiederholung: Gruppentheorie

Page 16: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Gruppeneigenschaften: Monoid

Definition 25 (Monoid)

Sei (G, ◦) eine Halbgruppe. Existiert ein e ∈ G, sodass für alle a ∈ G gilt

e ◦ a = a ◦ e = a,

so nennen wir e neutrales Element und (G, ◦) einen Monoid.

• Beispiel: (Z, +) ist ein Monoid

0 + a = a + 0 = a

• Beispiel: (N, +) ist kein Monoid (Warum?)

–487– 14: Grundlagen der Public-Key-Kryptographie 14.1: Wiederholung: Gruppentheorie

Page 17: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Gruppeneigenschaften: Gruppe

Definition 26 (Gruppe)

Sei (G, ◦) ein Monoid. Existiert zu jedem a ∈ G ein Inverses a−1 ∈ G, sodassgilt

a ◦ a−1 = a−1 ◦ a = e,

so nennen wir (G, ◦) eine Gruppe.

• Beispiel: (Z, +) ist eine Gruppe

a + (−a) = 0

• Beispiel: (N, +) ist keine Gruppe (Warum?)

–488– 14: Grundlagen der Public-Key-Kryptographie 14.1: Wiederholung: Gruppentheorie

Page 18: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Gruppeneigenschaften: Eindeutigkeit

Satz 27 (Eindeutigkeit des neutralen Elements)

In jedem Monoid existiert genau ein neutrales Element.

Satz 28 (Eindeutigkeit des Inversen)

In jeder Gruppe existiert zu jedem Element genau ein Inverses.

–489– 14: Grundlagen der Public-Key-Kryptographie 14.1: Wiederholung: Gruppentheorie

Page 19: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Gruppen: Beispiele

Halbgruppe Monoid Gruppe(G, ◦) (assoziativ?) (neutr. Element?) (Inverses?)

(Zn, +) X (a + (b + c) = (a + b) + c) X (0) X (−a)(Zn,−)(Zn, ·)

–490– 14: Grundlagen der Public-Key-Kryptographie 14.1: Wiederholung: Gruppentheorie

Page 20: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14.2: Modulare Arithmetik

–491– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 21: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14.2: Modulare Arithmetik

• Uhr: Stunden mod 24,Minuten mod 60,Sekunden mod 60, . . .

• Rechnerarithmetik: mod 2w,w ∈ {8, 16, 32, 64}

• . . .

–492– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 22: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Division mit Rest

Satz 29

Seien a ∈ N0 und n ∈ N. Dann gibt es eindeutig bestimmte q ∈ N0,r ∈ {0, . . . , n− 1} mit

a = n · q + r.

Entsprechend definieren wir die Operationen “ div ” und “mod” durch

a div n = q und a mod n = r

(das ganzzahlige Teilen und die Berechnung des Restes).

–493– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 23: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Division mit Rest

Beispiele:10 div 7 = ? 10 mod 7 = ?33 div 4 = ? 33 mod 4 = ?−7 div 5 = ? −7 mod 5 = ?

–494– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 24: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Restklassen

Modulo n sind alle Werte i · n + r äquivalent.

Definition 30

Seien n ∈ N und r ∈ Z. Die Restklasse von r modulo n ist

{i · n + r|i ∈ Z}

Ein Element einer Restklasse bezeichnet man auch als Repräsentant derRestklasse. Die natürlichen Repräsentanten sind die Zahlen

z ∈ {0, . . . , n− 1}.

Die Menge aller Restklassen modulo n, geschrieben Zn, bildet, zusammenmit der Addition und der Multiplikation, den Restklassenring mod n.

–495– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 25: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Restklassen

Definition:

{i · n + r|i ∈ Z}, z ∈ {0, . . . , n− 1}Beispiele:

• Z3 besteht aus den folgenden Restklassen:

◦ Restklasse ’0’ : {. . . ,−12,−9,−6,−3, 0, 3, 6, 9, 12, . . .}◦ Restklasse ’1’ : {. . . ,−11,−8,−5,−2, 1, 4, 7, 10, 13, . . .}◦ Restklasse ’2’ : {. . . ,−10,−7,−4,−1, 2, 5, 8, 11, 14, . . .}

• Z5 besteht aus den folgenden Restklassen:

◦ Restklasse ’0’ : {. . . ,−20,−15,−10,−5, 0, 5, 10, 15, 20, . . .}◦ Restklasse ’1’ : {. . . ,−19,−14,−9,−4, 1, 6, 11, 16, 21, . . .}◦ Restklasse ’2’ : {. . . ,−18,−13,−8,−3, 2, 7, 12, 17, 22, . . .}◦ Restklasse ’3’ : {. . . ,−17,−12,−7,−2, 3, 8, 13, 18, 23, . . .}◦ Restklasse ’4’ : {. . . ,−16,−11,−6,−1, 4, 9, 14, 19, 24, . . .}

–496– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 26: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Bemerkungen

• Jede Restklasse hat unendlich viele Repräsentanten (i · n + z) ∈ Z.

• Nie vergessen: Mathematisch bedeutet eine Berechung in Zn, dassegal ist, wie eine Restklasse repräsentiert wird!

• Zn besteht aus genau n Restklassen.

• Wenn klar ist, das wir für ein bestimmtes n in Zn rechnen, schreiben wirauch “a = b” statt “a ≡ b (mod n)”.

–497– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 27: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Die Kongruenz-Relation

Definition 31 (Kongruenz)

Ista mod n = b mod n,

dann sind a und b kongruent modulo n, wir schreiben

a ≡ b (mod n).

Beispiel:

• 10 mod 7 = 17 mod 7 ⇐⇒ 10 ≡ 17 (mod 7)

–498– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 28: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Eigenschaften mod n

Satz 32 (Äquivalenzrelationen)

Für alle a, b, n ∈ N gelten die folgenden Eigenschaften

Reflexivität: a ≡ a (mod n)

Symmetrie: a ≡ b (mod n) ⇐⇒ b ≡ a (mod n)

Transitivität: (a ≡ b (mod n)) ∧ (b ≡ c (mod n)) =⇒ a ≡ c (mod n)

Beispiele:

• 10 ≡ 10 (mod 7)

• 10 ≡ 17 (mod 7) ⇐⇒ 17 ≡ 10 (mod 7)

• (10 ≡ 17 (mod 7)) ∧ (17 ≡ 3 (mod 7)) =⇒ 17 ≡ 3 (mod 7)

–499– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 29: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Rechenregel mod n

Satz 33 (Regel vom Vielfachen)

Für alle a, b ∈ N mit a > b gilt: (a ≡ b (mod n)) ⇐⇒ n|(a− b).

Beispiele:

• 17 ≡ 10 (mod 7) ⇐⇒ 7|(17− 10) = 7|7• 38 ≡ 13 (mod 5) ⇐⇒ 5|(38− 13) = 5|25

–500– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 30: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Mehr Rechenregeln mod n

Satz 34

Es gilt:

1 (a + b) mod n = (a mod n) + (b mod n) mod n

2 (a− b) mod n = (a mod n)− (b mod n) mod n

3 (a · b) mod n = (a mod n) · (b mod n) mod n

4 ad mod n = (ad−x · ax) mod n = ((ad−x mod n) · (ax mod n)) mod n(für x ≤ d)

–501– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 31: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Mehr Rechenregeln mod n

Beispiele:

(100 + 90) mod 11 = ((100 mod 11) + (90 mod 11)) mod 11

= (1 + 2) mod 11 = 3

(100− 90) mod 11 = ((100 mod 11)− (90 mod 11)) mod 11

= (1− 2) mod 11 = 10

(100 · 90) mod 11 = ((100 mod 11) · (90 mod 11)) mod 11

= (1 · 2) mod 11 = 2

35 mod 7 = ((32 mod 7) · (33 mod 7)) mod 7

= (9 mod 7) · (27 mod 7) mod 7 = (2 · 6) mod 7 = 5

–502– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 32: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Konsequenz

Folgerung

Bei Berechnungen modulo n kann man Zwischenergebnisse (alle Summen,alle Differenzen und alle Produkte) auf Werte in {0, . . . , n− 1} reduzieren.

–503– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 33: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Die Menge der Invertierbaren: Z∗n

Definition 35 (Menge der Invertierbaren Elemente)

Sei n ∈ N. Z∗

n ist definiert als Menge aller Zahlen z ∈ Zn zu denen jeweils einmultiplikatives Inverses existiert:

Z∗

n :={

z | ∃z−1 ∈ Zn : z · z−1 = 1}

.

• Z∗

n ist die Menge aller Zahlen in Zn, die teilerfremd zu n sind:

Z∗

n = {z ∈ Zn : ggT(z, n) = 1}

• Allgemein für n prim: Z∗

n = {1, 2, . . . , n− 1}• Beispiel n = 5: Z∗

5 = {1, 2, 3, 4}• Beispiel n = 9: Z∗

9 = {1, 2, 4, 5, 7, 8}

–504– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 34: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Eulersche Phi-Funktion ϕ

Definition 36 (Eulersche Phi-Funktion)

Sei n ∈ N, dann ist ϕ(n) die Anzahl an teilerfremden Zahlen i ∈ N mit i < n.D.h. es gilt:

ϕ(n) = |{i ∈ Zn : ggT(i, n) = 1}| .

Rechenregeln:

n prim: ϕ(n) = n− 1

nk mit n prim und k > 1 : ϕ(nk) = nk − nk−1

n = p · q : ϕ(n) = ϕ(p) · ϕ(q)

–505– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 35: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Eulersche Phi-Funktion ϕ

Beispiele:

ϕ(7) = |{1, 2, 3, 4, 5, 6}|= 6

ϕ(9) = |{1, 2, 4, 5, 7, 8}|= ϕ(32) = 32 − 31 = 9− 3 = 6

ϕ(35) = ϕ(7 · 5) = ϕ(7) · ϕ(5)

= (7− 1) · (5− 1) = 24

–506– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 36: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Allgemeine Potenz-Rechenregel

Satz 37 (Euler)

Für a, b, c ∈ N mit ggT(a, c) = 1 gilt:

ab mod c = ab mod ϕ(c) mod c.

Beispiel für ggT(a, c) = 1: a = 5, b = 7, c = 9

ϕ(9) = 6

57 mod 9 ≡ 57 mod 6 mod 9

= 51 mod 9 = 5

5100001 mod 11 = ?

–507– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 37: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Allgemeine Potenz-Rechenregel: Gegenbeispiel

Satz 38 (Euler)

Für a, b, c ∈ N mit ggT(a, c) = 1 gilt:

ab mod c = ab mod ϕ(c) mod c.

Gegenbeispiel für ggT(a, c) 6= 1: a = 6, b = 7, c = 9

ϕ(9) = 6

67 mod 9 ≡ 67 mod 6 mod 9

= 61 mod 9 = 6 6≡ 0.

–508– 14: Grundlagen der Public-Key-Kryptographie 14.2: Modulare Arithmetik

Page 38: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14.3: RSA-Verschlüsselungsverfahren

–509– 14: Grundlagen der Public-Key-Kryptographie 14.3: RSA

Page 39: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14.3: RSA-Verschlüsselungsverfahren

Vorbereitung

1 Wähle große, zufällige, unabhängige und geheime Primzahlen p und q

(mind. 1024 Bit)

2 Berechne: n = p · q3 Berechne: ϕ(n) = (p− 1)(q − 1)

4 Wähle: e ∈ Z∗

ϕ(n), d.h., ggT(e, ϕ(n)) = 1

5 Berechne d mited mod ϕ(n) = 1

Anmerkung: Wir wählen ggT(e, ϕ(n)) = 1 damit d existiert.

–510– 14: Grundlagen der Public-Key-Kryptographie 14.3: RSA

Page 40: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Das naive RSA-Verschlüsselungssystem

• Klartextmenge = Chiffretextmenge = Zn = {0, 1, . . . , n− 1}• Öffentlicher Schlüssel: PK = (e, n)

• Geheimer Schlüssel: SK = (d, n)

• Verschlüsselung:

C ←Me mod n

• Entschlüsselung:

M ← Cd mod nBeobachtung: Es gilt

Cd ≡ (Me)d ≡Med mod ϕ(n) ≡M1 ≡M (mod n)

–511– 14: Grundlagen der Public-Key-Kryptographie 14.3: RSA

Page 41: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Naive RSA-Verschlüsselung: Beispiel

• Wähle: p = 13, q = 11

• Berechne: n = p · q = 143

• Berechne:

ϕ(n) = (p− 1)(q − 1) = 120

• Wähle: e = 7, ggT(7, 120) = 1

• Berechne:

d = e−1 mod ϕ(n) = 7−1 ≡ 103 (mod 120).

• Verschlüsseln eines Klartextes M = 5:

C ≡ 57 ≡ 78125 ≡ 47 (mod 143)

• Entschlüsseln:

M ≡ 47103 ≡ 5 (mod 143)–512– 14: Grundlagen der Public-Key-Kryptographie 14.3: RSA

Page 42: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Sicherheit von RSA

Die Sicherheit des RSA-Systems beruht auf der (unbewiesenen) Vermutung,dass es schwierig ist, n zu faktorisieren (wenn p und q groß genug sind).

Anekdote: Frank Cole widerlegt 1903 eine fast 200 Jahre alte Vermutung vonMersenne:

Obwohl er die Sonntage dreier Jahre benötigte, um die Faktorenvon 267 − 1 zu finden, konnte er innerhalb weniger Minuten, ohneweitere Worte darüber zu verlieren, ein großes Publikum davonüberzeugen, daß diese Zahl keine Primzahl war, indem er einfachdie Arithmetik der Berechnungen aufschrieb:267 − 1 = 193707721 · 761838257287

–513– 14: Grundlagen der Public-Key-Kryptographie 14.3: RSA

Page 43: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Faktorisierung

Man könnte auf die Idee kommen, eine Liste aller Primzahlen bis zu einerbestimmten Größe zu erstellen. Um n zu faktorisieren, muss man nurprobieren, n durch alle Primzahlen bis

√n zu teilen.

• Der Ansatz funktioniert grundsätzlich!

• Nur gibt es zu viele Primzahlen. Sei, z.B. N das Produkt zweier 1024-bitPrimzahlen. Die Anzahl dieser Primzahlen übersteigt

21023/211 = 21012 ≈ 4.4 · 10303.

• Selbst wenn wir 10100 Primzahlen pro Sekunde erzeugen könnten,bräuchten wir 4.4 · 10203 Sekunden für das Erzeugen der Liste.

• Es gibt bessere Faktorisierungsalgorithmen, aber unser Universum istnur etwa 4.3 ∗ 1017 Sekunden jung

–514– 14: Grundlagen der Public-Key-Kryptographie 14.3: RSA

Page 44: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

“Vorstellbare Angriffe” auf RSA

1 Faktorisieren von n. (Gilt als extrem schwierig!)

2 Berechnen von ϕ(n). (Äquivalent zur Faktorisierung von n)

3 Berechnen der e-ten Wurzel modulo n (“RSA-Problem”).(Vermutlich ebenso schwierig wie die Faktorisierung.)

4 Iteriertes Verschlüsseln des Kryptogramms.(Erfordert mit überwältigender Wahrscheinlichkeit astronomisch vieleIterationen→ nächste Folie.)

–515– 14: Grundlagen der Public-Key-Kryptographie 14.3: RSA

Page 45: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Iteriertes Verschlüsseln

Geg. y ∈ Z∗

n, wende den folgenden Algorithmus an:

1 x← y.

2 Solange xe 6≡ y mod n: x← xe mod n.

3 Gib x aus. (Offenbar gilt: y ≡ xe (mod n)).

• Iterative Verschlüsselung terminiert nach endlicher Zeit.

• In der Praxis: endliche Zeit fast immer überwältigend groß.

Beispiel: e = 17, n = 2773, y = 2209;

• 220917 mod 2773 = 1504

• 150417 mod 2773 = 2444

• 244417 mod 2773 = 470

• 47017 mod 2773 = 2209 Heureka! Es gilt: x = 470

–516– 14: Grundlagen der Public-Key-Kryptographie 14.3: RSA

Page 46: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14.4: Zyklische Gruppen und Generator

–517– 14: Grundlagen der Public-Key-Kryptographie 14.4: Zyklische Gruppen und Generator

Page 47: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14.4: Zyklische Gruppen und Generator

Vorbereitung von Diffie-Hellman:

1 Wähle eine “große” Primzahl p. (≥ 2048 Bit ≈ 90 Bit Sicherheit)

Eine Primzahl p hat genau zwei natürliche Teiler: 1 und p

2 Wähle eine Generator g der (zykl.) Gruppe Z∗

p = {1, 2, . . . , p− 1}

–518– 14: Grundlagen der Public-Key-Kryptographie 14.4: Zyklische Gruppen und Generator

Page 48: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Generator (auch Erzeugendes Element)

Definition 39 (Untergruppe)

Sei a ∈ Z∗

p, dann nennen wir

〈a〉 = {ai mod p : i ∈ Z∗

p}

die von a erzeugte Untergruppe von Z∗

p.

Definition 40 (Generator)

Sei g ∈ Z∗

p und es gilt: 〈g〉 = Z∗

p, dann nennen wir g den Generator (aucherzeugendes Element) der Gruppe Z

p.

Wir nennen eine Gruppe (G, ◦) zyklisch wenn es mind. einen Generatorg ∈ G gibt.

–519– 14: Grundlagen der Public-Key-Kryptographie 14.4: Zyklische Gruppen und Generator

Page 49: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Beispiel: Generator

Sei p = 5. Dann gilt Z∗

5 = {1, 2, 3, 4}.• 〈1〉 = {1} 6= Z

5

• 〈2〉 = {2, 4, 3, 1} = Z∗

5

• 〈3〉 = {3, 4, 2, 1} = Z∗

5

• 〈4〉 = {4, 1} 6= Z∗

5

2 und 3 sind Generatoren von Z∗

5.

Beobachtung:

• Die Ordnung einer Untergruppe ist immer ein natürlicher Teiler von p− 1.

• Ein Zyklus endet immer mit 1!

• Folgerung: Die Ordnung von 〈a〉 ist die kleinste Zahl n ∈ N für die gilt:

an mod p = 1.

–520– 14: Grundlagen der Public-Key-Kryptographie 14.4: Zyklische Gruppen und Generator

Page 50: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14.5: Diffie-Hellman-Schlüsselaustausch

–521– 14: Grundlagen der Public-Key-Kryptographie 14.5: Diffie-Hellman

Page 51: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14.5: Diffie-Hellman-Schlüsselaustausch

A← ga mod p

B ← gb mod p

C ← EK(M)

a$← Zp b

$← Zp

K ← Ba mod p K ← Ab mod p

1 Alice und Bob einigen sich auf eine große Primzahl p und einenGenerator g ∈ Z

p

2 Alice wählt geheimes a ∈ Z∗

p, berechnet und veröffentlicht A← ga mod p

3 Bob wählt geheimes b ∈ Z∗

p, berechnet und veröffentlicht B← gb mod p

4 Beide berechnen: K← Ba ≡ gab ≡ Ab mod p.

5 Optional Hashing: K ← H(K)–522– 14: Grundlagen der Public-Key-Kryptographie 14.5: Diffie-Hellman

Page 52: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Diffie-Hellman: Man-in-the-Middle-Angriff

A← ga mod p A′ ← ga′

mod p

B′ ← gb′

mod p B ← gb mod p

a$← Zp b

$← Zp

KA ← B′a mod p

KA ← Ab′

mod p

KB ← A′b mod p

KB ← Ba′

mod p

• Eve fängt A und B ab (g und p sind öffentlich)

• Eve wählt neues a′ und b′, berechnet A′ und B′ und schickt A′ an Bobund B′ an Alice

• =⇒ Diffie-Hellman benötigt einen sicheren Kanal oder zumindesteinseitige Authentisierung

–523– 14: Grundlagen der Public-Key-Kryptographie 14.5: Diffie-Hellman

Page 53: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Diffie-Hellman-SchlüsselaustauschBeispiel mit sehr kleinen Zahlen

1 Wähle p und Generator g: p = 11, g = 6,

2 a = 4, A = 64 mod 11 = 9

3 b = 3, B = 63 mod 11 = 7

4 Die Berechnung des geheimen Schlüssels:

◦ Ba ≡ 74 ≡ 3 (mod 11),◦ Ab ≡ 93 ≡ 3 (mod 11),◦ gab ≡ 612 ≡ 3 (mod 11).

• Alice und Bob haben sich auf 3 als Geheimnis geeinigt.

• Ein Angreifer müsste gab mod p berechnen, obwohl er weder a noch b

kennt.

–524– 14: Grundlagen der Public-Key-Kryptographie 14.5: Diffie-Hellman

Page 54: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Spezielle Potenz-Rechenregel

Spezielle Potenz-Rechenregel

Sei p prim, g ∈ Z∗

p und a ∈ N, dann gilt:

ga mod p = ga mod p−1 mod p.

(Weil p prim ist, gilt immer ggT(g, p) = 1 und ϕ(p) = p− 1.)

Beispiel: a = 12, g = 6, p = 11

612 ≡ 612 mod 10 ≡ 62 ≡ 36 ≡ 3 (mod 11)

–525– 14: Grundlagen der Public-Key-Kryptographie 14.5: Diffie-Hellman

Page 55: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14.6: Digitale Unterschriften

–526– 14: Grundlagen der Public-Key-Kryptographie 14.6: Digitale Unterschriften

Page 56: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14.6: Digitale UnterschriftenWeitere Anwendung von RSA

Unterschrift “von Hand”:

• Physikalische Verbindung mit dem unterschriebenen Dokument (beidessteht auf dem gleichen Blatt).

• Fälschen erfordert einiges Geschick (wenn die Fälschung bei einergründlichen Prüfung nicht auffallen soll . . . ).

• Kopieren einer Unterschrift ist nicht möglich(Fotokopien haben einen geringeren Beweiswert als Originale).

–527– 14: Grundlagen der Public-Key-Kryptographie 14.6: Digitale Unterschriften

Page 57: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

Das naive RSA-Signaturverfahren

• Vorbereitung: Siehe RSA-Verschlüsselungsverfahren

• Geheimer Schlüssel: (d, n)

• Öffentlicher Schlüssel: (e, n)

• Kryptographische Hashfunktion H

Signieren:

1 Berechne h← H(M)

2 Berechne s← hd mod n

Verifzieren:

1 Berechne h← se mod n

2 Teste ob H(M) = h

Für korrektes (M, s) gilt:

h =(

hd)e

mod n = h1 mod ϕ(n) mod n = h.

–528– 14: Grundlagen der Public-Key-Kryptographie 14.6: Digitale Unterschriften

Page 58: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14.7: Sicherheitsparameter

–529– 14: Grundlagen der Public-Key-Kryptographie 14.7: Sicherheitsparameter

Page 59: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14.7: Sicherheitsparameter

• Schlüssellänge/Primzahlgröße/Gruppenordnung in Anzahl Bits

Schutz Symmetrisch Asymmetrisch

Schwach (wenige Sekunden) 64 816Kurzfristig (wenige Wochen) 80 1248Mittelfristig (bis 2030) 112 2432Langfristig (bis 2040) 128 3248Stark 256 15424

(Quelle: http://www.keylength.com/en/3/)

–530– 14: Grundlagen der Public-Key-Kryptographie 14.7: Sicherheitsparameter

Page 60: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14.8: Schlussbemerkungen

–531– 14: Grundlagen der Public-Key-Kryptographie 14.8: Schlussbemerkungen

Page 61: 14: Grundlagen der Public-Key-Kryptographie...Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17) 14: Grundlagen der Public-Key-Kryptographie Wiederholung: Symmetrische

Eik List, Jakob Wenzel IT-Sicherheit und Datenschutz (WS 16/17)

14.8: Schlussbemerkungen

Sie sollten in der Lage sein,

• beispielhaft zu erläutern, wie Public-Key-Kryptographie grundsätzlichfunktioniert.

• Diffie-Hellman und RSA erklären zu können.

• DH/RSA-Beispiele mit kleinen Zahlen zu berechnen,

• Fragen zu Sicherheit und Korrektheit des RSA-Kryptosystems zubeantworten.

–532– 14: Grundlagen der Public-Key-Kryptographie 14.8: Schlussbemerkungen