Une fonction de hachage transforme toute entrée — un mot, un document ou une image disque de 4 GB — en une empreinte courte et de longueur fixe. Cet outil calcule les algorithmes courants (CRC-32, MD5, SHA-1, SHA-256, SHA-384, SHA-512, SHA3-256, Keccak-256) et crée des HMAC, le tout dans votre navigateur. Ce guide explique à quoi servent les empreintes, quels algorithmes sont sûrs en 2026 et quelle est la différence entre hachage, chiffrement et stockage des mots de passe.

À quoi servent réellement les empreintes

Le hachage a deux usages courants : l’intégrité et l’identification. Lorsque vous téléchargez un logiciel et comparez son SHA-256 à la valeur publiée par l’éditeur, vous vérifiez que les octets sont arrivés intacts. Lorsqu’un commit Git, un cache adressé par contenu ou un système de déduplication a besoin d’un identifiant court et stable pour un bloc de données, une empreinte remplit ce rôle. Sa propriété fondamentale est le déterminisme : une même entrée produit toujours la même empreinte, et toute modification — même un seul bit — en produit une complètement différente (l’effet avalanche visible dans l’empreinte ci-dessus).

Quels algorithmes sont sûrs en 2026

CRC-32 sert à détecter des erreurs (par exemple dans les fichiers ZIP), pas à assurer la sécurité. MD5 (1991) et SHA-1 (1995) sont cryptographiquement cassés : des chercheurs ont produit de véritables collisions (deux fichiers différents avec la même empreinte). Ils ne doivent donc jamais être utilisés lorsqu’un attaquant pourrait tirer parti d’une fausse correspondance — pour les signatures, les certificats ou la détection d’altérations. Ils restent adaptés aux sommes de contrôle sans adversaire, comme la détection d’une corruption accidentelle ou la déduplication de fichiers.

La famille SHA-2 (SHA-256, SHA-384, SHA-512) et SHA-3 / Keccak-256 ne présentent aucune collision pratique connue et constituent le bon choix par défaut pour tout usage sensible à la sécurité. SHA-512 est souvent plus rapide que SHA-256 sur les processeurs 64 bits : ici, « plus grand » ne signifie donc pas « plus lent ».

Le hachage n’est ni du chiffrement ni du stockage de mots de passe

Le chiffrement est réversible avec une clé ; le hachage est conçu pour être à sens unique, il n’existe donc pas de « déhachage ». Les empreintes ne garantissent pas la confidentialité, mais elles sont idéales pour la vérification.

Les mots de passe sont un cas particulier. Les hachages rapides bruts (même SHA-256) sont un mauvais choix, car leur vitesse permet aux attaquants de tester des milliards de possibilités par seconde contre une base de données volée. Le stockage moderne des mots de passe utilise une fonction de dérivation de clé — bcrypt, scrypt ou Argon2 — volontairement lente et dotée d’un sel propre à chaque utilisateur. Pour hacher des mots de passe, utilisez l’une de ces fonctions, et non les algorithmes de cet outil.

HMAC : prouver l’origine d’un message

Un hachage simple prouve qu’un message n’a pas changé, mais n’importe qui peut le recalculer : il ne permet donc pas de prouver qui a envoyé le message. Un HMAC résout ce problème en intégrant une clé secrète partagée au hachage. L’expéditeur calcule HMAC(key, message) et joint le résultat ; le destinataire le recalcule avec la même clé. Une correspondance prouve à la fois l’intégrité et l’authenticité. Ce mécanisme sert aux signatures de webhook (Stripe, GitHub, Slack), à la signature des requêtes AWS et aux jetons JWT « HS256 ». Utilisez une clé longue et aléatoire, puis comparez les HMAC côté serveur avec une vérification à temps constant.