L’authentification a pour rôle d’assurer que le paquet reste inchangé pendant la transmission, et que le mot de passe est valide pour l’usager qui fait la requête. Pour construire ce mécanisme, on doit avoir connaissance des fonctions de hachage à une seule direction. Des exemples de ces fonctions sont : MD5 et SHA-1. Ces fonctions prennent en entrée une chaîne de caractères de longueur indéfinie, et génèrent en sortie une chaîne d’octets de longueur finie (16 octets pour MD5, 20 octets pour SHA-1). Ces fonctions de hachage à une seule direction ont la propriété suivante:
On peut dire
aussi que :
Avant d’utiliser une fonction de hachage à une direction pour faire de la sécurité, il est important de définir ce que veut dire « très difficile ». Dans le cas de SHA-1, les chances qu’une deuxième chaîne de caractères donne un résultat identique à la première est de l’ordre de 1 sur 1,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000 (Source : SET « Secure Electronic Transaction Specification », groupe formé par Visa, MasterCard et d’autres.). Il n’est donc pas réaliste de trouver une telle combinaison dans des temps acceptables, même avec des ordinateurs très puissants. Pour authentifier l’information qui va être transmise, on doit aussi avoir un mot de passe qui est « partagé ». Le mot de passe ne doit donc être connu que par les deux entités qui s’envoient les messages, et préférablement par personne d’autre.
Avec cette
technique, le mot de passe est validé sans qu’il ait été transmis sur
le réseau. Quelqu’un qui saisit les paquets SNMPv3 passants sur le réseau
ne peut pas facilement trouver le mot de passe. Pour ce qui est de SNMPv3, l’authentification se fait à l’aide de HMAC-MD5-96 ou de HMAC-SHA- 96, qui est un peu plus compliqué que ce qui a été decrit ici. Le résultat de la fonction de hachage est placé dans le bloc paramètres de sécurité du paquet SNMPv3. L’authentification se fait sur tout le paquet. Il est important de rappeler que l’étape d’authentification ne vise pas à cacher l’existence du paquet ou à le rendre illisible. Si uniquement l’authentification est appliquée, les personnes qui saisissent les paquets passants sur le réseau peuvent encore voir le contenu de celui-ci. Toutefois, elles ne peuvent pas en changer le contenu sans connaître le mot de passe. |