Hachage
Générez des hachages SHA-1, SHA-256, SHA-384, SHA-512
MD5 n'est pas fourni — il est cryptographiquement cassé et n'est pas disponible dans l'API SubtleCrypto du navigateur. Utilisez SHA-256 ou plus fort.
Qu'est-ce qu'un hachage cryptographique ?
Une fonction de hachage cryptographique transforme n'importe quelle entrée — un seul caractère, un document de 5 pages — en une chaîne de longueur fixe de chiffres hexadécimaux. SHA-256 produit toujours 64 caractères hexadécimaux ; SHA-512, 128. Deux propriétés cruciales : la même entrée produit toujours le même hachage, et il est computationnellement infaisable de trouver deux entrées différentes avec le même hachage (résistance aux collisions).
Les hachages sont utilisés pour les vérifications d'intégrité des fichiers (téléchargez un fichier ? comparez son SHA-256 à la valeur publiée), le stockage des mots de passe (les serveurs stockent le hachage, pas le mot de passe), les signatures HMAC, et le stockage adressé par contenu (Git utilise SHA-1 pour identifier les commits).
Cas d'utilisation
- Vérifiez l'intégrité du téléchargement — comparez un SHA-256 d'un fichier téléchargé avec le checksum listé par l'éditeur.
- Détectez le contenu dupliqué — hachez des chaînes ou le contenu de fichiers pour repérer les doublons sans stocker les originaux.
- Construisez des clés de cache — transformez de longues entrées (URLs, chaînes de requête, corps de requête) en clés de longueur fixe pour Redis ou Memcached.
- Auditez les artefacts Git — calculez SHA-1 pour inspecter les adresses d'objets blob/arbre en dehors du plumbing de Git.
Exemples
| Entrée | Résultat |
|---|---|
| hello | SHA-256: 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 |
| (empty string) | SHA-256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 |
Questions fréquemment posées
Pourquoi pas de MD5 ?
MD5 est cryptographiquement cassé — des collisions peuvent être générées en quelques secondes sur un ordinateur portable. L'API SubtleCrypto du navigateur ne l'expose pas intentionnellement. Utilisez SHA-256 ou plus fort.
Puis-je hacher un fichier ?
Cet outil hache l'entrée texte. Pour hacher un fichier, déposez-le dans la console du navigateur : `crypto.subtle.digest('SHA-256', await file.arrayBuffer())`.
Le hachage est-il déterministe entre les exécutions ?
Oui — SHA-256 de 'hello' est toujours la même valeur. Les fonctions de hachage sont pures (pas de sel, pas de hasard) par conception.
Devrais-je utiliser SHA-1 ?
Évitez pour les nouvelles applications — il a été cassé pour des attaques par collision. SHA-1 est encore courant pour les checksums de fichiers et Git, mais utilisez SHA-256 pour tout ce qui est pertinent en matière de sécurité.
Mon entrée est-elle envoyée quelque part ?
Non. Le hachage utilise l'API crypto native du navigateur ; rien ne quitte votre appareil.
