En cryptographie, un HMAC (parfois élargi comme hachage à clé code d'authentification de message ou de hachage-based message authentication code) est un type spécifique de code d'authentification de message (MAC) comportant une fonction de hachage cryptographique et d'un secret de la clé de chiffrement. Il peut être utilisé pour vérifier simultanément les données de l'intégrité et de l'authenticité d'un message, comme avec n'importe quel MAC. Toute fonction de hachage cryptographique, tels que SHA-256 ou SHA-3, peut être utilisé dans le calcul d'un HMAC; le MAC algorithme est appelé HMAC-X, où X est la fonction de hachage utilisée (par exemple, l'algorithme HMAC-SHA256 ou HMAC-SHA3). La robustesse cryptographique de la HMAC dépend de la robustesse cryptographique de la sous-fonction de hachage, de la taille de son hachage de sortie, et la taille et la qualité de la clé.
HMAC utilise deux passes de hachage de calcul. La clé secrète est d'abord utilisée pour dériver les deux touches intérieure et extérieure. La première étape de l'algorithme produit un hachage interne dérivé du message et l'intérieur de la clé. Le deuxième passage, le produit final HMAC code dérivé de l'intérieur résultat du hachage et de l'extérieur de la clé. Ainsi, l'algorithme fournit une meilleure immunité contre la longueur de l'extension des attaques.
Un processus itératif en fonction de hachage casse un message en blocs de taille fixe et parcourt avec une fonction de compression. Par exemple, SHA-256 fonctionne sur 512 bits des blocs. La taille de la sortie de l'algorithme HMAC est la même que celle de la sous-fonction de hachage (par exemple, 256 et 1600 bits dans le cas de SHA-256 et SHA-3, respectivement), mais il peut être tronqué si vous le souhaitez.
HMAC ne pas chiffrer le message. Au lieu de cela, le message (chiffré ou non) doit être envoyé avec le hachage HMAC. Parties avec le secret de la clé de hachage du message de nouveau eux-mêmes, et si elle est authentique, les reçus et les hachages calculés correspondent.
La définition et l'analyse de la construction HMAC a d'abord été publié en 1996 dans un papier par Mihir Bellare, Ran Canetti, et Hugo Krawczyk, et ils ont également écrit RFC 2104 en 1997. En 1996 le livre est aussi une variante appelée CNAM. FIPS PUB 198 généralise et standardise l'utilisation de Hmac. HMAC est utilisé au sein de l'IPsec et TLS protocoles et de JSON Web Jetons.
Simplifiez-vous la vie avec une multitude de puissants outils.
inscrivez-vous pour une adhésion Ultime et bénéficiez de toutes les fonctionnalités de Apps66.com