Hashfunktionen SHA-1 (Secure Hash Algorithm). Folie 2 Gängige Hashfunktionen MD5 128-bit Output...

7
Hashfunktionen SHA-1 (Secure Hash Algorithm)

Transcript of Hashfunktionen SHA-1 (Secure Hash Algorithm). Folie 2 Gängige Hashfunktionen MD5 128-bit Output...

Page 1: Hashfunktionen SHA-1 (Secure Hash Algorithm). Folie 2 Gängige Hashfunktionen MD5 128-bit Output Seit 2004 nicht mehr stark kollisionsresistent RIPEMD-160.

HashfunktionenSHA-1 (Secure Hash Algorithm)

Page 2: Hashfunktionen SHA-1 (Secure Hash Algorithm). Folie 2 Gängige Hashfunktionen MD5 128-bit Output Seit 2004 nicht mehr stark kollisionsresistent RIPEMD-160.

Folie 2

Gängige Hashfunktionen

MD5

128-bit Output

Seit 2004 nicht mehr stark kollisionsresistent

RIPEMD-160

160-bit Variante von MD-5

SHA-1 (Secure Hash Algorithm)

160-bit Output

NIST-Standard

Page 3: Hashfunktionen SHA-1 (Secure Hash Algorithm). Folie 2 Gängige Hashfunktionen MD5 128-bit Output Seit 2004 nicht mehr stark kollisionsresistent RIPEMD-160.

Folie 4

Gängige Hashfunktionen

Nachricht 1000…000 Länge

64 Bits

L x 512 Bits

padding(1-512 Bits)

Y1 Yq YLY2

512 Bits 512 Bits 512 Bits 512 Bits

… …

KSHA KSHA KSHA KSHAIV … …

Hashwert

160 Bits

Kompressionsfunktion• macht 512+160 zu 160 Bits 160-bit Buffer

initialisiert mit “magic values”

Gegen Padding-Attacken

Page 4: Hashfunktionen SHA-1 (Secure Hash Algorithm). Folie 2 Gängige Hashfunktionen MD5 128-bit Output Seit 2004 nicht mehr stark kollisionsresistent RIPEMD-160.

Folie 6

SHA-1 Kompressionsfunktion

+ + + + +

Yq (512 Bits)

Buffer Aktueller Buffer (5x32=160 Bits)

Vier R

unden a 20 Schritte

Eine Runde im Detail

Addition modulo 232

Page 5: Hashfunktionen SHA-1 (Secure Hash Algorithm). Folie 2 Gängige Hashfunktionen MD5 128-bit Output Seit 2004 nicht mehr stark kollisionsresistent RIPEMD-160.

Folie 7

A EB C D

A EB C D

+

+

ft

zykl. Linksshift um 5 Bits

Wt

Kt

Ein Schritt SHA-1(4 Runden a 20 Schritte)

Rundenkonstante(je 20 Schritte gleich)

Funktion in Runde• (BC)(BD) 0..19• BCD 20..39• (BC)(BD)(CD) 40..59• BCD 60..79 Block Yq wird in 32-Bit-Blöcke Wt

zerlegt• W0..15= 16x32 Bit von Yq

• W16..79: Wt=Wt-16Wt-14Wt-8Wt-3

+

+zykl. Linksshift um 30 Bits

Page 6: Hashfunktionen SHA-1 (Secure Hash Algorithm). Folie 2 Gängige Hashfunktionen MD5 128-bit Output Seit 2004 nicht mehr stark kollisionsresistent RIPEMD-160.

Folie 8

Eigenschaften

Jedes Outputbit hängt von jedem Inputbit ab

wichtig für Kollisionsresistenz

Urbild in 2160 Versuchen brute-force

Kollision in 280 Versuchen (birthday attack)

Schwächen bei der Kollisionsresistenz zeichnen sich ab

Kollisionen für SHA-1 mit weniger Runden

Page 7: Hashfunktionen SHA-1 (Secure Hash Algorithm). Folie 2 Gängige Hashfunktionen MD5 128-bit Output Seit 2004 nicht mehr stark kollisionsresistent RIPEMD-160.

Folie 9

Birthday Paradox (Geburtstagsparadoxon)

Wie groß ist die Wahrscheinlichkeit, dass von 23 Personen in einem Raum zumindest 2 am selben Tag Geburtstag haben?

n18.1

Wie viele Hashwerte muss man berechnen, um mit Wahrscheinlichkeit >50% eine Kollision zu entdecken?

Bei n verschiedenen möglichen Hashwerten:

> 50%