CoderTools

HMAC-Generator

Generieren Sie sichere HMAC-Authentifizierungscodes mit mehreren Hash-Algorithmen

Der geheime Schlüssel für die HMAC-Generierung. Vertraulich behandeln!

* SHA-1 gilt als unsicher. ** MD5 ist kryptographisch gebrochen und sollte nur für Legacy-Kompatibilität verwendet werden. Verwenden Sie SHA-256 oder SHA-512 für neue Anwendungen.

Über HMAC

HMAC (Keyed-Hash Message Authentication Code) ist ein spezieller Mechanismus zur Nachrichtenauthentifizierung unter Verwendung kryptografischer Hash-Funktionen und eines geheimen Schlüssels. Wie in RFC 2104 spezifiziert, dient es zur Überprüfung der Datenintegrität und der Authentizität einer Nachricht.

Im Gegensatz zu einer Standard-Hash-Funktion (wie SHA-256), die nur die Datenintegrität gewährleistet, verwendet HMAC einen geheimen Schlüssel, um die Authentizität sicherzustellen (Erkennung von Manipulationen). Es wird häufig in der API-Authentifizierung (z. B. AWS Signature v4), JWTs und bei Finanztransfers eingesetzt. Die Stärke eines HMAC hängt von der Stärke der Hash-Funktion und der Qualität des Schlüssels ab.

Unterstützte HMAC-Algorithmen

Dieses Tool unterstützt umfassende HMAC-Algorithmen, einschließlich SHA-256, SHA-512, SHA-384, SHA-224 und moderne SHA-3-Varianten. Legacy-Unterstützung umfasst MD5 und SHA-1. Die Kernberechnung folgt der Formel: HMAC(K, m) = H((K' ⊕ opad) || H((K' ⊕ ipad) || m)).

Häufige Anwendungsfälle

API-Anfrage-Authentifizierung und Signaturprüfung
JWT (JSON Web Token) Signierung mit HS256/HS384/HS512
Webhook-Payload-Verifizierung
Passwortbasierte Schlüsselableitung (PBKDF2)
Nachrichtenintegritätsprüfung in sicheren Kommunikationen

Sicherheitsüberlegungen

Die Sicherheit hängt stark vom geheimen Schlüssel ab. Schlüsselstärke: Der Schlüssel sollte zufällig sein und mindestens so lang wie die Ausgabe der Hash-Funktion (z. B. 32 Byte für SHA-256). Algorithmuswahl: Verwenden Sie SHA-256 oder SHA-512 für neue Anwendungen. Vermeiden Sie MD5 und SHA-1.

Beispiel

Nachricht: "Hello, World!"

Geheimer Schlüssel: "secret-key-2025"

Algorithmus: HMAC-SHA256

Ausgabe:

e4d7f1b4c4e5a8d3e...

Häufig gestellte Fragen (FAQ)

Was ist der Unterschied zwischen Hash und HMAC?

Ein Hash (wie SHA-256) ist eine Einwegfunktion, die jeder berechnen kann. HMAC verwendet eine Hash-Funktion *plus* einen geheimen Schlüssel. Nur wer den Schlüssel besitzt, kann den korrekten HMAC erstellen oder verifizieren.

Warum nicht einfach Hash(Key + Message) verwenden?

Das einfache Verketten (`H(Key + Message)`) ist bei bestimmten Hash-Funktionen wie MD5 oder SHA-1 anfällig für 'Length Extension Attacks'. Die verschachtelte Struktur von HMAC verhindert dies.

Ist HMAC umkehrbar (entschlüsselbar)?

Nein. HMAC ist eine kryptografische Hash-Funktion, keine Verschlüsselung. Es ist einseitig. Es wird zur Überprüfung der Echtheit verwendet, nicht zum Verbergen von Daten.

Wie lang sollte mein geheimer Schlüssel sein?

RFC 2104 empfiehlt eine Schlüssellänge, die mindestens der Hash-Ausgabelänge entspricht (z. B. 32 Byte für SHA-256). Längere Schlüssel erhöhen die Sicherheit nicht wesentlich.

Kann ich dies zur Passwortspeicherung verwenden?

HMAC ist besser als ein einfacher Hash, aber für Passwörter sollten Sie spezialisierte Key Derivation Functions (KDFs) wie PBKDF2, bcrypt oder Argon2 verwenden.

Ist mein Schlüssel mit diesem Tool sicher?

Ja. Dieses Tool läuft vollständig clientseitig. Die HMAC-Berechnung erfolgt direkt in Ihrem Browser mittels JavaScript. Ihr Schlüssel wird niemals an einen Server gesendet.

Schnellmenü

Keine aktuellen Tools