Comment Vérifier l'Intégrité des Fichiers avec les Empreintes SHA et MD5 — Guide Complet
Qu'est-ce qu'une fonction de hachage ?
Une fonction de hachage prend une entrée de n'importe quelle taille — un fichier, une chaîne, un mot de passe — et produit une chaîne de caractères de longueur fixe appelée hash, empreinte ou somme de contrôle. La même entrée produit toujours la même sortie, mais un seul bit modifié dans l'entrée produit un hash complètement différent. Cela rend les hashs idéaux pour vérifier qu'un fichier est exactement ce que l'éditeur a prévu — ni plus, ni moins.
Le hachage est un processus à sens unique : vous ne pouvez pas reconstruire le fichier d'origine à partir de son hash, ce qui le rend utile à la fois pour les vérifications d'intégrité et le stockage sécurisé des mots de passe (bien que, comme expliqué plus bas, le hachage brut seul ne suffise pas pour les mots de passe).
Pourquoi vérifier l'intégrité d'un fichier avec un hash ?
Lorsque vous téléchargez un logiciel, surtout depuis des miroirs, des torrents ou des sites tiers, le fichier peut être altéré de deux façons :
- Corruption accidentelle — un téléchargement interrompu, une mauvaise connexion réseau ou un support de stockage défectueux peuvent corrompre silencieusement des octets.
- Manipulation malveillante — un attaquant intercepte le téléchargement et substitue le fichier par une version modifiée contenant un logiciel malveillant.
Les éditeurs de logiciels sérieux (distributions Linux, outils de sécurité, projets open-source) publient le hash officiel de chaque fichier de version avec le lien de téléchargement. Si le hash que vous calculez localement correspond à celui publié, vous pouvez être sûr que le fichier est arrivé intact et non modifié.
MD5 vs SHA-1 vs SHA-256 vs SHA-512 — Quelles sont les différences ?
Tous les algorithmes de hachage ne se valent pas, et choisir le bon est important :
| Algorithme | Longueur de sortie | Statut |
|---|---|---|
| MD5 | 32 caractères hexadécimaux (128 bits) | Cassé cryptographiquement — à éviter pour la sécurité |
| SHA-1 | 40 caractères hexadécimaux (160 bits) | Également cassé — déconseillé pour un usage de sécurité |
| SHA-256 | 64 caractères hexadécimaux (256 bits) | Norme actuelle de l'industrie |
| SHA-512 | 128 caractères hexadécimaux (512 bits) | Plus fort, légèrement plus lent, utilisé quand une marge supplémentaire est souhaitée |
MD5 et SHA-1 sont encore largement utilisés pour les simples vérifications d'intégrité de fichiers (détecter la corruption accidentelle) parce que les collisions nécessitent un effort délibéré et sophistiqué à concevoir — mais aucun des deux ne doit être utilisé lorsque la sécurité contre un acteur malveillant est en jeu. Si vous vérifiez un fichier par rapport à une somme de contrôle publiée par une source soucieuse de la sécurité, préférez SHA-256 chaque fois qu'il est proposé.
Comment générer un hash pour la vérification de fichiers
Le moyen le plus simple de vérifier un hash sans toucher à la ligne de commande est de coller le texte concerné (ou la somme de contrôle attendue du fichier) dans un outil basé navigateur. Le Générateur de hash calcule instantanément les hashs MD5, SHA-1, SHA-256, SHA-384 et SHA-512, entièrement dans votre navigateur — rien n'est envoyé à un serveur, ce qui est important si le contenu que vous hachez est sensible.
Si vous avez besoin de hacher le contenu réel du fichier plutôt que du texte, utilisez l'outil intégré de votre système d'exploitation (ci-dessous) pour générer le hash, puis collez cette chaîne de hash résultante dans le Générateur de hash ou un outil de comparaison de texte pour la vérifier par rapport à celle publiée par la source du fichier.
Comment vérifier le hash d'un fichier sous Windows
Windows inclut un utilitaire intégré appelé certutil qui peut calculer des hashs sans rien installer de supplémentaire :
certutil -hashfile "C:\\chemin\\vers\\fichier.exe" SHA256
Remplacez SHA256 par MD5, SHA1 ou SHA512 selon l'algorithme fourni par l'éditeur. La commande renvoie le hash directement dans le terminal — comparez-le caractère par caractère avec la valeur officielle.
Comment vérifier le hash d'un fichier sous macOS et Linux
macOS et Linux sont tous deux livrés avec des commandes de hachage dédiées :
shasum -a 256 /chemin/vers/fichier
md5 /chemin/vers/fichier # macOS
md5sum /chemin/vers/fichier # Linux
Le flag -a 256 indique à shasum d'utiliser SHA-256 ; vous pouvez le remplacer par 1, 384 ou 512 pour d'autres algorithmes. Sur Linux, sha256sum, sha1sum et sha512sum sont également disponibles en tant que commandes autonomes.
Pas à pas : Vérifier un fichier téléchargé
- Trouvez la somme de contrôle officielle publiée par la source du fichier — généralement sur la page de téléchargement ou dans un fichier séparé
.sha256/checksums.txt. - Exécutez la commande de hachage correspondante pour votre système d'exploitation (voir ci-dessus) sur le fichier téléchargé.
- Comparez le hash obtenu avec celui publié, caractère par caractère. Un seul caractère différent signifie que le fichier ne correspond pas.
- Si les hashs correspondent, le fichier est intact et identique à ce que l'éditeur a publié. S'ils ne correspondent pas, supprimez le fichier et retéléchargez-le depuis une source de confiance — ne l'exécutez pas.
Qu'est-ce qu'une somme de contrôle ?
Une somme de contrôle est simplement une valeur de hash utilisée spécifiquement pour confirmer que les données n'ont pas changé — les termes sont souvent utilisés de manière interchangeable dans le contexte des téléchargements de fichiers. Les distributeurs de logiciels publient des sommes de contrôle (généralement SHA-256 aujourd'hui) précisément pour que les utilisateurs puissent effectuer les étapes de vérification ci-dessus sans avoir besoin d'outils spéciaux au-delà de ce qui est déjà intégré dans leur système d'exploitation ou d'un générateur de hash basé navigateur.
Le hachage est-il réversible ?
Non. Une fonction de hachage cryptographique correctement conçue est une opération à sens unique — il n'existe aucun moyen mathématique de récupérer l'entrée d'origine à partir de son seul hash. C'est intentionnel et c'est précisément ce qui rend les hashs utiles à la fois pour la vérification d'intégrité et le stockage sécurisé des identifiants.
Qu'est-ce qu'une collision de hash ?
Une collision se produit lorsque deux entrées différentes produisent la même sortie de hash. Chaque fonction de hachage permet techniquement l'existence mathématique de collisions (puisque les entrées sont infinies et les sorties de longueur fixe), mais un algorithme sécurisé rend la découverte d'une collision informatiquement infaisable. MD5 et SHA-1 ont tous deux fait l'objet de démonstrations d'attaques de collision pratiques, c'est pourquoi les professionnels de la sécurité ne les considèrent plus comme sûrs pour autre chose que des vérifications d'intégrité occasionnelles contre la corruption accidentelle.
Puis-je utiliser le hachage pour les mots de passe ?
SHA-256 ou SHA-512 bruts ne doivent jamais être utilisés pour stocker directement des mots de passe, car ces algorithmes sont conçus pour être rapides — ce qui les rend faciles à attaquer par force brute à grande échelle avec du matériel moderne. Pour les mots de passe, utilisez un algorithme conçu à cet effet comme bcrypt, argon2 ou PBKDF2, qui sont délibérément lents et incluent un salage intégré pour se défendre contre les attaques par table arc-en-ciel.
Qu'est-ce que le salage ?
Le salage consiste à ajouter une valeur aléatoire unique à chaque entrée avant de la hacher, de sorte que même des entrées identiques (comme deux utilisateurs avec le même mot de passe) produisent des hashs différents. Cela contrecarre les attaques par table arc-en-ciel précalculées, puisqu'un attaquant aurait besoin d'une table séparée pour chaque valeur de sel possible plutôt que d'une table universelle.
Qu'est-ce que HMAC ?
HMAC (Hash-based Message Authentication Code) combine une fonction de hachage avec une clé secrète pour vérifier à la fois l'intégrité et l'authenticité d'un message — confirmant non seulement que les données n'ont pas été altérées, mais qu'elles proviennent de quelqu'un qui détient la clé secrète. Il est largement utilisé dans l'authentification des API, où un serveur doit confirmer qu'une requête provient d'un client légitime et n'a pas été falsifiée en transit.
Référence rapide : Quel hash devriez-vous utiliser ?
- Vérifier un fichier téléchargé par rapport à la somme de contrôle d'un éditeur → utilisez ce que l'éditeur fournit ; préférez SHA-256 si plusieurs options sont listées.
- Détecter des fichiers ou contenus en double → MD5 ou SHA-256 fonctionnent tous les deux très bien, puisque la sécurité n'est pas le souci ici.
- Stocker des mots de passe → jamais de SHA/MD5 bruts ; utilisez bcrypt, argon2 ou PBKDF2.
- Vérifier l'authenticité d'une requête API → HMAC avec SHA-256.
Conclusion
La vérification par hash prend quelques secondes et peut vous éviter d'exécuter un logiciel corrompu ou malveillant. Que vous utilisiez les outils en ligne de commande intégrés de votre système d'exploitation ou une option rapide basée navigateur, le processus est le même : générez le hash, comparez-le au hash officiel et ne continuez que s'ils correspondent exactement. Essayez le Générateur de hash gratuit pour calculer instantanément les hashs MD5, SHA-1, SHA-256, SHA-384 et SHA-512 — tout s'exécute localement dans votre navigateur, donc rien de ce que vous hachez ne quitte jamais votre appareil.