Vérifier l’intégrité d’un fichier : 6 méthodes

Souvent peu utilisés, les « hash » de fichiers sont une bonne méthode pour vérifier que votre fichier est bien conforme. Dans cet article, je vous explique 7 méthodes pour vérifier l’intégrité d’un fichier en fonction de l’algorithme de hachage les plus connus, comme MD5, SHA1, SHA256, SHA515, etc.

Pourquoi vérifier l’intégrité d’un fichier ?

Lorsque vous téléchargez un fichier sur internet, celui-ci peut être incomplet ou altéré. Pour que vous puissiez vous assurer de son intégrité, l’éditeur peut mettre à disposition son empreinte numérique.

Une empreinte numérique ou somme de contrôle (checksum en anglais) est une chaîne de caractère hexadécimale calculée à partir du fichier et d’un algorithme de hachage, comme SHA1, MD5, SHA256 ou encore SHA512.

En comparant celle de l’éditeur avec celle que vous calculez à partir du fichier téléchargé, vous pouvez vérifier l’intégrité de votre fichier. C’est-à-dire qu’il est bien celui attendu et qu’il n’a pas été altéré en cours de route. Ces méthodes de vérification sont très utilisées dans le monde des logiciels opensources et des distributions Linux notamment.

Notez qu’un checksum n’a pas pour finalité de garantir l’authenticité d’un fichier, mais uniquement de vérifier l’intégrité des données récupérées. Notez également que cette méthode ne remplace pas les contrôles effectués par un antivirus.

Exemple de hash communiqués pour le logiciel KeePass

⚠️ Attention : SHA1 et MD5 sont maintenant dépréciés. La CNIL recommande l’utilisation de SHA256 ou SHA512.

Voyons à présent quelles sont les méthodes pour vérifier intégrité d’un fichier grâce à son hash MD5, SHA1, SHA256, SHA512, etc.

1. Utiliser un service en ligne pour vérifier le hash d’un fichier

Si vous êtes pressés, n’avez pas envie d’installer un programme ou n’êtes pas du genre à aimer la ligne de code, HTML5 File Hash Online Calculator est un service en ligne qui permet de calculer le hash d’un fichier rapidement et sans rien installer. Les fichiers ne sont pas transférés sur le serveur, les calculs sont effectués en local grâce au navigateur et la technologie WebCryptoAPI. Moins rapide qu’un calcul avec une ligne de commande ou un logiciel, ça fonctionne bien pour les fichiers inférieurs à 1 Go, au-delà, c’est un peu plus long.

2. Vérifier l’intégrité d’un fichier avec Powershell sur Windows

SI vous êtes sous Windows, vous n’avez pas besoin d’installer un logiciel si PowerShell ne vous effraie pas. En effet, ce dernier intègre un cmdlet Get-FileHash qui permet de calculer le hash d’un fichier en spécifiant l’algorithme souhaité, comme MD5, SHA1 et SHA256. Par défaut, SHA256 est utilisé.

Ouvrez une fenêtre Powershell en puis tapez la commande Get-FileHash dans le bash. Faites glisser le fichier à vérifier dans la fenêtre pour renseigner automatiquement le chemin.

Appuyez sur la touche entrée Entrée de votre clavier et vous obtiendrez le checksum SHA256 de votre fichier. Il suffit ensuite de le comparer l’exactitude de la chaine avec le hash original.

Pour d’autres algorithmes, comme SHA1 ou MD5, utilisez les commandes suivantes :

Get-FileHash C:\chemin\vers\fichier.iso -Algorithm SHA1
Get-FileHash C:\chemin\vers\fichier.iso -Algorithm MD5

✏️ Note : Il est aussi possible de vérifier l’intégrité d’un fichier avec l’invite de commande Windows et l’instruction certuil. Il suffit d’ouvrir une invite de commande puis de taper la commande suivante en spécifiant l’algorithme de hash souhaité : certutil -hashfile "C:\chemin\vers\fichier.iso" sha256

3. 7-Zip

Si vous utilisez le logiciel 7-Zip pour compresser ou décompresser vos archives, sachez qu’il est en mesure de vous fournir la somme de contrôle CRC d’un fichier. Il est relativement simple de l’utiliser, car il est intégré dans le menu contextuel. Il suffit de faire un clic droit sur votre fichier et de choisir CRC SHA et l’algorithme de hash : SHA1, SHA256 ou CRC.

Une fois calculé, une fenêtre s’affiche pour vous afficher le checksum choisi. Vous pourrez comparer la chaine calculée à celle de l’original pour vérifier l’intégrité de votre fichier.

7-Zip est un logiciel disponible sur Windows, Linux et Mac. Notez que 7-Zip ne permet pas d’effectuer des contrôles MD5.

4. QuickHash

QuickHash est générateur de hash opensource disponible sur Windows, Linux et Mac. C’est sans doute le logiciel qui propose le plus d’options : vous pouvez calculer le hash d’un répertoire complet, un disque dur, comparer deux fichiers, comparer deux répertoires notamment.

Sur Windows, il ne nécessite pas d’installation et s’utilise de façon portable.

5. OpenHashTab

OpenHashTab est une extension shell pour Windows. Uniquement accessible depuis le menu contextuel de Windows, OpenHashTab permet de calculer rapidement les sommes de contrôle d’un fichier. Il suffit de faire un clic droit sur un fichier puis de choisir Somme.

OpenHashTab supporte 28 algorithmes et il est multilingue. De nombreux paramètres sont également disponibles.

6. En ligne de commande avec Linux

Linux dispose de commandes pour vérifier l’intégrité d’un fichier. Ces composants font partie du paquet coreutils et gnupg qui sont en général installés par défaut. Vous avez donc accès à ces commandes :

  • md5sum
  • sha256sum
  • sha512sum

La commande à employer pour faire une vérification sha256 est la suivante :

sha256sum /chemin/du/fichier

Vous pouvez aussi utiliser le programme GtkHash pour bénéficier d’une interface visuelle.

7. Vérifier le hash d’un fichier sur Mac

La commande shasum est disponible sur tous les Macs modernes et permet de vérifier l’intégrité d’un fichier avec la somme de contrôle sha256. Il suffit d’ouvrir un terminal puis de taper la commande suivante :

shasum -a /chemin/du/fichier

La commande md5 peut être utilisée à la place de shasum pour une vérification md5.

Que faire si les sommes de contrôle sont différentes ?

Si le checksum de votre fichier est différent de celui fourni par l’éditeur, plusieurs raisons peuvent en être la cause :

  • Le fichier n’est pas le bon
  • Le fichier a été mis à jour
  • Le téléchargement est corrompu.
  • L’algorithme utilisé n’est pas le bon
  • Présence d’un Malware
David Jovanovic
David Jovanovic
Fondateur de Lecoindunet et rédacteur à mes heures perdues, ma passion pour l'informatique et mes expériences professionnelles m'ont permis d'acquérir de solides connaissances dans les domaines liés aux nouvelles technologies. En démarrant ma carrière comme technicien, puis en devenant développeur et responsable informatique, je fais de ma polyvalence ma force et aspire à partager mes connaissances sur le web.

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici