Vous souhaitez vérifier l’intégrité d’un fichier téléchargé pour être sûr et certain qu’il est identique à l’original et non corrompu ? Dans ce cas, il faut calculer la somme de contrôle (checksum, en anglais) ou « empreinte » de ce fichier et la comparer avec celle du fichier original.
Si les sommes de contrôle sont identiques, vous pouvez être sûr et certain que le fichier que vous avez téléchargé est intègre et qu’il est identique à celui envoyé par l’expéditeur. Dans le cas contraire, le fichier est corrompu et vous allez devoir le télécharger de nouveau.
Pour calculer l’empreinte d’un fichier, il faut appliquer une fonction de hachage sur ce fichier. Il en existe plusieurs : MD5, SHA-1, SHA-256, SHA-512…
Dans ce tutoriel, nous allons voir comment vérifier l’intégrité d’un fichier (avec MD5, SHA1, SHA256…) sur Windows grâce à PowerShell, l’invite de commandes et HashTab.
Sommaire
Vérifier l’intégrité d’un fichier (MD5, SHA1, SHA256…) sur Windows
avec PowerShell et Get-FileHash
Pour calculer l’empreinte d’un fichier, la méthode la plus simple est d’utiliser la commande Get-FileHash disponible dans PowerShell :
- Ouvrez PowerShell.
- Si ce n’est pas déjà fait, déplacez-vous dans le dossier où se trouve le fichier à vérifier avec la commande cd :
cd D:\Pierre\Downloads\Torrents\
- Entrez ensuite la commande suivante pour calculer l’empreinte de votre fichier avec Get-FileHash :
Get-FileHash .\filename.iso -Algorithm SHA256 | Format-List
Remplacez filename.iso par le nom du fichier à vérifier (pensez à l’auto-complétion avec la touche Tab ⇄) et SHA256 par la fonction de hachage désirée.
- Vous trouverez l’empreinte du fichier dans le champ Hash.
- Vous pouvez comparer l’empreinte du fichier avec celle fournie par l’expéditeur avec la commande suivante (True indique que les empreintes sont identiques, False qu’elles diffèrent) :
"HASH1" -eq "HASH2"
avec l’invite de commandes et certutil.exe
Pour calculer l’empreinte d’un fichier, vous pouvez aussi utiliser la commande certutil.exe dans l’invite de commandes :
- Ouvrez l’invite de commandes.
- Si ce n’est pas déjà fait, déplacez-vous dans le dossier où se trouve le fichier à vérifier avec la commande cd :
D: cd D:\Pierre\Downloads\Torrents\
- Entrez ensuite la commande suivante pour calculer l’empreinte de votre fichier avec certutil :
certutil -hashfile filename.iso SHA256
Remplacez filename.iso par le nom du fichier à vérifier (pensez à l’auto-complétion avec la touche Tab ⇄) et SHA256 par la fonction de hachage désirée.
- Vous pouvez comparer l’empreinte du fichier avec celle fournie par l’expéditeur avec la commande suivante (True indique que les empreintes sont identiques, False qu’elles diffèrent) :
if "HASH1" == "HASH2" echo True
avec HashTab
HashTab est un gratuiciel (freeware) qui ajoute un onglet Hachages dans la fenêtre Propriétés d’un fichier, dans l’Explorateur de fichiers de Windows.
Il calcule automatiquement l’empreinte d’un fichier avec plusieurs fonctions de hachage : MD5, SHA1, RipeMD, HAVAL, Whirlpool… Enfin, il dispose d’une très pratique fonction « Comparaison de hachages » qui permet de vérifier très simplement si l’empreinte du fichier est similaire à celle qu’on a collée dans le champ approprié.
Voici comme l’utiliser :
- Téléchargez HashTab puis installez-le.
- Dans l’Explorateur de fichiers, faites un clic droit sur le fichier à vérifier et sélectionnez Propriétés.
- Rendez-vous sur l’onglet Hachages. HashTab calcule automatiquement les empreintes du fichier selon les fonctions de hachage sélectionnées.
- Pour ajouter ou retirer des fonctions de hachage, cliquez sur Paramètres.
- Pour vérifier l’intégrité du fichier, collez l’empreinte fournie par l’expéditeur dans le champ Comparaison de hachages.
N’oubliez pas qu’il est indispensable de vérifier l’intégrité des fichiers importants comme les fichiers ISO des systèmes d’exploitation (Windows, Ubuntu…) qui peuvent être corrompus par un tiers !