Hash-based Message Authentication Code (HMAC) ist ein Verfahren zur Authentifizierung von Nachrichten, bei dem der Message Authenthication Code ( MAC) mit einer kryptischen Hashfunktion in Kombination mit einem Geheimschlüssel errechnet wird.
Wie andere MAC-Codes auch, kann der HMAC für die gleichzeitige Verifizierung der Datenintegrität und der Authentizität der Nachrichten benutzt werden.
HMAC kann mit verschiedenen iterativen Hash-Verfahren wie MD5 oder dem SHA-Algorithmus (SHA-1) in Verbindung mit einem Schlüssel verwendet werden. Die Sicherheit der HMAC- Verschlüsselung hängt dabei im Wesentlichen von den Eigenschaften der benutzten Hashfunktion ab.
Der HAMC-Code ist in RFC 2104 beschrieben.