Non, la fonction de hachage MD5 ne doit pas être utilisée pour générer les empreintes des mots de passe, car des vulnérabilités majeures ont été découvertes depuis déjà nombreuses années.

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 un risque que des mots de passe incorrects soient considérés comme valides.

La fonction MD5 peut aussi être facilement inversée, ce qui veut dire que si la base contenant les mots de passe hachés des utilisateurs était dérobée, les mots de passe originaux pourraient être facilement retrouvés et utilisés pour nuire les utilisateurs.

La CNIL1 a déjà indiqué que la fonction MD5 ne devrait être utilisé 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 peuvent être utilisées en remplacement de MD5 comme SHA-256. Référez-vous aux recommandations3 de l'OWASP4 pour connaître les meilleurs façons de stocker des mots de passe.

Notes et références

  1. CNIL : Commission Nationale de l'Informatique et des Libertés.
  2. RGPD : Règlement Général de Protection des Données.
  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.