SHA-256 vs. SHA-512: Welche Hash-Funktion ist die richtige Wahl?
SHA-256 und SHA-512 gehören beide zur Familie SHA-2, die von der NSA entworfen und vom NIST standardisiert wurde. Sie erzeugen aus beliebigen Daten einen Hash fester Größe und gelten heute als sicher. Der Unterschied liegt in der Hashgröße, der Leistung je nach Architektur und einigen Sicherheitsdetails. So wählen Sie die richtige und warum.
Die SHA-2-Familie
SHA-2 umfasst mehrere Varianten (SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA-512/256), die dieselbe Struktur teilen, sich aber in der Wort- und Hashgröße unterscheiden. Die Zahl gibt die Hashgröße in Bit an: SHA-256 erzeugt 256 Bit (64 Hexadezimalzeichen), SHA-512 erzeugt 512 (128 Zeichen).
Sie können diese Hashes mit unserem Hash-Generator berechnen oder einen Algorithmus anhand eines Hashs mit dem Hash-Identifizierer erkennen. Nicht zu verwechseln mit MD5, das für die Sicherheit veraltet ist (siehe unseren Vergleich MD5 vs. SHA-256).
SHA-256
SHA-256 arbeitet mit 32-Bit-Wörtern und erzeugt einen Hash von 256 Bit. Es ist die weltweit am weitesten verbreitete Hash-Funktion: TLS-Zertifikate, Bitcoin-Signaturen, Integritätsprüfung von Dateien, git. Ihr kürzerer Hash macht sie praktisch zum Speichern, Anzeigen und Übertragen.
- Hash: 256 Bit, 64 Hexadezimalzeichen
- Wörter: 32 Bit, optimal auf 32-Bit-Plattformen und in eingebetteten Systemen
- Verbreitung: die größte, universelle Unterstützung
SHA-512
SHA-512 arbeitet mit 64-Bit-Wörtern und erzeugt einen Hash von 512 Bit. Entgegen der Intuition ist sie auf einem modernen 64-Bit-Prozessor bei großen Datenmengen oft schneller als SHA-256, weil sie pro Runde mehr Daten verarbeitet. Ihr längerer Hash bietet zudem eine höhere Sicherheitsmarge.
- Hash: 512 Bit, 128 Hexadezimalzeichen
- Wörter: 64 Bit, optimal auf 64-Bit-Architekturen
- Native Widerstandsfähigkeit: SHA-512 ist nicht anfällig für den Length-Extension-Angriff, wenn man seine gekürzten Varianten verwendet (SHA-512/256)
Vergleichstabelle
| Kriterium | SHA-256 | SHA-512 |
|---|---|---|
| Hashgröße | 256 Bit (64 Hex) | 512 Bit (128 Hex) |
| Wortgröße | 32 Bit | 64 Bit |
| Geschwindigkeit auf 64-Bit-CPU | Gut | Oft höher |
| Geschwindigkeit auf 32 Bit / eingebettet | Höher | Langsamer |
| Sicherheitsmarge | Sehr hoch | Noch höher |
| Length-Extension | Anfällig | Anfällig (außer gekürzte Varianten) |
| Verbreitung | Universell | Weit |
Leistung
Die Leistung hängt von der Architektur ab. Auf einem 64-Bit-Server oder -Laptop kann SHA-512 bei großen Dateien SHA-256 um 20 bis 50 % übertreffen, weil sie pro Iteration größere Blöcke verarbeitet. Auf einem 32-Bit-Mikrocontroller oder in einer eingeschränkten Umgebung gewinnt SHA-256 wieder die Oberhand.
In der Praxis ist der Unterschied bei kleinen Eingaben (ein Passwort, eine Kennung) vernachlässigbar. Messbar wird er erst bei großen Datenmengen oder hohen Durchsätzen.
Wann das eine, wann das andere wählen
SHA-256 wählen, wenn
- Sie maximale Kompatibilität und ein kompaktes Format anstreben
- Sie eingebettete Systeme, IoT oder 32-Bit-Plattformen ins Visier nehmen
- Sie die Integrität von Dateien prüfen oder Zertifikate signieren
- ein kurzer Hash die Anzeige und Speicherung erleichtert
SHA-512 wählen, wenn
- Sie große Datenmengen auf 64-Bit-Servern hashen
- Sie die größtmögliche Sicherheitsmarge wollen
- Sie SHA-512/256 verwenden, um dem Length-Extension-Angriff zu widerstehen und dabei 256 Bit zu behalten
Wichtig: keine der beiden eignet sich zum Hashen von Passwörtern. Verwenden Sie dafür bcrypt oder Argon2, die darauf ausgelegt sind, langsam und gesalzen zu sein.
Empfehlung
Für den allgemeinen Gebrauch ist SHA-256 die Standardwahl: universell unterstützt, kompakt, mehr als ausreichend sicher. Entscheiden Sie sich für SHA-512, wenn Sie große Datenmengen auf 64-Bit-Hardware hashen oder eine zusätzliche Sicherheitsmarge wollen. Und um Passwörter zu speichern, greifen Sie zu einer dedizierten Funktion wie Argon2id, niemals zu SHA-2 allein.
Häufige Fragen
Ist SHA-512 sicherer als SHA-256?
SHA-512 bietet dank seines längeren Hashs eine höhere theoretische Sicherheitsmarge, aber SHA-256 ist bereits weit außerhalb der Reichweite aktueller Angriffe. Für nahezu alle Anwendungen gelten beide als sicher.
Warum kann SHA-512 schneller sein als SHA-256?
Weil es 64-Bit-Wörter verarbeitet und pro Runde größere Blöcke bearbeitet. Auf einem nativen 64-Bit-Prozessor gleicht das den Mehraufwand aus und macht es bei großen Datenmengen oft schneller. Auf 32 Bit ist es umgekehrt.
Kann ich Passwörter mit SHA-256 oder SHA-512 hashen?
Nein, das wäre ein Fehler. Diese Funktionen sind schnell und daher leicht per Brute Force anzugreifen. Verwenden Sie bcrypt oder Argon2id, die absichtlich langsam sind und einen Salt einbauen.
Was ist SHA-512/256?
Das ist SHA-512, dessen Hash auf 256 Bit gekürzt wird, mit anderen Initialisierungswerten. Man erhält einen Hash von 256 Bit, die Geschwindigkeit von SHA-512 auf 64 Bit und eine native Widerstandsfähigkeit gegen den Length-Extension-Angriff.