À propos de l’outil Générateur de hash SHA-256
SHA-256 est une fonction de hachage cryptographique de la famille SHA-2. Elle transforme n’importe quelle entrée – un mot, un document ou une image disque de plusieurs gigaoctets – en une valeur fixe de 256 bits, généralement écrite sous forme de 64 caractères hexadécimaux. Modifier un seul bit de l’entrée donne un hash complètement différent : c’est pourquoi les sommes de contrôle SHA-256 sont le moyen standard de confirmer qu’un téléchargement, une sauvegarde ou un fichier copié est complet et intact.
Cet outil calcule le hash de textes (encodés en UTF-8) et de fichiers. Les fichiers sont traités par un worker d’arrière-plan, et les plus gros sont lus par morceaux de 4 MB et hachés au fur et à mesure : même de très gros fichiers peuvent être vérifiés sans être chargés en mémoire et sans figer la page. Collez la somme de contrôle publiée par le fournisseur pour voir immédiatement si elle correspond.
Tout le hachage se fait localement dans votre navigateur. Vos textes et vos fichiers ne sont jamais envoyés.
Mode d’emploi
- Choisissez « Texte » ou « Fichiers » sous « Entrée ».
- Pour un texte, saisissez-le ou collez-le dans « Texte à hacher ». Les champs « SHA-256 (hex) » et « SHA-256 (Base64) » se mettent à jour pendant la saisie.
- Pour des fichiers, cliquez sur « Choisir des fichiers » ou faites glisser un ou plusieurs fichiers dans la zone. Ils sont hachés l’un après l’autre avec une barre de progression ; « Annuler » arrête le hachage et « Hacher à nouveau » relance un fichier annulé.
- Pour vérifier une somme de contrôle, collez la valeur attendue dans « Comparer avec le hash attendu ». Chaque résultat indique « Correspond » ou « Ne correspond pas ».
- Cochez « Hex en majuscules » si vous avez besoin de lettres capitales, et utilisez les boutons « Copier » pour copier un hash.
Fonctionnalités
- Des fichiers de toute taille: Les fichiers passent dans la fonction de hachage par morceaux de 4 MB au sein d’un Web Worker : la mémoire utilisée reste faible et la page reste réactive. Les fichiers jusqu’à 64 MB utilisent le Web Crypto intégré au navigateur lorsqu’il est disponible ; les fichiers plus gros utilisent l’implémentation SHA-256 propre à l’outil.
- Comparaison de sommes de contrôle: Collez le hash attendu en hex (majuscules ou minuscules) ou en Base64. Une ligne copiée depuis un fichier sha256sum ("hash nom-du-fichier") ou une valeur précédée de sha256: fonctionne aussi.
- Plusieurs fichiers à la fois: Ajoutez de nombreux fichiers d’un coup et suivez la progression, la durée et la vitesse de chacun. Un même hash attendu est comparé à tous les fichiers, ce qui aide à trouver le bon dans un dossier de téléchargements.
- Sortie hex et Base64: Obtenez l’empreinte en hexadécimal minuscule ou majuscule et en Base64 – la forme utilisée, par exemple, dans les attributs Subresource Integrity.
- Une implémentation vérifiée: Le code SHA-256 intégré est testé avec les vecteurs de test officiels de la norme FIPS 180-4 et avec une implémentation de référence reconnue, pour des entrées allant de 0 octet à plusieurs mégaoctets.
Exemples
Vérifier un programme d’installation ou une image ISO téléchargée
Les pages de téléchargement publient souvent une ligne comme "3f2a…9c1e distro-24.04.iso". Choisissez « Fichiers », ajoutez l’ISO téléchargée et collez cette ligne dans « Comparer avec le hash attendu ». « Correspond » signifie que le fichier est exactement celui que l’éditeur a haché.
Vérifier que deux copies sont identiques
Ajoutez l’original et la copie de sauvegarde d’un fichier. Si les deux affichent le même SHA-256, leur contenu est identique octet par octet, même si les noms ou les dates diffèrent.
Créer une valeur Subresource Integrity
Hachez un fichier JavaScript ou CSS que vous servez depuis un CDN et copiez le résultat Base64. Précédé de sha256-, il se place dans l’attribut integrity de la balise <script> ou <link>.
Comprendre un résultat différent en ligne de commande
Saisir hello donne 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824. La commande shell echo "hello" | sha256sum affiche plutôt 5891b5b5…6be03, car echo ajoute un saut de ligne. Utilisez echo -n pour hacher les mêmes octets.
Limites et remarques
- SHA-256 seul ne convient pas pour stocker des mots de passe. Il est conçu pour être rapide : des hash volés peuvent donc être attaqués à raison de milliards d’essais par seconde. Utilisez une fonction dédiée au hachage des mots de passe, comme Argon2, scrypt, bcrypt ou PBKDF2, avec un sel unique ; réservez SHA-256 aux contrôles d’intégrité.
- Un hash qui correspond ne prouve l’intégrité que si la valeur attendue provient d’une source fiable, comme la page HTTPS de l’éditeur ou un fichier de sommes de contrôle signé. Quelqu’un qui peut remplacer le fichier peut souvent aussi remplacer une somme de contrôle stockée à côté.
- Dans le texte que vous tapez ou collez, le navigateur normalise les sauts de ligne en LF, et le texte est encodé en UTF-8. Pour hacher les octets exacts d’un fichier texte (par exemple avec des fins de ligne Windows CRLF), ajoutez plutôt le fichier.
- Les fichiers vides (0 octet) sont acceptés ; leur SHA-256 est toujours e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855, donc cette valeur signifie que le fichier n’a aucun contenu.
- La vitesse de hachage dépend de votre appareil. Les fichiers de plus de 64 MB, ou tous les fichiers dans les navigateurs sans Web Crypto (par exemple sur des pages qui ne sont pas servies en HTTPS), utilisent l’implémentation intégrée, plus lente que le code natif.
- Seul SHA-256 est calculé. Les autres algorithmes comme MD5, SHA-1 ou SHA-512 ne sont pas pris en charge.
Questions fréquentes
Un hash SHA-256 peut-il être déchiffré ou inversé ?
Non. Un hash est une empreinte à sens unique, pas une donnée chiffrée : il n’y a rien à déchiffrer. La seule façon de trouver une entrée pour un hash donné est de deviner des entrées et de comparer – ce qui n’est réaliste que pour des entrées courtes ou courantes, comme des mots de passe faibles.
Pourquoi mon hash est-il différent de celui d’un autre outil ?
Presque toujours, l’entrée diffère légèrement : un saut de ligne final (echo en ajoute un), des fins de ligne Windows au lieu d’Unix, un espace au début ou à la fin, ou un autre encodage de texte. Pour les fichiers, assurez-vous que le téléchargement est terminé et que vous comparez le bon fichier.
Dois-je utiliser SHA-256 pour stocker les mots de passe des utilisateurs ?
Pas seul. SHA-256, avec ou sans sel, est trop rapide pour résister à des attaques par devinette hors ligne. Le stockage des mots de passe demande un algorithme volontairement lent et salé, comme Argon2id, scrypt, bcrypt ou PBKDF2 avec de nombreuses itérations.
Quelle est la différence entre la sortie hex et la sortie Base64 ?
Les deux encodent la même empreinte de 32 octets. Le hex utilise 64 caractères (0–9, a–f) et c’est ce qu’affichent les fichiers de sommes de contrôle et la plupart des sites web. Le Base64 utilise 44 caractères et apparaît par exemple dans Subresource Integrity et certaines API.
Mes fichiers sont-ils envoyés pour calculer le hash ?
Non. Les fichiers sont lus directement depuis votre appareil par cette page et hachés dans votre navigateur. Rien n’est envoyé sur le réseau, et les gros fichiers n’ont jamais à quitter votre ordinateur.