BrowserTools
Publicité
Accueil / Encodeurs / Générateur de hachage (SHA-1, SHA-256, SHA-384, SHA-512)

Générateur de hachage (SHA-1, SHA-256, SHA-384, SHA-512)

Calculez des hachages cryptographiques de texte ou de fichiers localement : SHA-1, SHA-256, SHA-384 et SHA-512.

Chargement de Générateur de hachage (SHA-1, SHA-256, SHA-384, SHA-512)… Si rien ne se passe, activez JavaScript.

Une fonction de hachage cryptographique est un algorithme mathématique qui prend une entrée de longueur arbitraire et produit une sortie de taille fixe, le hachage ou condensé, qui paraît aléatoire mais est entièrement déterministe. La même entrée produit toujours le même hachage, mais changer ne serait-ce qu'un seul bit de l'entrée produit un condensé complètement différent (l'effet avalanche). Cette propriété à sens unique signifie qu'il est calculatoirement infaisable de remonter d'un hachage à son entrée d'origine, ce qui fait des fonctions de hachage un fondement de la sécurité informatique. La famille SHA (Secure Hash Algorithm) a été conçue par la National Security Agency et normalisée par le NIST : SHA-1 en 1995, SHA-256/384/512 (collectivement SHA-2) en 2001.

Exemples

Entrée hello
Sortie 5d41402abc4b2a76b9719d911017c592

MD5 (128 bits). Rapide, mais cassé pour la sécurité ; à n'utiliser que pour des sommes de contrôle.

Entrée hello
Sortie aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d

SHA-1 (160 bits). Déconseillé pour les signatures.

Entrée hello
Sortie 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824

SHA-256 (256 bits). La valeur par défaut polyvalente actuelle.

Questions fréquentes

Mes données sont-elles téléversées vers un serveur ?
Non. Tout le hachage est effectué localement dans votre navigateur via l'API Web Crypto, intégrée à tous les navigateurs modernes et exécutée entièrement sur votre appareil. Votre texte et vos fichiers ne sont jamais transmis sur le réseau, ce qui permet d'utiliser cet outil en toute sécurité avec des entrées sensibles ou confidentielles.
Quelle est la différence entre SHA-256, SHA-384 et SHA-512 ?
Les trois font partie de la famille SHA-2 et sont considérés comme cryptographiquement sûrs. Les nombres renvoient à la taille de sortie en bits : SHA-256 produit un condensé hexadécimal de 64 caractères, SHA-384 produit 96 caractères et SHA-512 produit 128 caractères. SHA-256 est le plus utilisé ; SHA-384 et SHA-512 offrent des marges de sécurité plus grandes et peuvent être exigés par des normes de conformité spécifiques ou des protocoles comme les suites de chiffrement de TLS 1.3.
Quand utiliserais-je un hachage dans un vrai projet ?
Les usages courants comprennent la génération de sommes de contrôle pour vérifier l'intégrité des fichiers (distribuer un hachage SHA-256 à côté d'un téléchargement), la construction de systèmes de stockage adressables par contenu (comme Git), la création de clés de cache à partir de paramètres de requête, le calcul de codes d'authentification de message HMAC et la mise en place de la déduplication de données en comparant des hachages plutôt que le contenu complet des fichiers.
Pourquoi MD5 n'est-il pas disponible ?
MD5 est cryptographiquement cassé : des attaques par collision pratiques sont publiquement connues depuis 2004, ce qui signifie que deux entrées différentes peuvent être délibérément fabriquées pour produire le même hachage MD5. C'est pour cette raison que l'API Web Crypto n'expose pas MD5. Si vous devez vérifier une somme de contrôle MD5 d'un système hérité, utilisez SHA-256 pour toute nouvelle somme que vous générez : il est tout aussi rapide et nettement plus sûr.
Puis-je hacher un fichier, et y a-t-il une limite de taille ?
Oui. Utilisez l'entrée de fichier pour sélectionner n'importe quel fichier ; il est lu localement via l'API FileReader, converti en ArrayBuffer et transmis directement à l'API Web Crypto pour le hachage. L'outil n'impose pas de limite de taille fixe, mais les très gros fichiers (plusieurs gigaoctets) consommeront beaucoup de mémoire et prendront un temps perceptible. Pour le hachage de fichiers en production, des utilitaires en ligne de commande comme sha256sum sous Linux/macOS ou Get-FileHash sous PowerShell sont plus adaptés.
L'outil fonctionne-t-il hors ligne ?
Oui. Une fois la page chargée, l'outil fonctionne entièrement hors ligne. L'API Web Crypto est une fonctionnalité native du navigateur qui ne nécessite aucune bibliothèque ni service externe. Vous pouvez ajouter la page aux favoris et l'utiliser sans connexion internet tant que la page est en cache.
Puis-je utiliser la sortie du hachage directement comme mot de passe ou clé d'API ?
Un hachage SHA-256 d'une valeur aléatoire forte constitue une clé d'API ou un jeton de session raisonnable, mais vous ne devriez jamais hacher un mot de passe fourni par l'utilisateur avec une simple fonction SHA. SHA-256 est extrêmement rapide (des milliards de hachages par seconde sur du matériel moderne), ce qui rend trivial le forçage par force brute des mots de passe devinables. Pour les mots de passe, utilisez toujours une fonction de dérivation de clé lente (bcrypt, scrypt ou Argon2) spécifiquement conçue pour résister aux attaques par force brute.
SHA-1 est-il encore sûr à utiliser ?
SHA-1 est cassé pour la résistance aux collisions : l'attaque SHAttered (2017) a démontré la première collision SHA-1 pratique, et une attaque par collision à préfixe choisi a été publiée en 2020. SHA-1 ne devrait être utilisé dans aucune nouvelle application de sécurité. Il reste acceptable pour des usages non liés à la sécurité, comme les sommes de contrôle où la résistance aux collisions n'est pas requise, mais SHA-256 est un meilleur choix même là, puisqu'il offre les mêmes performances sur du matériel moderne.
Quel est le format de la sortie du hachage, et puis-je la convertir en Base64 ?
L'outil produit les hachages en hexadécimal minuscule (0-9, a-f), qui est le format le plus courant et lisible. Certains systèmes, notamment JWT et l'authentification HTTP Digest, attendent le hachage encodé en Base64. Vous pouvez copier la sortie hexadécimale dans l'encodeur Base64 de ce site après avoir converti l'hexadécimal en binaire, ou utiliser une bibliothèque de votre langage de programmation pour obtenir les octets bruts et les encoder en Base64 directement.
Qu'est-ce qu'une « collision de hachage » et pourquoi est-ce important ?
Une collision se produit lorsque deux entrées différentes produisent la même sortie de hachage. Comme les fonctions de hachage projettent un espace d'entrée infini sur une sortie de taille fixe, les collisions doivent mathématiquement exister, mais pour une bonne fonction de hachage elles devraient être impossibles à trouver en pratique. Lorsque les collisions peuvent être fabriquées délibérément (comme avec MD5 et SHA-1), un attaquant pourrait substituer un fichier malveillant à un fichier légitime tout en conservant le même hachage, sapant les vérifications d'intégrité et les signatures numériques.

À propos de Générateur de hachage (SHA-1, SHA-256, SHA-384, SHA-512)

Les fonctions de hachage sont utilisées partout dans les logiciels modernes. Les systèmes de stockage de mots de passe hachent les mots de passe des utilisateurs avec un sel supplémentaire, de sorte que même si la base de données est volée, les mots de passe en clair restent inconnus. Les outils d'intégrité de fichiers distribuent des sommes de contrôle SHA-256 à côté des téléchargements pour que les utilisateurs vérifient qu'un fichier n'a pas été altéré en transit. Git utilise SHA-1 (et migre vers SHA-256) pour adresser chaque commit, arbre et blob d'un dépôt. Les certificats numériques, les poignées de main TLS, les jetons d'authentification HMAC et les chaînes de signature de code dépendent tous des hachages SHA-2. Les réseaux de diffusion de contenu utilisent les hachages comme clés de cache, et les chaînes de blocs s'en servent pour la preuve de travail.

Cet outil calcule les hachages SHA-1, SHA-256, SHA-384 et SHA-512 directement dans votre navigateur à l'aide de l'API Web Crypto, une interface native du navigateur appuyée sur la bibliothèque cryptographique du système d'exploitation. Comme tout le calcul se fait sur votre appareil, votre texte ou fichier d'entrée n'est jamais téléversé vers aucun serveur, ce qui permet d'utiliser l'outil en toute sécurité avec des documents confidentiels, des identifiants de production ou des clés privées. Les résultats sont affichés en hexadécimal minuscule, le format le plus courant, et peuvent être copiés d'un seul clic.

Le choix du bon algorithme compte. SHA-1 est considéré comme cryptographiquement cassé pour la résistance aux collisions (deux entrées différentes peuvent être fabriquées pour produire le même hachage SHA-1) et ne devrait être utilisé que pour l'interopérabilité héritée, pas pour de nouvelles applications de sécurité. SHA-256 est la norme de référence actuelle, largement prise en charge et appropriée pour la grande majorité des cas. SHA-384 et SHA-512 offrent des tailles de sortie plus grandes (et des marges de sécurité légèrement plus solides) au prix de condensés un peu plus longs. Si vous devez spécifiquement hacher des mots de passe, utilisez plutôt une fonction de hachage de mots de passe dédiée comme bcrypt, scrypt ou Argon2 : les hachages cryptographiques comme SHA-256 sont volontairement rapides, ce qui en fait de mauvais choix pour le stockage de mots de passe.

L'histoire de SHA : d'origines classifiées à norme mondiale

La famille Secure Hash Algorithm a été développée par la National Security Agency (NSA) des États-Unis et normalisée par le National Institute of Standards and Technology (NIST). Le SHA original (appelé rétroactivement SHA-0) a été publié en 1993, mais la NSA l'a retiré moins d'un an plus tard, invoquant officiellement une faille, bien que la nature de cette faille soit restée classifiée. SHA-1, son successeur, a été publié en 1995 et est devenu l'un des algorithmes cryptographiques les plus déployés de l'histoire, intégré partout, des certificats SSL aux dépôts Git.

La famille SHA-2 (SHA-256, SHA-384, SHA-512) a été publiée en 2001, mais l'adoption a été lente car SHA-1 était encore considéré comme sûr à l'époque. Il a fallu la rupture théorique de SHA-1 par l'équipe de Wang Xiaoyun en 2005, et l'attaque par collision pratique SHAttered en 2017, pour pousser enfin l'industrie vers SHA-2. Le NIST a aussi normalisé SHA-3 (2015), qui repose sur une structure interne complètement différente (la construction en éponge Keccak) et sert de secours au cas où une faiblesse fondamentale serait trouvée dans SHA-2.

Un détail fascinant : la sortie de SHA-256 fait exactement 256 bits, un nombre si astronomiquement grand (environ 10^77) que le nombre de hachages SHA-256 possibles dépasse le nombre estimé d'atomes de l'univers observable. C'est pourquoi, même avec toute la puissance de calcul du monde travaillant de concert, retrouver une entrée SHA-256 précise à partir de son seul hachage est considéré comme pratiquement impossible dans un avenir prévisible.

Publicité
Publicité
Publicité