À retenir
- Le hachage est à sens unique : on ne peut pas retrouver la donnée d'origine à partir de l'empreinte.
- Une même donnée produira toujours la même empreinte.
- La taille du résultat est toujours la même, que le fichier de départ pèse 1 Ko ou 10 Go.
Hacher consiste à transformer une donnée de n'importe quelle taille (un mot, un fichier ou une vidéo) en une courte suite de caractères de longueur fixe, que l'on appelle une empreinte numérique. C'est comme créer une signature unique : si vous modifiez ne serait-ce qu'une virgule dans le document d'origine, le résultat du hachage sera totalement différent.
Étymologie
Issu du français « hacher » (couper en petits morceaux), par analogie avec la cuisine où l'on mélange des ingrédients pour en faire un tout méconnaissable. Le terme a été popularisé en informatique via l'anglais hash dès les années 1950 pour désigner l'organisation des données en mémoire.
Exemples d'usage
- Le stockage sécurisé des mots de passe : un site web ne stocke pas votre mot de passe « en clair », mais sa version hachée.
- La vérification de l'intégrité d'un téléchargement : on compare le hachage du fichier reçu avec celui fourni par l'éditeur pour vérifier qu'il n'est pas corrompu.
- Le fonctionnement de la blockchain (comme pour le Bitcoin) repose entièrement sur le hachage successif de blocs de données.
Cas d'usage
Ce concept est omniprésent en cybersécurité pour protéger la confidentialité, dans les bases de données pour retrouver une information instantanément (tables de hachage), et dans la gestion de versions de code (comme avec l'outil Git).
Bonnes pratiques
Pour la sécurité, il ne faut jamais utiliser d'algorithmes obsolètes comme MD5 ou SHA-1, car ils sont devenus faciles à pirater. On privilégiera SHA-256 ou Argon2. Il est aussi recommandé d'ajouter un « sel » (une donnée aléatoire) avant de hacher un mot de passe pour le rendre encore plus difficile à déchiffrer par des pirates.
Synonymes
Conseil
Retenez bien l'analogie de l'empreinte digitale : elle permet d'identifier quelqu'un avec certitude, mais on ne peut pas reconstruire un être humain complet à partir de sa seule empreinte.
Questions fréquentes
Quelle est la différence entre hacher et chiffrer ?
Le chiffrement est réversible (on peut retrouver le texte original avec une clé), alors que le hachage est définitif : c'est une transformation à sens unique.
Deux fichiers différents peuvent-ils avoir le même hachage ?
Théoriquement oui, c'est ce qu'on appelle une 'collision'. Cependant, avec les algorithmes modernes, la probabilité est si faible que cela est considéré comme impossible en pratique.