Outil gratuit · 100 % navigateur
Hash Lab
01Calculer
Encodé en UTF-8, calcul à chaque frappe.
Avec une clé, chaque ligne devient un HMAC (RFC 2104) de l’algorithme correspondant. Clé encodée en UTF-8.
Empreintes
prêt- MD5 128 bits Correspond
- SHA-1 160 bits Correspond
- SHA-256 256 bits Correspond
- SHA-384 384 bits Correspond
- SHA-512 512 bits Correspond
MD5 et SHA-1 sont cassés face aux collisions. Ils restent utiles pour un contrôle d’intégrité non hostile, jamais pour une signature ou un mot de passe.
02Identifier
Longueur, alphabet et préfixe déterminent les formats possibles.
| Format | hashcat -m | John --format | Confiance |
|---|
Les modes indiqués suivent la documentation de hashcat et de John the Ripper (jumbo). Une case vide signifie qu’aucun mode n’est indiqué avec certitude.
Fonctions de hachage
Une fonction de hachage transforme une donnée de taille quelconque en une empreinte de taille fixe : 128 bits pour MD5, 256 bits pour SHA-256. La même entrée donne toujours la même empreinte, et le moindre bit modifié change complètement le résultat. Une fonction cryptographique ajoute trois propriétés : il doit être impossible en pratique de retrouver l’entrée (résistance à la préimage), de trouver une autre entrée de même empreinte (seconde préimage) et de fabriquer deux entrées qui collisionnent.
HMAC (RFC 2104) combine une fonction de hachage et une clé secrète. Il prouve qu’un message vient de quelqu’un qui connaît la clé et qu’il n’a pas été modifié. C’est le mécanisme des signatures de webhooks, des JWT HS256 et de nombreuses API.
Pourquoi MD5 et SHA-1 sont cassés
Des collisions MD5 se calculent en quelques secondes depuis 2005 et ont servi à forger un certificat d’autorité en 2008, puis à forger le certificat Microsoft utilisé par le malware Flame en 2012. Pour SHA-1, Google et le CWI ont publié en 2017 deux PDF différents de même empreinte (SHAttered), et une collision à préfixe choisi a suivi en 2020. Ces deux fonctions restent acceptables pour repérer une corruption accidentelle, mais pas pour une signature, un certificat ou toute vérification face à un adversaire. Utilisez SHA-256 ou SHA-512.
Le cas des mots de passe
Une fonction de hachage rapide est un mauvais choix pour stocker un mot de passe : un GPU teste des dizaines de milliards de MD5 ou de NTLM par seconde. Le sel, une valeur aléatoire propre à chaque compte, empêche les tables précalculées et oblige à attaquer chaque hash séparément, mais il ne ralentit pas le calcul.
Les fonctions dédiées sont volontairement lentes et paramétrables. Argon2id est la recommandation actuelle de l’OWASP ; scrypt et bcrypt restent acceptables, PBKDF2 aussi avec un nombre d’itérations élevé quand une conformité FIPS l’impose. Leur coût se règle pour qu’une vérification prenne quelques dizaines de millisecondes sur votre serveur.
Les limites de l’identification
Un hash ne dit pas quel algorithme l’a produit. Les formats préfixés ($2b$, $6$, $krb5tgs$) s’identifient sans ambiguïté. Une simple chaîne hexadécimale ne révèle que sa longueur : 64 caractères correspondent aussi bien à SHA-256 qu’à SHA3-256 ou à un SHA-256 salé.
Croisez toujours avec la source : une base MySQL, un fichier /etc/shadow, un dump NTDS ou une capture Responder indiquent le format bien mieux que la chaîne seule.
?Questions fréquentes
Mes fichiers sont-ils envoyés en ligne ?
Le fichier est lu par votre navigateur et haché en mémoire avec l’API WebCrypto (SHA) et une implémentation locale de MD5. Rien n’est transmis ni conservé. Vous pouvez vérifier l’intégrité d’un document confidentiel sans le faire sortir de votre poste.
Quelle taille de fichier est prise en charge ?
Les fichiers de quelques centaines de mégaoctets passent sans difficulté sur un ordinateur récent. Le fichier entier est chargé en mémoire : au-delà d’un gigaoctet, préférez sha256sum, shasum ou Get-FileHash en ligne de commande.
Peut-on « déchiffrer » un hash MD5 ou SHA-1 ?
Une fonction de hachage ne se déchiffre pas, car elle n’est pas réversible. Les sites qui prétendent le faire comparent votre hash à des tables d’empreintes déjà calculées. Un mot de passe courant haché sans sel est retrouvé instantanément, un mot de passe long et aléatoire ne l’est pas.
Pourquoi l’identification donne plusieurs résultats ?
Beaucoup de formats produisent la même longueur et le même alphabet. Un hash de 32 caractères hexadécimaux peut être un MD5, un NTLM, un MD4 ou un LM. L’outil classe les candidats selon les formats les plus fréquents, mais seul le contexte (application, base, dump Windows) permet de trancher.
Que contient la colonne John ?
Elle donne le nom du format à passer à John the Ripper avec --format=. Une valeur absente signifie que le format n’existe pas sous ce nom ou qu’il n’est pas assez établi pour être indiqué avec certitude.
+Autres outils
- >_Reverse Shell Generator
Payloads de reverse shell, listeners et upgrade TTY.
- ⟲Forge
Recettes d’encodage et de décodage, à la CyberChef.
- {·}JWT Inspector
Décodez un JWT, lisez ses claims, repérez les faiblesses.