# Qu'est-ce qu'un code d'authentification de message (MAC) ?

> Un code d'authentification de message (message authentication code, MAC) est une courte balise cryptographique calculée à partir d'un message et d'une clé secrète.

- URL canonique: https://yellowcube.eu/fr/glossary/message-authentication-code/
- Éditeur: Yellow Cube
- Langue: fr
- Contact: hello@yellowcube.eu

## Contenu

Une partie qui connaît la même clé peut recalculer ou vérifier la balise pour détecter les changements et obtenir l'assurance que le message provient d'un détenteur de la clé. La construction, la clé, la longueur de balise et les règles du protocole déterminent l'assurance réelle.

Les MAC sont symétriques : chaque vérificateur détenant la clé partagée peut aussi créer des balises valides. Les constructions standard incluent le message authentication code par hachage à clé (HMAC) et le message authentication code basé sur un chiffreur (CMAC). Un protocole doit spécifier exactement quels octets et quel contexte sont authentifiés et comment une balise reçue est vérifiée.

### Points clés

- **Données couvertes:** Authentifier la représentation complète pertinente pour la sécurité, y compris les identifiants, les longueurs, les versions, les algorithmes et le contexte lorsque nécessaire ; un encodage ambigu ou des champs omis peuvent permettre une substitution.
- **Usage des clés:** Générer les clés de façon sécurisée, limiter leur distribution, les séparer du chiffrement et des finalités sans rapport, les renouveler selon la politique, et traiter la compromission comme affectant chaque détenteur.
- **Conception de protocole:** Utiliser des nonces, des numéros de séquence, des horodatages ou un autre état lorsque le rejeu ou la réordonnance compte, et comparer les balises sans fuiter d'information de temps exploitable.
- **Limite importante:** Un MAC ne fournit ni confidentialité ni, ordinairement, non-répudiation, car tout détenteur de la clé partagée peut créer une balise valide. Il n'empêche pas le rejeu à lui seul, et une balise vérifiée ne dit rien sur le fait que le contenu authentifié soit sûr ou autorisé.

### Termes associés

[Cryptographie](<https://yellowcube.eu/fr/glossary/cryptography/>) · [Intégrité des données](<https://yellowcube.eu/fr/glossary/data-integrity/>) · [Authentification](<https://yellowcube.eu/fr/glossary/authentication/>) · [Chiffrement](<https://yellowcube.eu/fr/glossary/encryption/>) · [Module de sécurité matériel (HSM)](<https://yellowcube.eu/fr/glossary/hardware-security-module/>) · [Hachage cryptographique](<https://yellowcube.eu/fr/glossary/cryptographic-hashing/>)

### Sources

[NIST, Message Authentication Codes](https://csrc.nist.gov/projects/message-authentication-codes) · [NIST SP 800-38B, Recommendation for Block Cipher Modes of Operation: The CMAC Mode for Authentication](https://csrc.nist.gov/pubs/sp/800/38/b/upd1/final) · [RFC 2104, HMAC: Keyed-Hashing for Message Authentication](https://www.rfc-editor.org/info/rfc2104/)

## Attribution et portée

Cette version Markdown est générée à partir des mêmes contenus approuvés que la page HTML canonique. Utilisez l’URL canonique pour toute citation.

