Comment générer des hash MD5, SHA-256 et autres

· 4 min de lecture

Le hashage convertit n'importe quelle entrée — un mot de passe, un fichier, un message — en une chaîne de longueur fixe. La même entrée produit toujours le même hash, mais le moindre changement dans l'entrée produit un hash complètement différent. Cela rend le hashage essentiel pour la vérification d'intégrité, le stockage de mots de passe et les signatures numériques.

Comment fonctionne le hashage

Une fonction de hash prend une entrée de n'importe quelle taille et produit une sortie de taille fixe :

Entrée Hash SHA-256 (16 premiers caractères)
hello 2cf24dba5fb0a30e...
Hello 185f8db32271fe25...
hello! ce06092fb948d9ff...

Remarquez qu'un seul caractère modifié (h minuscule en H majuscule) ou ajouté change complètement le hash. C'est ce qu'on appelle l'effet d'avalanche.

Algorithmes de hash courants

Algorithme Longueur Statut À utiliser pour
MD5 32 caractères Cassé (non sûr) Checksums hérités, usages non sécurisés
SHA-1 40 caractères Cassé (non sûr) Systèmes hérités uniquement
SHA-256 64 caractères Sûr Intégrité de fichier, signatures numériques
SHA-512 128 caractères Sûr Applications à haute sécurité

SHA-256 est le standard actuel pour la plupart des usages. MD5 et SHA-1 ne devraient être utilisés que pour interagir avec des systèmes hérités qui les exigent.

Comment générer un hash

  1. Choisissez votre algorithme — sélectionnez MD5, SHA-1, SHA-256, SHA-384 ou SHA-512. Utilisez SHA-256 sauf raison spécifique.
  2. Saisissez du texte ou importez un fichier — tapez ou collez du texte, ou sélectionnez un fichier à hasher.
  3. Copiez le hash — le résultat est une chaîne hexadécimale utilisable pour vérification, stockage ou comparaison.

Usages pratiques

Vérification d'intégrité de fichier — téléchargez un fichier et comparez son hash à celui publié officiellement. S'ils correspondent, le fichier est authentique et non corrompu.

Stockage de mots de passe — les applications stockent des hashs de mots de passe, pas les mots de passe eux-mêmes. Quand vous vous connectez, votre entrée est hashée et comparée au hash stocké.

Déduplication de données — hashez de gros fichiers pour déterminer rapidement s'ils sont identiques sans les comparer octet par octet.

HMAC pour la sécurité d'API — utilisez HMAC (hash avec une clé secrète) pour signer les requêtes d'API et s'assurer qu'elles n'ont pas été altérées en transit.

Astuces

Questions fréquentes

Quelle est la différence entre MD5, SHA-1 et SHA-256 ?

MD5 produit un hash de 128 bits (32 caractères hex), SHA-1 produit 160 bits (40 caractères) et SHA-256 produit 256 bits (64 caractères). MD5 et SHA-1 sont considérés comme cryptographiquement cassés. SHA-256 est actuellement sûr et recommandé pour la vérification d'intégrité et la sécurité.

Peut-on inverser un hash pour retrouver la donnée d'origine ?

Non. Les fonctions de hash sont à sens unique par conception. Vous ne pouvez pas inverser mathématiquement un hash vers son entrée. En revanche, les mots de passe courants peuvent être retrouvés dans des tables précalculées (rainbow tables), d'où l'importance de saler les mots de passe avant hashage.

Qu'est-ce que HMAC ?

HMAC (Hash-based Message Authentication Code) combine une fonction de hash avec une clé secrète. Il vérifie à la fois l'intégrité et l'authenticité des données — prouvant qu'elles n'ont pas été altérées et qu'elles ont été produites par quelqu'un connaissant la clé secrète.

Mes données sont-elles envoyées sur un serveur ?

Non. Tout le hashage tourne dans votre navigateur avec l'API Web Crypto. Vos textes et fichiers ne quittent jamais votre appareil.