Non, la fonction de hachage MD5 ne doit pas être utilisée pour générer les empreintes des mots de passe, car les mots de passe originaux peuvent être retrouvés sans trop de difficultés, avec une faible puissance de calcul.

Cela veut dire que si la base de données contenant les empreintes des mots de passe (ou hash) des utilisateurs était dérobée, les mots de passe originaux pourraient être retrouvés et utilisés pour nuire les utilisateurs.

La CNIL1 a déjà indiqué que la fonction MD5 ne devrait pas être utilisée pour des opérations cryptographiques comme les mots de passe. Elle a d’ailleurs sanctionné la société en charge du site BricoPrive.com pour l’avoir utilisée, considérant que les mots de passe n’étaient pas suffisamment sécurisés, ce qui est contraire au RGPD2 :

« La [CNIL] rappelle que le recours à la fonction de hachage MD5 […] n’est plus considérée depuis 2004 comme à l’état de l’art et son utilisation en cryptographie ou en sécurité est proscrite. Ainsi, l’utilisation de cet algorithme permettrait à une personne ayant connaissance du mot de passe haché de déchiffrer celui-ci sans difficulté en un temps très court (par exemple, au moyen de sites internet librement accessibles qui permettent de retrouver la valeur correspondante au hash du mot de passe).

Dans ces conditions […], la [CNIL] considère que le système de hachage utilisé ne permettait pas de garantir la sécurité des données, au sens de l’article 32 du RGPD. »

D’autres fonctions de hachage et d’autres méthodes peuvent être utilisées en remplacement de MD5, comme SHA-256 ou l’utilisation d’un sel. Référez-vous aux recommandations3 de l’OWASP4 pour connaître les meilleures façons de stocker des mots de passe.

Note : Des vulnérabilités majeures ont déjà été trouvées dans la fonction de hachage MD5. La fonction MD5 n’est, par exemple, pas résistante aux collisions, ce qui signifie que plusieurs valeurs peuvent avoir la même empreinte (ou hash). En utilisant MD5 pour hacher les mots de passe des utilisateurs, il y a donc, théoriquement, un risque que des mots de passe incorrects soient considérés comme valides. Cela est cependant très peu probable, la taille des mots de passe étant limitée, mais pour d’autres scénarios, cela peut être problématique.

Notes et références

  1. CNIL : Commission Nationale de l’Informatique et des Libertés (cnil.fr).
  2. RGPD : Règlement Général de Protection des Données (Règlement (UE) 2016/679).
  3. Les recommandations de l’OWASP sur le stockage des mots de passe : « Password Storage Cheat Sheet » (en anglais).
  4. OWASP : Open Web Application Security Project (owasp.org).