Encoders & Utilities

Générateur de hash

Calcule MD5, SHA-1, SHA-256, SHA-384, SHA-512 et HMAC pour texte ou fichiers. Hashing local jusqu'à 100 Mo.

À propos de cet outil

Hash Generator calcule des hashes cryptographiques pour du texte ou des fichiers entièrement dans votre navigateur. Les algorithmes pris en charge couvrent la famille SHA-2 complète (SHA-256, SHA-384, SHA-512) via l'API Web Crypto, plus les MD5 et SHA-1 historiques via une petite implémentation JS (conservés pour la vérification des sorties héritées). Les variantes HMAC sont disponibles pour tous les algorithmes SHA-2 — collez une clé et le message, obtenez la sortie hash-clé prête pour la vérification de signature.

Pour les fichiers (glisser-déposer), le fichier est streamé à travers la fonction de hash en morceaux — donc vous pouvez hasher un ISO de 100 MB en quelques secondes sans l'envoyer où que ce soit. La sortie peut être affichée en hex minuscule ou majuscule, ou en Base64 (utile pour l'authentification HTTP et les signatures JWT). Plusieurs algorithmes peuvent être sélectionnés à la fois ; le fichier est streamé une seule fois et les hashes sont calculés en parallèle.

Quand utiliser cet outil

  • Vérifier les téléchargements. Comparez le SHA-256 d'un fichier avec la somme de contrôle publiée du projet pour détecter altération ou corruption.
  • Générer un hash d'intégrité. Pré-calculez SHA-256 pour un asset avant d'ajouter l'attribut integrity="sha256-..." sur une balise <script>.
  • Signer les requêtes API. Calculez HMAC-SHA-256 pour la signature de requête de style AWS sans écrire de script.
  • Déduplication rapide. Une empreinte SHA-1 par fichier suffit largement pour les vérifications « ces deux fichiers sont-ils identiques ? ».

Quand NE PAS utiliser MD5 ou SHA-1

Les deux sont cryptographiquement cassés. Des collisions MD5 ont été démontrées depuis 2008 ; SHA-1 depuis 2017 (l'attaque SHAttered). Utilisez-les uniquement pour la vérification héritée — jamais pour de nouvelles signatures, hashage de mots de passe, ou anti-altération. Pour les mots de passe spécifiquement, utilisez bcrypt, scrypt ou Argon2 au lieu de tout hash brut ; ceux-ci sont délibérément lents et exigeants en mémoire pour vaincre les attaques par force brute.

Questions fréquentes

Devrais-je utiliser MD5 pour le stockage de mots de passe ?

Absolument pas. Les hashes bruts (MD5, SHA-1, même SHA-256) sont conçus pour être rapides, ce qui est l'opposé de ce que vous voulez pour les mots de passe — rapide signifie que les attaquants les forcent par brute. Utilisez une fonction délibérément lente et exigeante en mémoire comme bcrypt, scrypt ou Argon2id. La plupart des frameworks modernes en groupent un comme hasheur de mot de passe par défaut.

Le hashage navigateur est-il aussi précis que les outils en ligne de commande ?

Oui — pour SHA-256 et la famille SHA-2 la sortie est bit-pour-bit identique à sha256sum sur Linux ou shasum -a 256 sur macOS, car les deux appellent le même algorithme fondamental. Nos implémentations MD5 et SHA-1 sont aussi largement testées. La seule différence par rapport au CLI est la performance : le code natif est plus rapide sur les énormes fichiers, mais le navigateur gère confortablement 100 MB.

Qu'est-ce que HMAC ?

Un hash à clé — combine une clé secrète avec l'entrée afin que la sortie ne puisse pas être falsifiée par quiconque ne connaît pas la clé. Utilisé pour la signature de requête API (AWS Signature V4 est HMAC-SHA-256), les signatures JWT avec l'algorithme HS256, et la validation de webhook. Le même algorithme avec différentes clés produit des sorties non liées, ce qui en fait une signature plutôt qu'une empreinte.

Pourquoi mon hash diffère d'un autre outil ?

Généralement à cause des fins de ligne ou de l'encodage. hello avec un saut de ligne de fin se hache différemment de hello sans. Le texte encodé UTF-8 vs UTF-16 diffère. Les fins de ligne CRLF vs LF diffèrent. Assurez-vous que les deux outils lisent exactement les mêmes octets — la vérification la plus simple est de hasher un fichier (pas une chaîne) et confirmer que les deux outils s'accordent sur la séquence d'octets.