Ce que sont les hash cryptographiques et comment ils fonctionnent
Une fonction de hash cryptographique prend n'importe quelle entrée et produit une empreinte de longueur fixe (le hash) unique à cette entrée. Modifiez un seul bit de l'entrée et le hash change complètement. Cette propriété, appelée effet avalanche, rend les hash idéaux pour vérifier l'intégrité des données : si le hash d'un fichier téléchargé correspond au hash publié, le fichier est arrivé intact et non modifié.
Les fonctions de hash sont unidirectionnelles : connaissant un hash, il n'existe pas de moyen mathématique de retrouver l'entrée originale. Elles sont aussi déterministes : la même entrée produit toujours le même hash. Ces deux propriétés font des hash la base du stockage de mots de passe, des signatures numériques, de la blockchain et de la vérification d'intégrité.
MD5, SHA-1 et SHA-256 comparés
MD5 produit un hash de 128 bits (32 caractères hexadécimaux). Il est rapide mais cryptographiquement cassé — les attaques par collision sont pratiques. N'utilisez pas MD5 à des fins sensibles. Il reste utile pour les checksums non-sécuritaires : vérification de téléchargements, détection de corruption accidentelle.
SHA-1 produit un hash de 160 bits (40 caractères hex). Formellement cassé en 2017 (attaque SHAttered). SHA-256 produit un hash de 256 bits (64 caractères hex). C'est actuellement la norme pour les applications de sécurité : certificats TLS, signature JWT, blockchain. Aucune attaque pratique n'existe.
Utilisations pratiques de cet outil
Vérifiez l'intégrité d'un fichier en hachant son contenu et en le comparant au checksum publié. Générez un identifiant reproductible pour un texte (clé de cache, ID de contenu). Apprenez à quoi ressemble la sortie de hash avant d'utiliser une bibliothèque de hachage en code. Comparez deux textes pour confirmer qu'ils sont identiques octet par octet.