RFC 3174 – US Secure Hash Algorithm 1 (SHA1)

StatusInformational
VeröffentlichtSeptember 2001
Volltextrfc-editor.org/rfc/rfc3174

RFC 3174 spezifiziert den SHA-1-Algorithmus (Secure Hash Algorithm 1), der eine kryptografische Hashfunktion zur Berechnung eines 160-Bit-Message-Digests aus einer Eingabenachricht beliebiger Länge bis zu 2^64 Bit bereitstellt. Der Algorithmus wurde als US-amerikanischer Federal Information Processing Standard (FIPS 180-1) verabschiedet und dient vor allem der Integritätssicherung und Signaturerstellung, indem er eine kompakte, kollisionsresistente Repräsentation der Nachricht erzeugt. Das Dokument enthält eine vollständige Spezifikation inklusive C-Code-Implementierung.

Der Kern des SHA-1-Algorithmus verarbeitet die Nachricht in 512-Bit-Blöcken. Zunächst wird die Nachricht durch Anhängen eines '1'-Bits, einer variablen Anzahl von '0'-Bits und einer 64-Bit-Darstellung der ursprünglichen Nachrichtenlänge auf ein Vielfaches von 512 Bit aufgefüllt. Jeder Block durchläuft dann 80 Runden mit logischen Funktionen, Konstanten und zirkulären Linksverschiebungen auf 32-Bit-Wörtern, wobei fünf 32-Bit-Puffer (A, B, C, D, E) Schritt für Schritt aktualisiert werden. Das Ergebnis ist ein 160-Bit-Message-Digest.

Historisch war SHA-1 über viele Jahre hinweg ein weit verbreiteter Standard in Sicherheitsprotokollen wie TLS, SSH und IPsec sowie in digitalen Signaturen. Aufgrund nachgewiesener Sicherheitsschwächen (theoretische Kollisionsangriffe ab 2005, praktische Angriffe 2017) gilt SHA-1 heute als unsicher für kryptografische Anwendungen, die Kollisionsresistenz erfordern, und wird zunehmend durch SHA-2 und SHA-3 ersetzt. Das RFC 3174 selbst hat informativen Charakter und definiert keinen Internetstandard.