Definition

Hash-based Message Authentication Code (HMAC)

Ein Hash-based Message Authentication Code (HMAC) ist ein Message Authentication Code (MAC), der einen kryptografischen Schlüssel in Verbindung mit einer Hash-Funktion nutzt. Im Deutschen wird dafür auch der Begriff Keyed-Hash Message Authentication Code verwendet.

Hash-based Message Authentication Code sorgt dafür, dass sowohl der Server als auch der Client über einen öffentlichen und einen privaten Schlüssel verfügen. Der Public Key darf weitergegeben werden, während der Private Key nur dem jeweiligen Server oder Client bekannt sein darf. Und so funktioniert es: Der Client will eine Anfrage an den Server schicken und berechnet dazu einen einzigartigen HMAC beziehungsweise Hash. Dazu verwendet er die Nachricht, seinen geheimen Schlüssel sowie eine Hash-Funktion. Der Server erhält die Anfrage des Clients und berechnet daraus ebenfalls einen HMAC. Danach vergleicht er die beiden Werte. Wenn sie identisch sind, wird der Client als vertrauenswürdig eingestuft und die Anfrage ausgeführt. Man bezeichnet diese Art von Vorgang auch als Secret Handshake (geheimen Handschlag).

HMAC ist sicherer als Message Authentication Code, weil der Schlüssel sowie die Nachricht in separaten Schritten gehasht werden.

Diese Definition wurde zuletzt im Januar 2022 aktualisiert

Erfahren Sie mehr über Identity and Access Management (IAM)