Glossar

Was ist HMAC?

HMAC (Hash-Based Message Authentication Code) ist ein kryptografischer Mechanismus, der eine kryptografische Hash-Funktion mit einem geheimen Schlüssel kombiniert, um einen Authentifizierungscode fixer Länge zu erzeugen. Damit kann der Empfänger sowohl Integrität als auch Authentizität einer Nachricht prüfen.

Auch bekannt als: Hash-Based Message Authentication Code, HMAC-SHA256

Eine einfache Hash-Funktion wie SHA-256 kann die Datenintegrität prüfen – wenn der Hash übereinstimmt, wurden die Daten nicht verändert. Ein Hash allein kann jedoch keine Authentizität prüfen, weil jeder einen Hash berechnen kann. HMAC löst das, indem ein geheimer Schlüssel in den Hashing-Prozess einbezogen wird. Nur Parteien, die den Schlüssel besitzen, können den korrekten HMAC-Wert generieren oder prüfen – das ergibt Integrität und Authentifizierung in einem einzigen Vorgang.

Die HMAC-Konstruktion gemäß RFC 2104 wendet die Hash-Funktion zweimal an, wobei der Schlüssel an bestimmten Stellen eingemischt wird. Diese Doppeldurchlauf-Struktur schützt vor Length-Extension-Angriffen und anderen Schwachstellen, die entstünden, wenn man einfach einen Schlüssel vor dem Hashing mit der Nachricht verkettete. HMAC-SHA256 (HMAC mit SHA-256 als zugrundeliegender Hash-Funktion) ist die verbreitetste Variante und erzeugt einen 256-Bit-Authentifizierungscode.

HMAC wird extensiv in Sicherheitsprotokollen eingesetzt: JWT-Signaturen, API-Authentifizierung, Webhook-Verifizierung, TLS-Datensatzschutz und OAuth setzen alle auf HMAC. Seine Effizienz macht ihn praktisch für die Authentifizierung hochvolumiger Daten wie Netzwerkpakete oder API-Anfragen, bei denen asymmetrische Signaturverfahren unakzeptable Latenz einführen würden.

Sign a message with HMAC-SHA256

Edit either the key or the message and watch the signature change completely — the avalanche effect that makes HMAC forgery-resistant.

HMAC-SHA256 signature (256 bits, hex)
computing…

A verifier with the same key recomputes the HMAC over the received message; if it matches, the message was authored by someone who knows the key andwasn't modified in transit. Vaulted uses this exact construction to issue tamper-proof status-page tokens.

Wie Vaulted HMAC verwendet

Vaulted verwendet HMAC-SHA256, um sichere Tokens für Geheimnis-Statusseiten zu generieren. Wenn ein Geheimnis erstellt wird, wird ein HMAC über die Geheimnis-ID unter Verwendung eines serverseitigen Schlüssels berechnet. Dieser HMAC-Token wird in die URL der Statusseite eingebettet, damit der Ersteller des Geheimnisses prüfen kann, ob es angesehen oder abgelaufen ist – ohne dem Status-Endpunkt eine Möglichkeit zu geben, Aufrufe zu verbrauchen oder auf den verschlüsselten Inhalt zuzugreifen. HMAC wird auch intern von PBKDF2 als pseudozufällige Funktion bei der Schlüsselableitung aus Passphrasen genutzt.