Le cryptage et le hachage sont des concepts fondamentaux en informatique pour tout type de « secret », mais vous ne remarquez peut-être pas à quel point ils sont répandus.
Par Laurent Szpirglas, Regional Sales Manager France, Ping Identity
Les mots de passe sont la méthode la moins sûre d’authentification de connexion, pourtant ils sont encore largement utilisés.
Des hackers peuvent exploiter des informations d’identification compromises pour des violations de données, des usurpations de comptes, des ransomwares et d’autres activités criminelles.
Les entreprises qui doivent utiliser des mots de passe devraient toujours utiliser des outils cryptographiques éprouvés pour assurer la sécurité des mots de passe, tels que le cryptage, le hachage et le salage, plutôt que d’essayer de créer les leurs à partir de zéro.
Qu’est-ce que le cryptage ?
Le cryptage est une méthode permettant de sécuriser un mot de passe (texte en clair) en le convertissant, à l’aide d’une formule mathématique, en une version brouillée (texte chiffré).
Le cryptage est une fonction bidirectionnelle, ce qui signifie que le mot de passe original en clair qui est crypté en texte chiffré peut être ramené en texte en clair en le décryptant.
Certains systèmes d’authentification exigent encore des mots de passe réversibles.
Toute personne disposant de la bonne clé cryptographique peut prendre le texte chiffré et l’inverser pour révéler les mots de passe en clair, ce qui les rend moins sûrs.
La protection des clés cryptographiques est essentielle, car un acteur malveillant disposant de la clé peut déverrouiller le chiffrement pour récupérer les mots de passe.
Un module de sécurité matériel (HSM) peut effectuer les principales opérations cryptographiques et stocker les clés de manière à empêcher leur extraction du HSM.
Le cryptage peut jouer un rôle important dans le stockage des mots de passe, et de nombreux algorithmes et techniques cryptographiques sont disponibles.
Par exemple, les gestionnaires de mots de passe utilisent le cryptage pour préserver la confidentialité des données confidentielles.
Lorsqu’un utilisateur a besoin d’un mot de passe, le gestionnaire de mots de passe déchiffre le texte chiffré et insère le mot de passe en clair dans le formulaire du navigateur Web, car le texte en clair est le seul format autorisé par le navigateur.
Qu’est-ce que le hachage ?
Le hachage utilise également un algorithme pour transformer un mot de passe en clair en un texte chiffré qui masque le mot de passe réel.
Contrairement au cryptage, le hachage est une fonction à sens unique.
Si vous prenez un mot de passe arbitraire en clair, de n’importe quelle longueur, et que vous le faites passer par un algorithme de hachage, celui-ci génère une chaîne ou un nombre hexadécimal qui est unique au texte en clair fourni.
La longueur dépend de l’algorithme utilisé et les hachages de mots de passe ne peuvent pas être retransformés en mot de passe original en clair.
Le serveur stocke une version hachée du mot de passe. Lorsque l’utilisateur saisit un mot de passe en clair, le système calcule le hachage et compare les hachages.
Si les hachages sont égaux, le serveur est en mesure de confirmer le mot de passe et l’utilisateur peut accéder au système.
Qu’est-ce que le salage ?
Tout comme vous ajoutez du sel pour assaisonner votre plat, une chaîne de caractères aléatoire (sel) est ajoutée aux mots de passe pour les améliorer.
Chaque utilisateur se voit attribuer un sel différent, qui n’est connu que du serveur, ce qui les rend uniques et plus sûrs.
Le sel peut être placé de part et d’autre du mot de passe.
Par exemple, en ajoutant du sel au mot de passe « Mot de passe », on obtient un mot de passe salé tel que « 4(j3Li95Mot de passe » ou « Mot de passe4(j3Li95 ».
Après l’ajout du sel, la combinaison du mot de passe en clair et du sel est ensuite hachée, ce qui la rend plus sûre qu’un mot de passe haché seul.
Conclusion
Les mots de passe seuls ne sont pas suffisants pour la gestion des identités et des accès (IAM) et doivent être renforcés par d’autres méthodes d’authentification comme vu ci-dessus.
Ces fonctions se déroulent en arrière-plan, sans ajouter d’accrocs à l’expérience utilisateur…