Kryptographische Hash-Funktionen Claudia Molthahn, Norbert Schrörs 14. Januar 2009.

Post on 05-Apr-2015

106 views 1 download

Transcript of Kryptographische Hash-Funktionen Claudia Molthahn, Norbert Schrörs 14. Januar 2009.

Kryptographische Hash-Funktionen

Claudia Molthahn, Norbert Schrörs 14. Januar 2009

2

Gliederung

Allgemeines zu Hash-Funktionen

Einordnung in die Kryptographie

Anwendung kryptographischer Hash-Funktionen

Sicherstellung der Integrität

Anlass zur kryptographischen Nutzung

Funktionsweise krypt. Hash-Funktionen

Beispiel –CvHP-Hash-Funktion

Mögliche Angriffe

Anforderungen an kryptographische Hash-Funktionen

Sicherstellung der Authentizität

Beispiele von kryptographischen Hash-Funktionen

3

Allgemeines zu Hash-Funktionen Von „to hash“ (engl. „zerhacken“)

Im Deutschen „Streuwertfunktion“

Auch Hash-Allgorithmus (Informatik)

Anwendungsgebiete

Informatik (z.B. Datenbanken)

Informationssicherheit im Internet (z.B. Kontrolle von Downloads)

Verschlüsselung von Passwortdateien und digitaler Signaturen

4

Einordnung in d. Kryptographie

Kryptographie

Vertraulichkeit Fälschungssicherheit

Integrität

Authentizität

5

Anwendung krypt. Hash-Fkt.

Überprüfung einer beliebig langen Nachricht (M) auf Abänderungen (Integrität) und Verfasserzugehörigkeit (Authentizität)

Integrität?

=Authentizität?

Sender Empfänger

Nicht geheim! Nicht geheim!

6

Nicht geheim!

Sicherstellung der Integrität

SENDUNG

+

Hashwert

SENDER (Bob)

Nicht geheim!

Hashwert

Hash- Funktion„Hash“

7

Sicherstellung der Integrität

SENDUNG

+

Hashwert

Nicht geheim!

Nicht geheim!

EMPFÄNGER (Alice)

Hashwert

Hashwert

Vergleich

Hash- Funktion„Hash“

8

Anlass zur kryptogr. Anwendung Public-Key-Verschlüsselung ist für große Datenmengen zu

aufwendig und zu langsam Dokumente müssen nicht geheim gehalten werden

Idee: Verfahren komprimiert Daten eines Dokuments auf einen Zahl-

Wert (Hash-Wert) und weist diesem eine möglichst eindeutige ID zu (digitaler Fingerabdruck bzw. Signatur).

Die Prüfung auf Integrität und Authentizität erfolgt mit Hilfe des Hash-Wertes und des digitalen Fingerabdruck (Signatur).

9

Beispiel

Nicht geheim!

SENDER

Hashwert

Hash- Funktion„Hash“

EMPFÄNGER

Hashwert

Hashwert

Vergleich

Hash- Funktion„Hash“

Nicht geheim!

10

Beispiel – CvHP-Hash-FunktionBerechne den Hash-Wert der Nachricht mit Hilfe der folgenden Funktion:

Wähle dazu zwei (große) Primzahlen und mit und bestimme so, dass die Ordnung der Gruppe hat.

Bestimme mit auf die gleiche Weise.

qp 12 qp

*pbab

*pa

21:),( 21mm

pbammh

a

M

*p

11

Beispiel – CvHP-Hash-Funktion Bestimmung von :

müssen Ordnung haben.

ba,

5,3,

161616

132645

124124

154623

142142

111111

7

*

ba

vonlPotenztafe

p

p

ba, 1p

12

Für große Primzahlen:

müssen die Ordnung haben und .

Prüfung, ob erzeugende Elemente sind:

123456

246135

362514

415263

531642

654321

:),(

7

21

21

21

mm

mm

p

ba

bammh

Beispiel – CvHP-Hash-Funktion

1p12 qp

qp 21

1

12

qa

a

ba,

ba,

13

Beispiel – CvHP-Hash-Funktion

122

59

10132

12027

b

a

pqp

Nachrichten: Hash-Werte

1022)9,4()9,4(),(49

373)8,5()8,5(),(58

1037)8,4()8,4(),(48

32313

22212

12111

hmmM

hmmM

hmmM

14

Funktionsweise kryptogr. HF

345344351345727612736263724682394049837363738901010293877292834746464351345727612736263724682394049837363738901010293877292834746465553552562728292983782376372356168461684571565715641451953433453443513457276127362637246823940498373637389010102938772928347464643513457276127362637246823940498373637389010102938772928347464655535525627282929837823763723561684616845715657156414519534534435134572761273626372468239404983736373890101029387729283474646435134572761273626372468239404983736373890101029387729283474646555355256272829298378237637235616846168457156571564145195343345344351345727612736263724682394049837363738901010293877292834746464351345727612736263724682394049837363738901010293877292834746465553552562728292983782376372356168461684571565715641451953453443513457276127362637246823940498373637389010102938772928347464643513457276127362637246823940

15

Funktionsweise kryptogr. HF345344351345727612736263724682394049837363738901010293877292834746464351345727612736263724682394049837363738901010293877292834746465553552562728292983782376372356168461684

571565715641451953433453443513457276127362637246823940498373637389010102938772928347464643513457276127362637246823940498373637389010102938772928347464655535525627282929837

823763723561684616845715657156414519534534435134572761273626372468239404983736373890101029387729283474646435134572761273626372468239404983736373890101029387729283474646555

355256272829298378237637235616846168457156571564145195343345344351345727612736263724682394049837363738901010293877292834746464351345727612736263724682394049837363738901010

293877292834746465553552562728292983782376372356168461684571565715641451953453443513457276127362637246823940498373637389010102938772928347464643513457276127362637246823940

16

Funktionsweise kryptogr. HF

8294

9476

4467

2232

7411

Hash-Wert

Berechnung aus „Teil-Hash-Werten“

Mh

17

Mögliche Angriffe

Versuch einer Kollisionserzeugung (Substitutionsattacke)

1

1

11

),(),(

11

11

1

2121

11

11

2121

2121

pmm

pmm

aa

aa

baba

mmhbaHWbammh

p

p

p

mm

m

p

m

mm

p

mm

p

mm

pp

mm

p

und

p, q, a und b müssen von dem Unternehmen, das das Programm erstellt hat geheim gehalten werden

18

Mögliche Angriffe

Geburtstagsattacke Bei zufällig ausgewählten Personen liegt die

Wahrscheinlichkeit über 50 Prozent, dass zwei Personen am gleichen Tag Geburtstag haben

365 Tage pro Jahr 365 mögliche Hash-Werte ( ) Anzahl der benötigten Personen:

Hash-Wert-Länge: 40 Bit ( )Versuche für Kollisionwahrscheinlichkeit von 50 Prozent:

Empfohlene Hash-Wert-Länge: mindestens 160 Bit

36517,1 k365n

402n

.122 2040 Mion

23k

19

Anforderungen an kryptogr. HF Kleinste Änderungen innerhalb des Dokuments sollen

Änderungen des Hash-Wertes nach sich ziehen (schwache Kollisionsresistenz)

9)( YXh

6)( XYhXY

YX

20

Anforderungen an kryptogr. HF Kleinste Änderungen innerhalb des Dokuments sollen

Änderungen des Hash-Wertes nach sich ziehen (schwache Kollisionsresistenz)

Bewusste Hash-Wert-Erzeugung soll praktisch unmöglich sein (starke Kollisionsresistenz)

3)( MhM

21

Anforderungen an kryptogr. HF Kleinste Änderungen innerhalb des Dokuments sollen

Änderungen des Hash-Wertes nach sich ziehen (schwache Kollisionsresistenz)

Bewusste Hash-Wert-Erzeugung soll praktisch unmöglich sein (starke Kollisionsresistenz)

Hash-Werte sollen gleich verteilt sein

145523 186723 293634

22

Anforderungen an kryptogr. HF Kleinste Änderungen innerhalb des Dokuments sollen

Änderungen des Hash-Wertes nach sich ziehen (schwache Kollisionsresistenz)

Bewusste Hash-Wert-Erzeugung soll praktisch unmöglich sein (starke Kollisionsresistenz)

Hash-Werte sollen gleich verteilt sein Nicht-Injektivität

465745

346255

873512

4368387255374937635637

3627572365873562734235

2354657623658723657600

2356283569826350263500

2937865872365876235022

23

Anforderungen an kryptogr. HF Kleinste Änderungen innerhalb des Dokuments sollen

Änderungen des Hash-Wertes nach sich ziehen (schwache Kollisionsresistenz)

Bewusste Hash-Wert-Erzeugung soll praktisch unmöglich sein (starke Kollisionsresistenz)

Hash-Werte sollen gleich verteilt sein Nicht-Injektivität

Definition:

Kryptographische Hash-Funktionen sind kollisionsfreieEinweg-Hash-Funktionen.

24

Nicht geheim!

Sicherstellung der Authentizität

Private Key

SENDUNG

+

verschl. Hashwert

SENDER (Bob)

Nicht geheim!

Hashwert verschl. Hashwert

Hash- Funktion

RSA-Signatur

Hashwert

25

Sicherstellung der Authentizität

PubilcKey

SENDUNG

+

verschl. Hashwert

Nicht geheim!

Nicht geheim!

EMPFÄNGER (Alice)

verschl. Hashwert

Hashwert

entschl. Hashwert

Vergleich

Hash- Funktion

RSA-Signatur

26

Krypt. Hash-Funktionen (Bsp.)

http://ehash.iaik.tugraz.at/wiki/The_Hash_Function_Zoo

Vielen Dank und viel Erfolg!

28

Quellen

http://haftendorn.uni-lueneburg.de/mathe-lehramt/mathe-lehramt.htm

http://old.tele-task.de/page50_lecture2048.html

http://www.cacr.math.uwaterloo.ca/hac/about/chap9.pdf

http://ehash.iaik.tugraz.at/wiki/The_Hash_Function_Zoo

http://www.secorvo.de/publikationen/faelschungssicherheit-signaturen-fox-1997.pdf

http://www.itsolution.at/support/digitale-signatur-know-how/signatur-und-kryptographie.html

http://www.informatik.uni-bremen.de/~eilert/noframes/uni/krypto/referat/

http://www.rrzn.uni-hannover.de/fileadmin/it_sicherheit/pdf/UH-CA_KryptoPKI_07.pdf