MD5 Hash Generator

MD5-Hash aus beliebigem Text generieren

Eingabetext

Läuft lokal · Sicher zum Einfügen von Secrets

MD5-Hash

MD5-Hash wird hier angezeigt…

Was ist MD5-Hashing?

MD5 (Message-Digest Algorithm 5) ist eine kryptografische Hash-Funktion, die aus beliebigen Eingaben einen festen 128-Bit-(16-Byte-)Digest erzeugt, unabhängig von der Eingabegröße. 1992 von Ronald Rivest als RFC 1321 veröffentlicht, wurde MD5 als schnellerer Nachfolger von MD4 entwickelt und avancierte schnell zu einer der am weitesten verbreiteten Hash-Funktionen im Internet. Der Algorithmus verarbeitet Eingaben in 512-Bit-Blöcken durch vier Runden mit je 16 Operationen — pro Runde mit einer anderen nichtlinearen Funktion — und erzeugt dabei einen 32-stelligen hexadezimalen Fingerabdruck.

Eine Hash-Funktion ist eine Einwegumwandlung: Aus einer Eingabe lässt sich der Hash sofort berechnen, aber aus dem Hash allein kann die ursprüngliche Eingabe nicht wiederhergestellt werden. Selbst eine einzelne Bit-Änderung in der Eingabe erzeugt einen völlig anderen Digest — eine Eigenschaft, die als Lawineneffekt bezeichnet wird. MD5 bildet einen unendlichen Eingaberaum auf einen festen 128-Bit-Ausgaberaum ab, weshalb Kollisionen (zwei verschiedene Eingaben mit demselben Hash) mathematisch garantiert existieren; eine sichere Hash-Funktion macht das Auffinden solcher Kollisionen jedoch rechnerisch undurchführbar.

Seit 2004 haben Forscher praktische Kollisionsangriffe gegen MD5 nachgewiesen, weshalb der Algorithmus für digitale Signaturen, Zertifikate oder andere Anwendungen, bei denen Kollisionsresistenz erforderlich ist, nicht mehr als sicher gilt. Für nicht sicherheitskritische Zwecke wird MD5 jedoch weiterhin häufig eingesetzt: zur Überprüfung der Dateiintegrität nach Downloads, zur Generierung von Cache-Schlüsseln, zur Inhalts-Deduplizierung und zur Erstellung deterministischer Bezeichner aus Strings. Für diese Anwendungen machen Geschwindigkeit und breite Bibliotheksunterstützung des Algorithmus ihn zur praktischen Wahl. 2008 veröffentlichten Marc Stevens und Kollegen einen Chosen-Prefix-Kollisionsangriff, bei dem ein Angreifer zwei Dokumente mit beliebig gewählten Präfixen erstellen kann, die denselben Digest teilen. Diese Technik wurde beim Chaos Communication Congress 2008 demonstriert, indem ein gefälschtes Zertifizierungsstellen-Zertifikat konstruiert wurde. Die Flame-Malware von 2012 nutzte anschließend Chosen-Prefix-Kollisionen, um ein Microsoft-Code-Signing-Zertifikat zu fälschen, was Malware ermöglichte, sich als legitimes Windows-Update-Paket auszugeben. Diese realen Exploits bestätigten, dass der Algorithmus für vertrauensbasierte Anwendungen kryptografisch gebrochen ist und nicht eingesetzt werden sollte, wenn ein Angreifer die gehashten Eingaben beeinflussen kann.

Warum diesen MD5-Generator verwenden?

MD5-Hashes sofort generieren — ohne Installation oder Code schreiben. Text einfügen und den 32-stelligen Hex-Digest in Echtzeit erhalten.

Sofortiges Hashing
Die Ausgabe wird während der Eingabe aktualisiert. Kein Klicken auf Schaltflächen, kein Warten — der MD5-Digest erscheint Zeichen für Zeichen, während die Eingabe geändert wird.
🔒
Datenschutzkonforme Verarbeitung
Das gesamte Hashing läuft lokal im Browser per JavaScript. Der eingegebene Text verlässt das Gerät nie und wird nie an einen Server gesendet.
📋
Kopieren mit einem Klick
Den Hash mit einem einzigen Klick in die Zwischenablage kopieren. Zwischen Kleinbuchstaben- und Großbuchstaben-Hex-Ausgabe umschalten, um das Format des jeweiligen Systems zu erfüllen.
🔍
Kein Konto erforderlich
Keine Registrierung, kein Login, keine Nutzungslimits. Seite öffnen und sofort mit dem Hashing beginnen. Funktioniert auf jedem Gerät mit einem modernen Browser.

MD5-Anwendungsfälle

Frontend-Entwicklung
Cache-Busting-Hashes für statische Assets generieren. Einen MD5-Digest des Dateiinhalts an CSS- und JavaScript-URLs anhängen, damit Browser die aktualisierte Version laden, wenn sich der Inhalt ändert.
Backend-Engineering
Deterministische Cache-Schlüssel aus komplexen Abfrageparametern oder Request-Bodies erstellen. MD5-Hashes liefern kompakte, gleichlange Schlüssel, die sich gut mit Redis, Memcached und CDN-Cache-Schichten kombinieren lassen.
DevOps & CI/CD
Dateiintegrität nach Übertragungen durch Vergleich von MD5-Prüfsummen sicherstellen. Viele Paket-Registries und Artefakt-Repositories veröffentlichen MD5-Digests neben Downloads zur schnellen Überprüfung.
QA & Testing
MD5-Hashes von API-Antworten, Datenbank-Dumps oder Konfigurationsdateien vergleichen, um unerwartete Änderungen zwischen Testläufen zu erkennen — ohne den vollständigen Inhalt zu vergleichen.
Data Engineering
Datensätze in ETL-Pipelines durch Berechnung von MD5-Hashes des Zeileninhalts deduplizieren. Zwei Zeilen mit demselben Hash sind Kandidaten für die Deduplizierung und reduzieren Speicher- und Verarbeitungskosten.
Lernen & Bildung
Mit Hash-Funktionen experimentieren, um Einwegumwandlungen, den Lawineneffekt und die Bedeutung von Kollisionsresistenz für die Sicherheit zu verstehen. MD5 ist der einfachste und bekannteste Hash-Algorithmus zum Erkunden.

MD5 vs. andere Hash-Algorithmen

MD5 ist der schnellste und kürzeste unter den gängigen Hash-Algorithmen, bietet aber die schwächsten Sicherheitsgarantien. Die folgende Tabelle vergleicht Digest-Größen, Standards und geeignete Anwendungsfälle der einzelnen Algorithmen.

AlgorithmusDigest-GrößeHex-LängeStandardGeeignet für
MD5128 bits32 hex chars1992 / RFC 1321Checksums, non-security fingerprints
SHA-1160 bits40 hex chars1995 / RFC 3174Legacy git commits (being replaced)
SHA-256256 bits64 hex chars2001 / FIPS 180-4TLS certificates, blockchain, JWTs
SHA-384384 bits96 hex chars2001 / FIPS 180-4Government systems, higher security margin
SHA-512512 bits128 hex chars2001 / FIPS 180-4Digital signatures, HMAC with large keys
SHA-3256 bits64 hex chars2015 / FIPS 202Post-quantum readiness, backup standard
BLAKE3256 bits64 hex chars2020High-performance checksums, Merkle trees

Wie MD5 funktioniert

MD5 verarbeitet Eingaben über eine Merkle-Damgård-Konstruktion: Die Nachricht wird auf ein Vielfaches von 512 Bit aufgefüllt, in Blöcke aufgeteilt, und jeder Block wird durch vier Runden mit je 16 bitweisen Operationen geführt, die die Eingabe mit vorberechneten sinusabgeleiteten Konstanten mischen. Das Ergebnis ist ein 128-Bit-Zustand, der zum endgültigen Digest wird.

Jede Runde wendet eine eigene nichtlineare Hilfsfunktion auf drei der vier 32-Bit-Zustandswörter (A, B, C, D) an. Runde 1 verwendet F(B,C,D) = (B AND C) OR (NOT B AND D) — einen bitweisen bedingten Selektor. Runde 2 verwendet G(B,C,D) = (B AND D) OR (C AND NOT D) — einen komplementären Selektor. Runde 3 verwendet H(B,C,D) = B XOR C XOR D — eine Paritätsfunktion. Runde 4 verwendet I(B,C,D) = C XOR (B OR NOT D) — einen asymmetrischen Kombinierer. Diese vier Funktionen stellen sicher, dass jedes Bit der Eingabe den Ausgabe-Digest beeinflusst und so den Lawineneffekt erzeugt, durch den kleine Eingabeänderungen zu großen, unvorhersehbaren Änderungen des resultierenden Hashs führen.

Input: "hello world"
MD5: 5eb63bbbe01eeed093cb22bb8f5acdc3
(128 bits = 16 bytes = 32 hex characters)

Der Algorithmus läuft in fünf Phasen ab: (1) Ein 1-Bit anhängen, dann Nullen, bis die Nachrichtenlänge 448 mod 512 ergibt; (2) die ursprüngliche Nachrichtenlänge als 64-Bit-Little-Endian-Integer anhängen; (3) vier 32-Bit-Zustandsvariablen (A, B, C, D) mit festen Konstanten initialisieren; (4) jeden 512-Bit-Block durch 64 Operationen mit vier nichtlinearen Funktionen (F, G, H, I) verarbeiten, eine pro Runde mit je 16 Operationen; (5) den resultierenden Zustand zur laufenden Summe addieren und den endgültigen 128-Bit-Hash in Little-Endian-Byte-Reihenfolge ausgeben.

Code-Beispiele

MD5-Hashes in gängigen Sprachen und Umgebungen generieren. Hinweis: MD5 ist in der Browser Web Crypto API nicht verfügbar — eine Bibliothek oder Node.js verwenden.

JavaScript (Web Crypto — browser & Node.js)
// MD5 is not available in Web Crypto API (it only supports SHA-*)
// Use a library like 'js-md5' or the Node.js crypto module

// Node.js (built-in crypto)
const crypto = require('crypto')
const hash = crypto.createHash('md5').update('hello world').digest('hex')
console.log(hash) // → "5eb63bbbe01eeed093cb22bb8f5acdc3"

// With Unicode input
crypto.createHash('md5').update('cafe\u0301').digest('hex')
// → "4fad076bae205e95bec9dacea498e2ab"
Python
import hashlib

# Basic MD5 hash
result = hashlib.md5(b'hello world').hexdigest()
print(result)  # → "5eb63bbbe01eeed093cb22bb8f5acdc3"

# Hash a string (must encode to bytes first)
text = 'hello world'
hashlib.md5(text.encode('utf-8')).hexdigest()
# → "5eb63bbbe01eeed093cb22bb8f5acdc3"

# Hash a file
with open('file.bin', 'rb') as f:
    md5 = hashlib.md5()
    for chunk in iter(lambda: f.read(8192), b''):
        md5.update(chunk)
    print(md5.hexdigest())
Go
package main

import (
    "crypto/md5"
    "fmt"
)

func main() {
    data := []byte("hello world")
    hash := md5.Sum(data)
    fmt.Printf("%x\n", hash)
    // → 5eb63bbbe01eeed093cb22bb8f5acdc3
}
CLI (Linux / macOS)
# Using md5sum (Linux) or md5 (macOS)
echo -n "hello world" | md5sum
# → 5eb63bbbe01eeed093cb22bb8f5acdc3  -

# macOS
echo -n "hello world" | md5
# → 5eb63bbbe01eeed093cb22bb8f5acdc3

# Hash a file
md5sum package.json
# → a1b2c3d4e5f6...  package.json

# Using openssl (cross-platform)
echo -n "hello world" | openssl md5
# → MD5(stdin)= 5eb63bbbe01eeed093cb22bb8f5acdc3

Häufig gestellte Fragen

Ist MD5 noch sicher zu verwenden?
Für sicherheitskritische Anwendungen wie digitale Signaturen, TLS-Zertifikate oder Passwort-Hashing ist MD5 nicht sicher. Praktische Kollisionsangriffe wurden seit 2004 nachgewiesen, und Chosen-Prefix-Kollisionsangriffe sind auf handelsüblicher Hardware heute in Sekunden durchführbar. Für nicht sicherheitskritische Zwecke — Prüfsummen, Cache-Schlüssel, Inhalts-Deduplizierung — bleibt der Algorithmus eine praktische und weit verbreitete Wahl.
Was ist der Unterschied zwischen MD5 und SHA-256?
MD5 erzeugt einen 128-Bit-(32-Hex-Zeichen-)Digest und ist anfällig für Kollisionsangriffe. SHA-256 erzeugt einen 256-Bit-(64-Hex-Zeichen-)Digest und weist keine bekannten praktischen Angriffe auf. SHA-256 ist auf gleicher Hardware etwa 30–40 % langsamer als der ältere Algorithmus, aber die zusätzliche Sicherheitsmarge macht ihn zur Standardwahl für Anwendungen, bei denen die Integritätsprüfung adversariellen Manipulationen standhalten muss.
Kann ein MD5-Hash zur ursprünglichen Eingabe zurückgeführt werden?
Nein. Diese Hash-Funktion ist von Natur aus eine Einwegfunktion — sie verwirft beim Hashing Informationen. Für kurze oder häufig vorkommende Eingaben können Angreifer jedoch Rainbow Tables (vorberechnete Hash-zu-Klartext-Zuordnungen) oder Brute-Force einsetzen, um die ursprüngliche Eingabe zu finden. Aus diesem Grund sollte MD5 niemals für die Passwortspeicherung verwendet werden. Stattdessen bcrypt, scrypt oder Argon2 einsetzen.
Warum erzeugen verschiedene Tools manchmal unterschiedliche MD5-Hashes für denselben Text?
Die häufigste Ursache sind Kodierungsunterschiede. Der Algorithmus arbeitet auf Bytes, nicht auf Zeichen. Der String 'hello' erzeugt unterschiedliche Hashes, wenn er als UTF-8 vs. UTF-16 vs. Latin-1 kodiert wird. Ein weiteres häufiges Problem sind nachgestellte Zeilenumbrüche: echo in den meisten Shells hängt einen Zeilenumbruch (\n) an, sofern nicht echo -n verwendet wird. Immer die exakten Bytes prüfen, die gehasht werden.
Wie lange dauert die Berechnung eines MD5-Hashs?
Der Algorithmus ist extrem schnell. Auf moderner Hardware verarbeitet er Daten mit 3–6 GB/s auf einem einzelnen CPU-Kern. Eine GPU kann Milliarden von Prüfsummen pro Sekunde berechnen. Diese Geschwindigkeit ist bei der Dateiüberprüfung ein Vorteil, bei der Passwort-Hashierung jedoch ein Nachteil — dort werden langsamere Algorithmen (bcrypt, Argon2) bevorzugt, weil sie Brute-Force-Angriffe erschweren.
Was ist eine MD5-Kollision und warum ist sie wichtig?
Eine Kollision tritt auf, wenn zwei verschiedene Eingaben denselben Hash-Digest erzeugen. 2004 demonstrierte Xiaoyun Wang die erste praktische Kollision gegen MD5. Bis 2012 nutzte die Flame-Malware eine Kollision, um ein Microsoft-Code-Signing-Zertifikat zu fälschen. Heute können identische Präfix-Kollisionen in unter einer Minute berechnet werden. Dies macht den Algorithmus ungeeignet für Anwendungen, die auf Kollisionsresistenz angewiesen sind, wie digitale Signaturen oder Certificate Pinning.
Sollte ich MD5 oder CRC32 für Datei-Prüfsummen verwenden?
MD5 ist für die Dateiintegritätsprüfung die bessere Wahl als CRC32. CRC32 ist ein 32-Bit-Fehlererkennungscode, der für das Erkennen versehentlicher Übertragungsfehler konzipiert wurde, nicht für den Schutz vor absichtlicher Manipulation. Sein kleiner Ausgabebereich macht Kollisionen trivial einfach zu konstruieren. MD5 bietet einen 128-Bit-Digest mit deutlich stärkerer Widerstandsfähigkeit gegen zufällige Kollisionen. Für adversarielle Szenarien (Überprüfung von Downloads aus nicht vertrauenswürdigen Quellen) sollte stattdessen SHA-256 verwendet werden.