Calculer MD5, SHA-1, SHA-256 et SHA-512
Obtenez tous les checksums d’un fichier ou d’une chaîne en un seul passage, et collez la valeur attendue pour voir en un coup d’œil si elle correspond.
Déposez vos fichiers ici
· jusqu’à 300 Mo
Plus de réglagesMoins de réglages
Comment calculer les hachages
- 1
Déposez un fichier ou collez du texte
Jusqu’à cinquante fichiers à la fois, ou une chaîne saisie directement. Les gros fichiers sont lus par blocs pour que l’usage mémoire reste stable.
- 2
Choisissez les algorithmes à afficher
Les quatre sont cochés par défaut. En sélectionner moins crée moins de calculateurs, ce qui accélère nettement le calcul sur un fichier de plusieurs gigaoctets.
- 3
Comparer ou copier le résultat
Collez le checksum attendu et l’algorithme correspondant est identifié par sa longueur, puis vérifié pour vous.
Un seul passage sur les données, pas quatre
La méthode naïve pour produire quatre checksums consiste à lire le fichier quatre fois. Ici le fichier est lu une fois en blocs de seize mégaoctets, et chaque bloc est transmis à chaque calculateur de hachage sélectionné avant de lire le suivant. Le coût de l’ajout d’un second algorithme est donc du temps processeur plutôt qu’un passage de plus sur le disque. Cette approche par blocs est aussi ce qui limite l’empreinte mémoire : un fichier de deux gigaoctets n’existe jamais en mémoire dans son ensemble, seulement seize mégaoctets à la fois. C’est ce qui rend réaliste le hachage d’une grande image ISO ou d’une vidéo dans un onglet de navigateur.
Quel algorithme utiliser pour quel usage
Pour vérifier qu’un téléchargement est arrivé intact, n’importe lequel des quatre convient, car une corruption accidentelle ne construit pas de collisions. Utilisez simplement celui indiqué par l’éditeur. Dès qu’une personne peut construire volontairement un fichier qui corresponde, MD5 et SHA-1 ne sont plus adaptés : des collisions pratiques existent pour MD5 et existent pour SHA-1 depuis 2017, donc un MD5 identique ne prouve plus que deux fichiers sont les mêmes. SHA-256 est le choix raisonnable pour une intégrité qui doit tenir face à un adversaire. SHA-512 n’est pas réellement plus sûr en pratique, mais il est souvent plus rapide sur un matériel 64 bits. Aucun de ces algorithmes ne doit être utilisé pour le stockage de mots de passe, qui exige une fonction volontairement lente comme Argon2 ou bcrypt.
Le hachage d’un texte dépend de l’encodage
Un hachage est calculé sur des octets, et une chaîne n’est pas une suite d’octets avant qu’un encodage ne la transforme. Le mot « Привет » produit un SHA-256 en UTF-8 et un tout autre en UTF-16LE, et aucun des deux n’est erroné : ils correspondent à des suites d’octets différentes. C’est pour cela que le jeu de caractères est un choix explicite et non une supposition, et qu’un hachage calculé ailleurs peut ne pas correspondre ici tant que les encodages ne coïncident pas. UTF-8 est l’option par défaut, car c’est ce que presque tous les systèmes modernes entendent par « texte ».
Le fichier n’est jamais envoyé sur un serveur
Le calcul de hachage s’exécute entièrement dans cet onglet de navigateur. Le but d’un checksum est de faire confiance au fichier et non à un service, donc l’envoyer vers un serveur pour le hacher irait à l’encontre de cet objectif. Rien ne quitte votre appareil.
Questions fréquentes
Quel algorithme utiliser pour vérifier un téléchargement ?
Celui que l’éditeur a publié. Pour une corruption accidentelle, n’importe lequel des quatre suffit. Si vous craignez une altération volontaire, utilisez SHA-256 ou SHA-512, car MD5 et SHA-1 ont tous deux des attaques par collision pratiques.
Pourquoi MD5 ne convient-il pas aux mots de passe ?
Parce qu’il est rapide, et la vitesse est exactement ce qu’un attaquant qui teste des mots de passe recherche. Le stockage des mots de passe doit utiliser une fonction délibérément lente et salée comme Argon2 ou bcrypt. Un simple hachage, quel que soit sa vitesse, est l’outil inadapté.
Pourquoi le hachage de mon texte change-t-il avec l’encodage ?
Parce que le hachage porte sur des octets et non sur des caractères, et qu’UTF-8 et UTF-16LE transforment la même chaîne en suites d’octets différentes. Choisissez l’encodage qui correspond à celui utilisé pour produire la valeur de référence.
Puis-je hacher un très gros fichier ?
Oui. Le fichier est lu par blocs de seize mégaoctets et n’est jamais conservé en mémoire dans son ensemble, donc un fichier de plusieurs gigaoctets fonctionne avec une empreinte mémoire bien inférieure à cent mégaoctets.
Que signifie une non-correspondance ?
Que les octets diffèrent de ceux que l’éditeur a hachés. Le plus souvent, le téléchargement a été tronqué ou corrompu, donc réessayez depuis la source. Si la valeur diffère toujours, considérez le fichier comme non fiable.
Comment la comparaison reconnaît-elle l’algorithme que j’ai collé ?
Par la longueur. Un checksum hexadécimal de 32, 40, 64 ou 128 caractères correspond respectivement à MD5, SHA-1, SHA-256 ou SHA-512. Toute autre longueur est signalée comme non reconnue plutôt que comparée à une mauvaise valeur.
Mon fichier est-il envoyé pour être vérifié ?
Non. Tout est calculé localement dans votre navigateur au moyen d’une bibliothèque de hachage WebAssembly, sans serveur impliqué à aucun moment.