Keine Werbung mögen? Gehen Werbefrei Heute

MD5, SHA-256, SHA-3 Welches Hash-Algorithmus benötigen Sie tatsächlich?

Veröffentlicht am

Ein direkter Vergleich von MD5, SHA-1, SHA-256, SHA-3 und BLAKE3 – wann jeder Algorithmus geeignet ist, wo er versagt und welcher standardmäßig verwendet werden sollte.

MD5, SHA-256, SHA-3: Welcher Hash-Algorithmus benötigen Sie tatsächlich? 1
ANZEIGE Entfernen?

Wenn Sie immer noch standardmäßig auf MD5 zurückgreifen, dann sind Sie in guter Gesellschaft — und Sie machen wahrscheinlich die falsche Wahl. Hash-Funktionen erzeugen einen festen Längenwert als Fingerabdruck Ihrer Daten, aber sie sind nicht austauschbar. Die falsche Wahl führt entweder zu paranoischer Überlastung oder zu einem echten Sicherheitsversagen, je nachdem, in welche Richtung Sie falsch spekulieren.

Hier ist, was jeder Algorithmus tatsächlich tut, wo er scheitert und was Sie stattdessen verwenden sollten.

Was eine Hash-Funktion tut

Eine kryptographische Hash-Funktion nimmt Eingaben beliebiger Größe und erzeugt eine feste Länge als Ausgabe — sie ist deterministisch, einweg und (idealerweise) kollisionssicher. Ebenso Eingabe erzeugt immer die gleiche Hash. Sie kann nicht rückgängig gemacht werden. Und wenn ein einziger Byte in der Eingabe verändert wird, ändert sich die Ausgabe vollständig.

Diese drei Eigenschaften machen Hash-Funktionen nützlich für die Überprüfung der Datenintegrität, die Unterschrift von Dokumenten und die Erstellung von Checksummen. Die Algorithmen unten tun dies. Was sie voneinander unterscheidet, ist, wie gut sie unter Angriffen bestehen und wie schnell sie laufen.

MD5: Verwenden Sie es nicht für Sicherheit

MD5 erzeugt einen 128-Bit-Hash und läuft schnell — genau das ist das Problem. Es wurde 1991 entwickelt, und 2004 konnten Forscher bereits Kollisionen gegen es demonstrieren. Heute ist es berechnend, zwei unterschiedliche Dateien mit dem gleichen MD5-Hash zu erzeugen.

Wo es scheitert: Jeder Sicherheitskontext — Integritätsprüfungen von Dateien über unvertrauenswürdige Kanäle, digitale Signaturen, TLS-Zertifikate.

Wo es immer noch in Ordnung ist: Nicht-sichere Checksummen. Datei-Verdoppelung, Erstellung von Cache-Schlüsseln, Fingerabdruck von Inhalten innerhalb eines Systems, das Sie kontrollieren — MD5 ist schnell und ausreichend. Kollisionen sind nur dann relevant, wenn ein Angreifer sie ausnutzen kann.

Müssen Sie schnell einen MD5-Hash erzeugen? Verwenden Sie das MD5-Generator.

SHA-1: Veraltet, aber noch immer vorhanden

SHA-1 erzeugt eine 160-Bit-Ausgabe und hat das gleiche grundlegende Problem: Kollisionen sind bewiesen. Google's SHAttered-Attacke im Jahr 2017 erzeugte zwei unterschiedliche PDF-Dateien mit identischen SHA-1-Hashes, wobei die Kosten jetzt praktisch für motivierte Angreifer erreichbar sind.

Es ist offiziell für digitale Signaturen und TLS-Zertifikate veraltet. Sie werden immer noch in Git finden, wo es als Inhaltsschlüssel verwendet wird — die Bedrohungsmodell dort ist anders, und Git migriert aktuell bereits zu SHA-256.

Die Regel: Verwenden Sie SHA-1 nicht für neue, sicherheitsrelevante Aufgaben. Markieren Sie es für die Migration in älteren Systemen.

SHA-256 und SHA-512: Das aktuelle Standard

SHA-256 (Teil der SHA-2-Familie) ist das, was Sie für die meisten kryptographischen Anwendungen standardmäßig verwenden sollten. 256-Bit-Ausgabe, keine bekannten praktischen Angriffe, unterstützt auf allen Sprachen und Plattformen, die Sie wahrscheinlich verwenden.

SHA-512 verwendet einen 512-Bit-Interne Zustand und erzeugt eine 512-Bit-Ausgabe. Auf 64-Bit-Prozessoren ist es oft schneller als SHA-256 bei großen Eingaben, da es Blöcke verarbeitet. Für die meisten Anwendungsebenen ist SHA-256 ausreichend. Wenn Sie hohe Durchsatzdaten verarbeiten oder eine zusätzliche Sicherheitsmarge bei Schlüsselgenerierung benötigen, testen Sie SHA-512.

Wann verwenden: Integritätsprüfungen von Dateien, HMACs, Zertifikatsunterschriften (mit RSA/ECDSA), API-Anfragen-Unterschriften, JWT-Tokens.

SHA-3: Andere Architektur, spezifische Anwendungsfälle

SHA-3 (Keccak) wurde 2015 von NIST speziell als strukturelle Alternative zu SHA-2 ausgewählt. Während SHA-2 die Merkle-Damgård-Konstruktion verwendet, verwendet SHA-3 eine Sponge-Konstruktion. Wenn ein grundlegendes Mangel in der SHA-2-Design entdeckt wird, wäre SHA-3 unbeeindruckt.

Es erzeugt die gleichen Ausgabegrößen (SHA3-256, SHA3-512 usw.) und besteht alle aktuellen Sicherheitsanalysen, ist jedoch im reinen Software-Modus in der Regel langsamer als SHA-256.

Wann verwenden: Langfristige kryptographische Systeme, bei denen eine architektonische Unabhängigkeit von SHA-2 wichtig ist — Hardware-Sicherheitsmodule, bestimmte staatliche oder Compliance-Kontexte oder Orte, an denen Sie explizit gegen zukünftige Schwächen von SHA-2 absichern. Für die meisten Webanwendungen ist dies theoretisches Übertreiben.

BLAKE3: Die moderne Leistungsoption

BLAKE3 ist noch kein NIST-Standard (noch), aber es hat starke Akzeptanz: Rusts cargo, das Bao-Streaming-Hash-Format und eine wachsende Liste an Sicherheits- und Speicherwerkzeugen verwenden es. Es wurde für Parallele Verarbeitung konzipiert und läuft signifikant schneller als SHA-256 in Software, während es unter aktuellen kryptographischen Analysen bestehen bleibt.

Wann verwenden: Hohe Leistungskontrollen, Inhaltserkennung, überall, wo Sie beide Enden kontrollieren und Geschwindigkeit ohne Sicherheitsverlust benötigen. Vermeiden Sie es dort, wo SHA-2 explizit in Spezifikationen verlangt ist — X.509-Zertifikate, JWTs und ähnliche standardisierte Kontexte.

Hash-Algorithmus-Vergleich

Algorithmus Sicherheitsstatus Ausgabegröße Geschwindigkeit (Software) Anwendungsfall
MD5 Zerbrochen (Kollisionen) 128-Bit Sehr schnell Nicht-sichere Checksummen, Deduplizierung
SHA-1 Zerbrochen (Kollisionen) 160-Bit Schnell Nur für Legacy-Systeme; Git-Inhaltsschlüssel
SHA-256 Sicher 256-Bit Schnell Allgemeine Nutzung — Standardwahl
SHA-512 Sicher 512-Bit Schneller auf 64-Bit für große Daten Hochdurchsatz oder zusätzliche Marge
SHA-3 Sicher 224–512-Bit Langsamer in Software Langfristige Systeme, die eine SHA-2-Abhängigkeit vermeiden müssen
BLAKE3 Sicher 256-Bit Sehr schnell (parallel) Leistungskritische Inhaltserkennung

SHA-256 berechnen

Drei schnelle Wege, um einen SHA-256-Hash zu berechnen:

Python:

import hashlib

data = b"hello world"
digest = hashlib.sha256(data).hexdigest()
print(digest)
# Output: b94d27b9934d3e08a52e52d7da7dabfac484efe04294e576fba1d63e8d4d0b4b

Node.js:

const { createHash } = require('crypto');

const digest = createHash('sha256')
  .update('hello world')
  .digest('hex');
console.log(digest);

Bash:

echo -n "hello world" | sha256sum

Müssen Sie etwas schnell hashen, ohne Code zu schreiben? Der Hash-Generator unterstützt MD5, SHA-1, SHA-256, SHA-512 und mehr — direkt aus Ihrem Browser.

Entscheidungsleitfaden

Anwendungsfall Was zu verwenden
Deduplizierung / Cache-Schlüssel MD5 oder SHA-256
Dateiintegrität (vertrauenswürdiger Kanal) MD5 ist in Ordnung
Dateiintegrität (Downloads, unvertrauenswürdig) SHA-256
Digitale Signaturen SHA-256 oder SHA-512
HMACs und API-Authentifizierung SHA-256
TLS-Zertifikate SHA-256
Passwortspeicherung bcrypt, Argon2 oder scrypt — nicht eines der oben genannten
Hohe Leistungskontrollen BLAKE3
Standardskonformität SHA-256 (prüfen Sie die Spezifikationen für Anforderungen)

Ein Punkt, der explizit hervorgehoben werden sollte: Keiner dieser Algorithmen sollte direkt zum Hashen von Passwörtern verwendet werden. Sie sind alle schnell konzipiert, was sie für Brute-Force-Angriffe nützlich macht. Verwenden Sie bcrypt, Argon2id oder scrypt — Algorithmen, die absichtlich langsam und speicherintensiv sind, genau weil Passwortkraft ein gegnerisches Spiel ist.

Die kurze Antwort

Für neue Code: Standardmäßig SHA-256. Verwenden Sie SHA-512, wenn Sie eine größere Ausgabegröße benötigen oder große Datenströme auf 64-Bit-Hardware hashen. Verwenden Sie BLAKE3, wenn Sie maximale Durchsatz und Kontrolle über beide Enden benötigen. Verwenden Sie SHA-3 nur, wenn Sie einen spezifischen architektonischen Grund haben, unabhängig von SHA-2 zu bleiben.

MD5 ist für interne Fingerabdrücke und Deduplizierung in Ordnung, wenn Kollisionen kein Sicherheitsproblem darstellen. Es ist nicht in Ordnung für alles, wo ein Angreifer von einer Fälschung profitieren könnte.

Wenn Sie unsicher sind, dann SHA-256. Es war die richtige Antwort für eine Dekade und wird weiterhin für die nächsten Jahre die richtige sein.

Möchten Sie werbefrei genießen? Werde noch heute werbefrei

Erweiterungen installieren

IO-Tools zu Ihrem Lieblingsbrowser hinzufügen für sofortigen Zugriff und schnellere Suche

Zu Chrome-Erweiterung Zu Kantenerweiterung Zu Firefox-Erweiterung Zu Opera-Erweiterung

Die Anzeigetafel ist eingetroffen!

Anzeigetafel ist eine unterhaltsame Möglichkeit, Ihre Spiele zu verfolgen. Alle Daten werden in Ihrem Browser gespeichert. Weitere Funktionen folgen in Kürze!

ANZEIGE Entfernen?
ANZEIGE Entfernen?
ANZEIGE Entfernen?

Nachrichtenecke mit technischen Highlights

Beteiligen Sie sich

Helfen Sie uns, weiterhin wertvolle kostenlose Tools bereitzustellen

Kauf mir einen Kaffee
ANZEIGE Entfernen?