Gib einen Text ein und erhalte sofort alle gängigen Hashes.
{{ __t('empty_state') }}
MD5 (Message-Digest Algorithm 5) ist eine kryptografische Hash-Funktion, die aus beliebig langen Eingabedaten einen 128-Bit-Hashwert (32 Hex-Zeichen) erzeugt. MD5 wurde 1991 von Ronald Rivest entwickelt und ist eine der bekanntesten Hash-Funktionen weltweit.
Wichtig: MD5 gilt heute als kryptografisch unsicher und sollte nicht mehr für sicherheitsrelevante Anwendungen wie Passwort-Hashing oder digitale Signaturen verwendet werden. Für diese Zwecke empfehlen sich SHA-256 oder SHA-512.
Ja. Alle Berechnungen finden ausschließlich in deinem Browser statt (Web Crypto API und JavaScript). Keine Daten werden an einen Server gesendet. Du kannst den Quellcode jederzeit in den Browser-Entwicklertools überprüfen.
Jede kryptografische Hash-Funktion bildet eine beliebig lange Eingabe auf einen Ausgabewert fester Länge ab. Der zentrale Unterschied zwischen den Algorithmen liegt in Ausgabelänge, interner Blockgröße und Rundenanzahl. MD5 (RFC 1321) verarbeitet die Nachricht in 512-Bit-Blöcken über 64 Runden und liefert 128 Bit. SHA-1 (RFC 3174) nutzt ebenfalls 512-Bit-Blöcke, aber 80 Runden und gibt 160 Bit aus. SHA-256 (RFC 6234) verwendet 512-Bit-Blöcke und 64 Runden mit 32-Bit-Wörtern; SHA-512 arbeitet mit 1024-Bit-Blöcken über 80 Runden und 64-Bit-Wörtern. Auf 64-Bit-CPUs ist SHA-512 deshalb oft sogar schneller als SHA-256.
Sicherheitsmäßig zerfällt das Bild komplett anders, als die reine Bitlänge vermuten lässt. Eine ideale Hash-Funktion mit n Bit Ausgabe sollte erst nach ungefähr 2^(n/2) Versuchen Kollisionen zeigen (Geburtstagsparadoxon). Für MD5 wären das theoretisch 2^64 — in der Praxis konstruieren Forscher Kollisionen seit 2004 (Wang et al.) in Sekunden auf normaler Hardware. SHA-1-Kollisionen sind seit dem SHAttered-Angriff von Google/CWI 2017 öffentlich (rund 2^63 Operationen). SHA-256 und SHA-512 zeigen bis heute keine praktischen Kollisionen; NIST sieht beide bis weit über 2030 hinaus als sicher an.
Für praktische Auswahl bedeutet das: Nutze SHA-256 als Default für Integritätsprüfungen, digitale Signaturen, HMAC und Merkle-Trees. SHA-512 ist eine Option, wenn du auf 64-Bit-Servern Durchsatz optimierst oder mit HMAC-SHA-512 gegen Length-Extension-Angriffe schon strukturell besser dastehst. MD5 ist akzeptabel ausschließlich für nicht-sicherheitskritische Zwecke wie ETag-Berechnung, Bloom-Filter-Eingaben oder Caching, wo ein Angreifer keinen Vorteil aus einer Kollision ziehen kann. Für Passwörter ist keiner dieser Algorithmen geeignet — dort gehört bcrypt, scrypt oder Argon2id hin (OWASP Password Storage Cheat Sheet).
Die Wahrscheinlichkeit einer Hash-Kollision ergibt sich näherungsweise aus der Geburtstagsformel: p ≈ 1 − e^(−k² / (2·2^n)), wobei k die Zahl der gehashten Werte und n die Bitlänge ist. Für eine 50-%-Kollisionswahrscheinlichkeit brauchst du etwa k ≈ 1,1774 · 2^(n/2) Eingaben. Konkret: Bei MD5 (128 Bit) reichen rund 2^64 ≈ 1,8 × 10^19 Hashes für eine 50-%-Kollision — und Kollisions-Angriffe schaffen das heute in Sekunden. Bei SHA-1 (160 Bit) sind es 2^80 ≈ 1,2 × 10^24. Bei SHA-256 (256 Bit) liegt die Schwelle bei 2^128 ≈ 3,4 × 10^38 — astronomisch und außerhalb jeder vorstellbaren Rechenleistung. Daraus folgt: Wenn du in einer Datenbank mit 1 Milliarde Einträgen Hashes als Schlüssel verwendest (k = 10^9), beträgt die zufällige Kollisionswahrscheinlichkeit bei SHA-256 ungefähr 1,5 × 10^−21 — praktisch null.
Die folgenden Werte kannst du eins zu eins in der Eingabe oben reproduzieren — gib genau die linke Seite ein und vergleiche mit dem dokumentierten Hash:
"" ergibt d41d8cd98f00b204e9800998ecf8427e — der berühmte "empty MD5", oft als Fingerprint für leere Uploads sichtbar."hello" liefert 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 — exakt 64 Hex-Zeichen, also 256 Bit."abc" ist a9993e364706816aba3e25717850c26c9cd0d89d — der Referenzwert aus dem SHA-1-Testvektor in RFC 3174, Anhang A."password" beginnt mit b109f3bb... und ist 128 Hex-Zeichen lang — niemals so ein Passwort speichern, da ein Angreifer mit Rainbow Tables oder GPU-Brute-Force in Sekundenbruchteilen invertiert.38762cf7f55934b34d179ae6a4c80cadccbb7f0a — der erste praktische SHA-1-Kollisionsangriff der Welt, veröffentlicht im Februar 2017.MD5 ist seit 2004 kryptografisch gebrochen (Wang/Yu, Crypto 2004) und wurde 2008 zur praktischen Fälschung von SSL-Zertifikaten genutzt — verwende es nie für Signaturen, Zertifikate oder Passwörter. SHA-1 gilt seit 2017 als gebrochen; alle großen Browser haben SHA-1-Zertifikate spätestens 2017 abgelehnt. SHA-256 und SHA-512 sind anfällig für Length-Extension-Angriffe, wenn man sie naiv als hash(secret || message) als MAC nutzt — verwende stattdessen HMAC (RFC 2104) oder SHA-3/Keccak. Für Passwörter sind alle SHA-Varianten ungeeignet, weil sie zu schnell sind: eine moderne GPU rechnet >10 Milliarden SHA-256 pro Sekunde. NIST SP 800-63B verlangt ausdrücklich speicher- und CPU-harte Funktionen wie Argon2, scrypt oder bcrypt. Beachte schließlich: Hashes sind keine Verschlüsselung. Sie sind einweggerichtet und können nicht "entschlüsselt" werden — was du im Netz als "MD5 decoder" findest, ist nur eine Rainbow-Table-Suche bekannter Klartexte.
password_hash() mit PASSWORD_BCRYPT oder PASSWORD_ARGON2ID.sha256(secret||message)-Konstruktionen nicht tun.