Glossaire

Fonction de hachage

algorithme de hachagefonction de condensat

Une fonction de hachage transforme des données de longueur pratiquement quelconque en un condensat de taille fixe.

Définition

Une fonction de hachage prend des données et calcule une valeur de taille fixe appelée hash, condensat ou empreinte. Les mêmes octets d'entrée produisent toujours la même sortie, tandis qu'une petite modification de l'entrée devrait normalement changer le condensat.

Le hachage n'est pas du chiffrement. Un condensat n'est pas destiné à être décodé ou déchiffré pour retrouver le message d'origine; il sert à comparer, identifier, vérifier l'intégrité et construire des mécanismes cryptographiques plus larges.

Propriétés cryptographiques

Une fonction de hachage cryptographique est conçue pour résister aux attaques par préimage, seconde préimage et collision. Autrement dit, il doit être difficile de trouver une entrée pour un condensat donné, une autre entrée ayant le même condensat qu'un message choisi, ou deux entrées quelconques partageant le même condensat.

SHA-256, SHA-512, SHA-3 et BLAKE2 sont utilisés dans les systèmes modernes. MD5 et SHA-1 apparaissent encore dans d'anciennes sommes de contrôle, mais leur résistance aux collisions est cassée et ils ne doivent pas protéger de données sensibles.

Usages et confusions

Les hashes sont souvent affichés sous forme de chaînes hexadécimales. Par exemple, SHA-256 produit 32 octets, généralement écrits avec 64 caractères hexadécimaux. Comparer un condensat recalculé avec une valeur publiée de confiance peut montrer si les données ont changé.

Un hash simple n'authentifie pas l'auteur des données. Utilisez un HMAC ou une signature numérique si un attaquant peut modifier le contenu volontairement, et une fonction de hachage de mots de passe comme Argon2id ou bcrypt plutôt qu'un hash rapide brut pour stocker des mots de passe.

Questions fréquentes

Non. Un hash est un condensat à sens unique, pas un texte chiffré. On peut seulement deviner des entrées possibles, les hacher et comparer les résultats.

Leurs usages se recoupent, mais pas leur niveau de sécurité. Une somme de contrôle détecte les changements accidentels; un hash cryptographique est conçu pour résister à certaines attaques délibérées.

Ils peuvent utiliser des algorithmes différents ou hacher des octets différents. Espaces, fins de ligne, normalisation Unicode, encodage du texte et entrée fichier ou texte changent le résultat.

Voir aussi