Générateur de hash
Générez des hachages cryptographiques à partir de tout texte.
Qu'est-ce qu'une fonction de hachage ?
Une fonction de hachage convertit une donnée d'entrée de taille quelconque (texte, fichier) en une empreinte numérique de taille fixe, appelée hash ou digest. Les fonctions de hachage cryptographiques (MD5, SHA-1, SHA-256, SHA-512) sont conçues pour être rapides à calculer, mais impossibles à inverser et résistantes aux collisions.
Les hashs sont utilisés pour vérifier l'intégrité des fichiers (somme de contrôle), stocker des mots de passe en toute sécurité (jamais en clair), signer des documents électroniquement, identifier des contenus sans révéler leur contenu, et indexer des bases de données.
Algorithmes de hachage pris en charge
- SHA-1: SHA-1 produit une empreinte de 160 bits (40 caractères hexadécimaux). C'était autrefois le standard pour les certificats TLS et les commits Git, mais des faiblesses cryptographiques ont été découvertes en 2017. SHA-1 est désormais déconseillé pour un usage de sécurité, mais reste courant pour les sommes de contrôle non liées à la sécurité.
- SHA-256: SHA-256 produit un hachage de 256 bits (64 caractères hexadécimaux). C'est l'algorithme le plus utilisé aujourd'hui, sécurisant les connexions TLS, les transactions Bitcoin, les certificats de signature de code et la vérification des paquets logiciels.
- SHA-384: SHA-384 produit un hash de 384 bits (96 caractères hexadécimaux). C'est une version tronquée de SHA-512, couramment utilisée dans les chaînes de certificats TLS et les constructions HMAC où une marge de sécurité supplémentaire est souhaitée.
- SHA-512: SHA-512 produit un hash de 512 bits (128 caractères hexadécimaux). Il offre la force maximale de la famille SHA-2 et peut être plus rapide que SHA-256 sur les processeurs 64 bits, car il opère nativement sur des mots de 64 bits.
Usages courants du hachage
- Vérifier l'intégrité d'un fichier en comparant les sommes de contrôle après téléchargement.
- Stocker des mots de passe de manière sécurisée dans des bases de données (toujours avec un sel unique par utilisateur).
- Générer des signatures numériques pour des documents et des paquets logiciels.
- Cache-busting en développement web en ajoutant des hachages de contenu aux noms de fichiers.
- Créer des identifiants uniques basés sur le contenu dans des systèmes distribués.
Hachage et chiffrement
Le chiffrement est réversible — vous pouvez déchiffrer les données avec la bonne clé. Le hachage est une fonction à sens unique — vous ne pouvez pas retrouver le texte original à partir d'un hachage. Cela rend le hachage idéal pour les mots de passe (il suffit de vérifier, pas de récupérer) et pour les contrôles d'intégrité (il suffit de détecter les modifications).
Considérations de sécurité
MD5 et SHA-1 sont considérés cassés pour les applications cryptographiques — des collisions ont été démontrées. Utilisez SHA-256 ou SHA-3 pour la sécurité. Pour les mots de passe, n'utilisez JAMAIS un hash simple : utilisez des fonctions de stretching comme bcrypt, scrypt ou Argon2 avec un sel aléatoire pour résister aux attaques par force brute et par dictionnaire.
Questions fréquentes
Mes données sont-elles envoyées à un serveur ?
Non. Le hachage s'effectue entièrement dans votre navigateur via Web Crypto API. Vos données ne quittent jamais votre appareil, ce qui rend l'outil sûr pour des fichiers et textes confidentiels.
Peut-on inverser un hash ?
Théoriquement non — les fonctions de hachage cryptographiques sont conçues pour être unidirectionnelles. En pratique, pour des entrées courtes ou prévisibles (mots de passe faibles), des attaques par dictionnaire et par rainbow tables peuvent retrouver l'entrée. C'est pourquoi on utilise le salage et le stretching.