CyberGlossary

Kryptografie

HMAC

Auch bekannt als: Schlüssel-Hash-MAC, RFC 2104 HMAC

Definition

Mit Schlüssel arbeitende MAC-Konstruktion auf Basis einer kryptografischen Hashfunktion, definiert in RFC 2104 und FIPS 198-1.

HMAC (Hash-based Message Authentication Code) ist eine symmetrische MAC-Konstruktion gemäß RFC 2104 und FIPS 198-1, die einen geheimen Schlüssel K mit einer Hashfunktion H zu einem Tag verknüpft: HMAC(K,m) = H((K' XOR opad) || H((K' XOR ipad) || m)). Die geschachtelte Struktur macht HMAC auch bei Merkle-Damgård-Hashes wie SHA-256 immun gegen Length-Extension-Angriffe; die Sicherheit lässt sich auf schwache Kollisionsresistenz und die Pseudorandomness der Kompressionsfunktion zurückführen. Übliche Instanzen sind HMAC-SHA-256 und HMAC-SHA-512, die in TLS-Record-Schutz, JWT-Signaturen, OAuth, IPsec sowie als PRF in PBKDF2 und HKDF eingesetzt werden. HMAC bleibt eine starke Standardwahl für symmetrische Nachrichtenauthentifizierung.

Beispiele

  • JWT-Tokens mit Algorithmus HS256 werden mit HMAC-SHA-256 signiert.
  • AWS Signature Version 4 signiert API-Anfragen mit HMAC-SHA-256.

Verwandte Begriffe