Authentification des messages
Dans le dernier chapitre, nous avons discuté des menaces à l'intégrité des données et de l'utilisation de la technique de hachage pour détecter si des attaques de modification ont eu lieu sur les données.
Un autre type de menace qui existe pour les données est le manque de message authentication. Dans cette menace, l'utilisateur n'est pas sûr de l'expéditeur du message. L'authentification de message peut être fournie en utilisant les techniques cryptographiques qui utilisent des clés secrètes comme cela est fait en cas de cryptage.
Code d'authentification de message (MAC)
L'algorithme MAC est une technique cryptographique à clé symétrique pour fournir l'authentification des messages. Pour établir le processus MAC, l'expéditeur et le destinataire partagent une clé symétrique K.
Essentiellement, un MAC est une somme de contrôle chiffrée générée sur le message sous-jacent qui est envoyé avec un message pour garantir l'authentification du message.
Le processus d'utilisation de MAC pour l'authentification est décrit dans l'illustration suivante:
Essayons maintenant de comprendre l'ensemble du processus en détail -
L'expéditeur utilise un algorithme MAC connu publiquement, entre le message et la clé secrète K et produit une valeur MAC.
Semblable au hachage, la fonction MAC compresse également une entrée longue arbitraire en une sortie de longueur fixe. La principale différence entre le hachage et le MAC est que MAC utilise une clé secrète pendant la compression.
L'expéditeur transmet le message avec le MAC. Ici, nous supposons que le message est envoyé en clair, car nous nous soucions de fournir une authentification de l'origine du message et non la confidentialité. Si la confidentialité est requise, le message doit être crypté.
A la réception du message et du MAC, le récepteur alimente le message reçu et la clé secrète partagée K dans l'algorithme MAC et recalcule la valeur MAC.
Le récepteur vérifie maintenant l'égalité du MAC fraîchement calculé avec le MAC reçu de l'expéditeur. S'ils correspondent, le destinataire accepte le message et s'assure que le message a été envoyé par l'expéditeur prévu.
Si le MAC calculé ne correspond pas au MAC envoyé par l'expéditeur, le récepteur ne peut pas déterminer si c'est le message qui a été modifié ou si c'est l'origine qui a été falsifiée. En fin de compte, un destinataire suppose en toute sécurité que le message n'est pas authentique.
Limitations de MAC
Il existe deux limitations majeures du MAC, toutes deux dues à sa nature symétrique de fonctionnement -
Establishment of Shared Secret.
Il peut fournir une authentification de message parmi les utilisateurs légitimes prédéterminés qui ont une clé partagée.
Cela nécessite l'établissement d'un secret partagé avant l'utilisation de MAC.
Inability to Provide Non-Repudiation
La non-répudiation est l'assurance qu'un expéditeur de message ne peut refuser aucun message, engagement ou action précédemment envoyé.
La technique MAC ne fournit pas de service de non-répudiation. Si l'expéditeur et le destinataire sont impliqués dans un différend sur l'origine du message, les MAC ne peuvent pas fournir une preuve qu'un message a bien été envoyé par l'expéditeur.
Bien qu'aucun tiers ne puisse calculer le MAC, l'expéditeur peut néanmoins nier avoir envoyé le message et prétendre que le destinataire l'a falsifié, car il est impossible de déterminer laquelle des deux parties a calculé le MAC.
Ces deux limitations peuvent être surmontées en utilisant les signatures numériques basées sur la clé publique décrites dans la section suivante.