Résumé
Un HMAC (en anglais parfois étendu en tant que keyed-hash message authentication code (code d'authentification de message de hachage à clé) ou hash-based message authentication code (code d'authentification de message basé sur le hachage)), est un type de code d'authentification de message (CAM), ou MAC en anglais (message authentication code), calculé en utilisant une fonction de hachage cryptographique en combinaison avec une clé secrète. Comme avec n'importe quel CAM, il peut être utilisé pour vérifier simultanément l'intégrité de données et l'authenticité d'un message. N'importe quelle fonction itérative de hachage, comme SHA-256 ou SHA-512, peut être utilisée dans le calcul d'un HMAC ; le nom de l'algorithme résultant est HMAC-SHA-256 ou HMAC-SHA-512. La qualité cryptographique du HMAC dépend de la qualité cryptographique de la fonction de hachage et de la taille et la qualité de la clé. Une fonction itérative de hachage découpe un message en blocs de taille fixe et itère dessus avec une fonction de compression. Par exemple, SHA-256 opère sur des blocs de 512 bits et SHA-512 sur des blocs de 1024 bits. La taille de la sortie HMAC est la même que celle de la fonction de hachage (ici 256 ou 512 bits), bien qu'elle puisse être tronquée si nécessaire. vignette|droite|400px|Génération d’un HMAC SHA-1. Un HMAC est calculé en utilisant un algorithme cryptographique qui combine une fonction de hachage cryptographique (comme SHA-256 ou SHA-512) avec une clé secrète. Seuls les participants à la conversation connaissent la clé secrète, et le résultat de la fonction de hachage dépend à présent des données d'entrée et de la clé secrète. Seules les parties qui ont accès à cette clé secrète peuvent calculer le condensé d'une fonction HMAC. Cela permet de vaincre les attaques de type "man-in-the-middle" et d'authentifier l'origine des données. L'intégrité est assurée quant à elle par les fonctions de hachage.
À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.