Vorherige Seite Nächste Seite Inhalt

6. Secure Hash Algorithm (SHA)

Das NIST entwickelte zusammen mit der National Security Agency (NSA) einen Hash-Standard und eine Einweg-Hashfunktion für den Digital Signature Standard (DSS). Der Standard heißt Secure Hash Standard (SHS) und spezifiziert den Secure Hash Algorithm (SHA) mit Hashwert der Länge 160 bit. Der sehr weit verbreitete Algorithmus basiert ebenfalls auf dem Prinzip des Message Digest.

6.1 Beschreibung des Algorithmus

Durch Anhängen einer Eins, entsprechend vieler Nullen und einer binären Darstellung der Länge der Nachricht, wird diese auf ein Vielfaches von 512 bit verlängert. Fünf 32-bit-Variablen (A, B, C, D, E) werden initialisiert und in die Variablen (a, b, c, d, e) kopiert. In vier Runden mit 20 Operationen werden jeweils drei der fünf Variablen und die Nachricht in 512 bit langen Blöcken mittels nichtlinearer Funktionen verarbeitet und das Ergebnis mit rundenabhängigen Konstanten Kt und Nachrichtenblöcken Wt addiert. Am Ende jeder Runde werden a bis e zu den Variablen A bis E addiert.


Eine Operation von SHA

6.2 Sicherheit des Algorithmus

Im Prinzip muß man von den gleichen Entwurfszielen wie bei MD4 ausgehen. SHA ist durch den längeren Hashwert von 160 bit widerstandsfähiger gegen Brute-Force. Wie bei MD5 wurde eine vierte Runde hinzugefügt, aber mit der gleichen nichtlinearen Funktion der zweiten Runde. Insgesamt hat SHA ebenfalls einen höheren Lawineneffekt als MD4, da jeder Schritt vom vorherigen abhängt.

6.3 Kryptanalyse des Algorithmus

Bisher sind keine kryptographischen Angriffe bekannt. Durch den Einsatz einer fünften Variable ist SHA im Vergleich zu MD5 resistenter gegen Kollisionen.


Vorherige Seite Nächste Seite Inhalt