• Keine Ergebnisse gefunden

Algorithmische Kryptographie (WS2015/16) Kapitel 3 Sicherheitsaspekte und Hilfsfunktionen Walter Unger

N/A
N/A
Protected

Academic year: 2022

Aktie "Algorithmische Kryptographie (WS2015/16) Kapitel 3 Sicherheitsaspekte und Hilfsfunktionen Walter Unger"

Copied!
22
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Algorithmische Kryptographie (WS2015/16)

Kapitel 3

Sicherheitsaspekte und Hilfsfunktionen

Walter Unger

Lehrstuhl für Informatik 1

16:06 Uhr, den 12. Dezember 2015

(2)

3 Inhaltsverzeichnis Walter Unger 12.12.2015 16:06 WS2015/16 Z

Inhalt I

1 Einleitung Einfache Angriffe

2 Hilfsfunktionen OAEP-Verfahren Hashfunktionen Definitionen Merkles-Meta-Methode

3 Weitere Angriffe Abstand der Faktoren Sicherheitsaspekte von RSA

Kann man d bestimmen?

4 Bit-Sicherheit

Sind Teilinformationen sicher?

Sicherheit des LSB Überblick und Beweisidee Beweis

5 Bestimmung von Primzahlen Einleitung

Einfacher Test Soloway-Strassen

(3)

3 Inhaltsverzeichnis Walter Unger 12.12.2015 16:06 WS2015/16 Z

Sicherheitsaspekte und

Hilfsfunktionen

(4)

3:2 Einfache Angriffe Walter Unger 12.12.2015 16:06 WS2015/16 Z

Die Geschichte

Einfache Angriffe über die Gruppenstruktur sind möglich.

PkS RSA ElGamal

Rabin KS DES IDEA AES

1975

1970 1980 1990 2000

(5)

3:3 Merkles-Meta-Methode Walter Unger 12.12.2015 16:06 WS2015/16 Z

Hashfunktionen

Einfache Angriffe über die Gruppenstruktur sind möglich.

Eine Hashfunktionhheisst Zweitnachricht sicher, falls man nicht zumeine zweite Nachrichtm0effizient erzeugen kann, mith(m) =h(m0).

Eine Hashfunktionhheisst kollisionssicher, falls man nicht zwei Nachrichtenmundm0 effizient erzeugen kann, mith(m) =h(m0).

Es reicht aus, Hashfunktionen zu bestimmen, die kollisionssicher sind.

ElGamal

Rabin IDEA AES

1980 1990 2000

(6)

3:4 Merkles-Meta-Methode Walter Unger 12.12.2015 16:06 WS2015/16 Z

Hashfunktionen

Einfache Angriffe über die Gruppenstruktur sind möglich.

Eine Hashfunktionhheisst kollisionssicher, falls man nicht zwei Nachrichtenmundm0 effizient erzeugen kann, mith(m) =h(m0).

Es reicht aus, Hashfunktionen zu bestimmen, die kollisionssicher sind.

Kompressionsfunktionf :{0,1}m→ {0,1}n. Hashfunktionh:{0,1}→ {0,1}n.

x =x1x2. . .xk |xi|=r füri∈ {1, . . . ,k}(m=r+n).

Kodiere inxk+1|xk+1|=r die Länge vonx.

Setzeh0:=0nund bestimme rekursiv:hi :=f(hi−1◦xi) 16i 6k+1.

h:{0,1}→ {0,1}kmitx 7→hk+1.

PkS RSA ElGamal

Rabin KS DES IDEA AES

1975

1970 1980 1990 2000

(7)

3 Inhaltsverzeichnis Walter Unger 12.12.2015 16:06 WS2015/16 Z

Angriffe auf RSA

Einfache Angriffe über die Gruppenstruktur sind möglich.

Um die zu verhindern reicht es aus, OAEP oder kollisionssichere Hashfunktionen zu benutzen.

ElGamal

Rabin IDEA AES

1980 1990 2000

(8)

3:6 Abstand der Faktoren Walter Unger 12.12.2015 16:06 WS2015/16 Z

Angriffe auf RSA

Einfache Angriffe über die Gruppenstruktur sind möglich.

Um die zu verhindern reicht es aus, OAEP oder kollisionssichere Hashfunktionen zu benutzen.

p,qsollten nicht nahe beieinander liegen.

PkS RSA ElGamal

Rabin KS DES IDEA AES

1975

1970 1980 1990 2000

(9)

3:7 Abstand der Faktoren Walter Unger 12.12.2015 16:06 WS2015/16 Z

Angriffe auf RSA

Einfache Angriffe über die Gruppenstruktur sind möglich.

Um die zu verhindern reicht es aus, OAEP oder kollisionssichere Hashfunktionen zu benutzen.

p,qsollten nicht nahe beieinander liegen.

Wählep,qso, daß ggT(p−1,q−1)klein ist.

ElGamal

Rabin IDEA AES

1980 1990 2000

(10)

3:8 Abstand der Faktoren Walter Unger 12.12.2015 16:06 WS2015/16 Z

Angriffe auf RSA

Einfache Angriffe über die Gruppenstruktur sind möglich.

Um die zu verhindern reicht es aus, OAEP oder kollisionssichere Hashfunktionen zu benutzen.

p,qsollten nicht nahe beieinander liegen.

Wählep,qso, daß ggT(p−1,q−1)klein ist.

ϕ(n)sollte nicht nur kleine Primfaktoren haben.

PkS RSA ElGamal

Rabin KS DES IDEA AES

1975

1970 1980 1990 2000

(11)

3:9 Sicherheitsaspekte von RSA Walter Unger 12.12.2015 16:06 WS2015/16 Z

Angriffe auf RSA

Einfache Angriffe über die Gruppenstruktur sind möglich.

Um die zu verhindern reicht es aus, OAEP oder kollisionssichere Hashfunktionen zu benutzen.

p,qsollten nicht nahe beieinander liegen.

Wählep,qso, daß ggT(p−1,q−1)klein ist.

ϕ(n)sollte nicht nur kleine Primfaktoren haben.

Fallsϕ(n)bekannt, dann kannp,q bestimmt werden. ElGamal

Rabin IDEA AES

1980 1990 2000

(12)

3:10 Kann man d bestimmen? Walter Unger 12.12.2015 16:06 WS2015/16 Z

Angriffe auf RSA

Fallsϕ(n)bekannt, dann kannp,q bestimmt werden.

Fallsd bekannt, dann kannp,qbestimmt werden.

Falls ggT(w,n)>1, dann faktorisierenmit dem Algorithmus von Euklid.

Fallsw6≡ ±1 (modn)undw2≡1 (modn), dann gilt:

(w+1)·(w−1) wird vonngeteilt und (w+1),(w−1) werden nicht vonngeteilt

=⇒ggT(w+1,n)liefertp oderq.

Falls die oben genannten Schritte erfolglos, führe folgende Schritte aus.

(13)

3:11 Kann man d bestimmen? Walter Unger 12.12.2015 16:06 WS2015/16 Z

Fallsϕ(n)bekannt, dann kannp,q bestimmt werden.

Fallsd bekannt, dann kannp,qbestimmt werden.

Falls ggT(w,n)>1, dann faktorisieren.

Fallsw6≡ ±1 (modn)undw2≡1 (modn), dann gilt:

(w+1)·(w−1) wird vonngeteilt und (w+1),(w−1) werden nicht vonngeteilt

=⇒ggT(w+1,n)liefertp oderq.

Anderenfalls, führe folgende Schritte aus.

ed−1=2sr mits>1 undr ungerade.

Daed−1 ein Vielfaches vonϕ(n)ist, gilt:w2sr ≡1 (modn).

Bestimme kleinstess0(06s06s)mitw2s

0

r ≡1 (modn).

Falls nun 0 0 und 2s0 −1r 6≡ −1 (modn), so gehe analog

(14)

3:12 Kann man d bestimmen? Walter Unger 12.12.2015 16:06 WS2015/16 Z

Angriffe auf RSA

Einfache Angriffe über die Gruppenstruktur sind möglich.

p,qsollten nicht nahe beieinander liegen.

Wählep,qso, daß ggT(p−1,q−1)klein ist.

ϕ(n)sollte nicht nur kleine Primfaktoren haben.

Fallsϕ(n)bekannt, dann kannp,q bestimmt werden.

Fallsd bekannt, dann kannp,qbestimmt werden.

PkS RSA ElGamal

Rabin KS DES IDEA AES

1975

1970 1980 1990 2000

(15)

3:13 Sind Teilinformationen sicher? Walter Unger 12.12.2015 16:06 WS2015/16 Z

Angriffe auf RSA

Fallsϕ(n)bekannt, dann kannp,q bestimmt werden.

Fallsd bekannt, dann kannp,qbestimmt werden.

Angenommen, es gibt OrakelH mit H(e,n,xemodn) =1⇐⇒x <n2.

Idee: Halbierungssuche unter Verwendung vonH.

Verwende Werte:

xe modn = xemodn 2exemodn = (2x)emodn 4exemodn = (4x)emodn 8exemodn = (8x)emodn

ElGamal

Rabin IDEA AES

1980 1990 2000

(16)

3:14 Sicherheit des LSB Walter Unger 12.12.2015 16:06 WS2015/16 Z

Angriffe auf RSA

Fallsϕ(n)bekannt, dann kannp,q bestimmt werden.

Fallsd bekannt, dann kannp,qbestimmt werden.

Angenommen, es gibt OrakelH mit

H(e,n,xemodn) =1⇐⇒x <n2, dann istx bestimmbar.

Angenommen, es gibt OrakelH mit

H(e,n,xemodn) =1⇐⇒x mod 2=1, dann istx bestimmbar.

PkS RSA ElGamal

Rabin KS DES IDEA AES

1975

1970 1980 1990 2000

(17)

3:15 Sicherheit des LSB Walter Unger 12.12.2015 16:06 WS2015/16 Z

Angriffe auf RSA

Fallsϕ(n)bekannt, dann kannp,q bestimmt werden.

Fallsd bekannt, dann kannp,qbestimmt werden.

Angenommen, es gibt OrakelH mit

H(e,n,xemodn) =1⇐⇒x <n2, dann istx bestimmbar.

Angenommen, es gibt OrakelH mit

H(e,n,xemodn) =1⇐⇒x mod 2=1, dann istx bestimmbar.

bin(x)ist die Binärdarstellung vonx mit führender 1.

ElGamal

Rabin IDEA AES

1980 1990 2000

(18)

3:16 Sicherheit des LSB Walter Unger 12.12.2015 16:06 WS2015/16 Z

Angriffe auf RSA

Angenommen, es gibt OrakelH mit

H(e,n,xemodn) =1⇐⇒x mod 2=1, dann istx bestimmbar.

bin(x)ist die Binärdarstellung vonx mit führender 1.

int(w)ist die Zahl mit der Binärdarstellungw. Fallsint(t)>int(u), dann sind

Last(t−u)die letzten|u|Bits von bin(int(t)−int(u)).

r(i) :Folge vonw0emodn(Anfragen) ans(i) :Antwort des Orakels aufr(i).

t(i) :Folge vonw0, diew =x ergeben.

Diese Zielfolge konvergiert gegen die Lösung.

r(i)wird ausr(i−1)bestimmt.

t(i−1)wird aust(i)undans(i−1)bestimmt.

PkS RSA ElGamal

Rabin KS DES IDEA AES

1975

1970 1980 1990 2000

(19)

3:17 Einleitung Walter Unger 12.12.2015 16:06 WS2015/16 Z

Primzahltest

Allgemeines Vorgehen dabei:

1 Wähle zufällig eine große ungerade Zahlx.

2 Teste, obx eine Primzahl ist.

3 Fallsx keine Primzahl ist, dann wiederhole Verfahren.

Verbleibendes Problem: Teste, ob gegebene Zahlx Primzahl ist.

(20)

3:18 Einleitung Walter Unger 12.12.2015 16:06 WS2015/16 Z

Primzahltest

Allgemeines Vorgehen dabei:

1 Wähle zufällig eine große ungerade Zahlx.

2 Teste, obx eine Primzahl ist.

3 Fallsx keine Primzahl ist, dann wiederhole Verfahren.

Verbleibendes Problem: Teste, ob gegebene Zahlx Primzahl ist.

FallsmPrimzahl und ggT(w,m) =1:wm−1≡1 (modm).

(21)

3:19 Soloway-Strassen Walter Unger 12.12.2015 16:06 WS2015/16 Z

Primzahltest

Allgemeines Vorgehen dabei:

1 Wähle zufällig eine große ungerade Zahlx.

2 Teste, obx eine Primzahl ist.

3 Fallsx keine Primzahl ist, dann wiederhole Verfahren.

Verbleibendes Problem: Teste, ob gegebene Zahlx Primzahl ist.

FallsmPrimzahl und ggT(w,m) =1:wm−1≡1 (modm).

Seimungerade Primzahl, dann gilt für allew:w(m−1)/2mw (modm).

(22)

3:20 Soloway-Strassen Walter Unger 12.12.2015 16:06 WS2015/16 Z

Primzahltest

Allgemeines Vorgehen dabei:

1 Wähle zufällig eine große ungerade Zahlx.

2 Teste, obx eine Primzahl ist.

3 Fallsx keine Primzahl ist, dann wiederhole Verfahren.

Verbleibendes Problem: Teste, ob gegebene Zahlx Primzahl ist.

FallsmPrimzahl und ggT(w,m) =1:wm−1≡1 (modm).

Seimungerade Primzahl, dann gilt für allew:w(m−1)/2mw (modm).

Bestimmes,r mit:m−1=2sr:

Fallswr6≡1 (modm)undw2s

0

6≡ −1 (für ein 06s0<s), dann ist mkeine Primzahl.

Referenzen

ÄHNLICHE DOKUMENTE

Einleitung Hilfsfunktionen Weitere Angriffe Bit-Sicherheit Bestimmung von Primzahlen. 3 Inhaltsverzeichnis Walter Unger 12.12.2015 15:32

4:26 Idee der Datenübertragung Walter Unger 12.12.2015 16:03 WS2015/16 Z?.

Kompositionen III Satz Für jede Sprache aus N P gibt es ein Protokoll, welches Zero-Knowledge ist, und auch dessen Parallelausführung ist Zero-Knowledge.. Satz Für jede Sprache aus N

Viele weitere Beispiele Perfektes Matching Stabile Menge Graphenisomorphismus Kenntnis der Faktoren 3-Färbung eines Graphen 3-SAT Set-Partition-Problem.. Formales Idee zur

Dieses Protokoll werden wir beim elektronischen Geld und dem letzten Wahlsystem noch sehen... Beweist, dass zwei diskrete Logarithmen

7:19 Verfahren ohne möglichem Stimmenkauf Walter Unger 12.12.2015 15:55 WS2015/16

7:7 Wählen durch gegenseitiges Mischen Walter Unger 12.12.2015 15:57 WS2015/16 Z.. Wählen durch gegenseitiges Mischen

erhält ein von der Bank unterschriebenes Public-Key-Verfahren für den Nutzer und den öffentlichen Schlüssel der Bank.. Damit können nun Quittungen und unterschriebene