Quand vous télécharger un fichier comme la dernière version d’Afterburner ou encore 3DMark, il est important pour des raisons de sécurité de vérifier l’intégrité du fichier. C’est-à-dire, si le fichier n’a pas été corrompu, par conséquent, s’il est différent de l’original. Ainsi on évite tout risque de Malware (logiciel malveillant ou maliciel).
Pour cela, il faut comparer l’empreinte du fichier téléchargé (“hash” en anglais) aussi appelé somme de contrôle (“checksum”, en anglais) avec celui du fichier original. Si l’empreinte des deux fichiers, sont égales, alors le fichier téléchargé est intègre, conforme à l’original.
Pour avoir le Hash d’un fichier, il faut le calculer à l’aide de ce qu’on appelle des fonctions de hachage ou algorithmes de hash. Un algorithme de hash permet de transformer une quantité de donnés, même grande, en une signature unique… en théorie. En effet, il peut néanmoins exister des collisions (très peu probable, voire quasi impossible pour certain), c’est-à-dire une somme de contrôle identique malgré des données de départ qui ne le sont pas.
Il existe de nombreux algorithmes de hachages disponible, avec des performances bien différentes. Bon à savoir, les fonctions de hachage SHA1 et MD5 sont obsolètes, il vaut mieux privilégier le SHA-256 ou le SHA-3.
Nous allons voir dans ce tutoriel, les différentes méthodes possibles sur Windows pour calculer la somme de contrôle. Dans la 1ʳᵉ partie, sans installer de logiciels, avec les outils intégrer dans Windows et pour la seconde avec des logiciels gratuit.
PowerShell
Windows PowerShell, anciennement Microsoft Command Shell, est un interpréteur de commande ou une interface en ligne de commande, moderne, intégré dans L’OS de Microsoft. Il permet d’effectuer toutes sortes d’opération sur Windows. PowerShell est le nom du langage de script de ce logiciel, il y a aussi un kit de développement compris.
Les algorithmes supportés sont :
- MD5
- SHA1
- SHA256
- SHA384
- SHA512
Ouvrir PowerShell
Taper dans la barre de recherche de Windows ou de l’application Exécuter, “PowerShell”, ensuite cliquez sur le lien qui apparait.
Il y a aussi une solution ultra rapide pour accéder à PowerShell, à l’aide d’un raccourci. Faites au niveau d’une zone vide de Windows, une pression sur “Maj + clic droit”. Ensuite sélectionnez dans le menu “Ouvrir la fenêtre PowerShell ici”.
Tapez les commandes
Déplacez-vous tout d’abord en direction du dossier du fichier à contrôler :
cd “chemin vers le dossier”
Par exemple :
C:\Users\Jseb\Desktop\
Calculez la somme de contrôle de votre fichier :
Get-FileHash .\monfichier.extension -Algorithm SHA1 | Format-List
Bien entendu, remplacez “monfichier.extension” par votre fichier avec son extension et SHA1 par l’algorithme de hachage souhaité.
L’empreinte du fichier se trouve dans le champ “hash”.
Pour comparer instantanément les deux hash vous pouvez utiliser la commande :
"HASH1" -eq "HASH2"
Remplacer HASH 1 et 2 par les deux hash à comparer.
Si vous obtenez “true” (vrai), c’est bon les deux fichiers sont identiques, si “false (faux) ils sont différents !
Voilà terminer ! Vous pouvez maintenant fermer l’invite de commande par la croix en haut à droite ou par la commande :
exit
Invite de commande
Comme PowerShell, l’invite de commande (« command prompt » en anglais) traditionnelle de Windows, est un logiciel interpréteur de commande. Il est néanmoins bien moins performant que le PowerShell et plus ancien, il était là au temps de DOS !
Ouvrez l’invite de commandes en tapant dans la barre de recherche de Windows : « invite de commandes ». Sinon à partir de l’application exécuter il faut taper : « cmd ».
Ensuite déplacer vous vers le dossier du fichier à contrôler avec la commande « cd » suivi du chemin vers le dossier :
cd C:\Users\Jseb\Desktop\
Enfin avec la commande « certutil » calculer l’empreinte de votre fichier :
certutil -hashfile monfichier.extension SHA1
Bien entendu, remplacez “monfichier.extension” par votre fichier avec son extension et SHA1 par l’algorithme de hachage souhaité.
Vous pouvez comme pour PowerShell comparer rapidement les deux hash avec la commande :
if "HASH1" == "HASH2" echo True
Ce qui demande, si HASH1 est égal à HASH2, afficher True (vrai).
Voilà terminer ! Vous pouvez maintenant fermer l’invite de commande par la croix en haut à droite ou par la commande :
exit
HashTab
Tous d’abord télécharger et installer le logiciel HashTab. Pour l’utiliser c’est simple faites un clic droit sur le fichier ou vous souhaitez obtenir sa somme de contrôle. Dans la fenêtre sélectionnez propriétés et ensuite l’onglet « Hachages ».
Différente valeur de hachage apparait en fonction des fonctions de hachages choisis. Reste plus que rentrent dans le champ « Comparaison de hachages » la valeur récupérer chez le fournisseur, par exemple sur le site officiel d’un logiciel. Si un V, vert apparaît, c’est ok, si une croix rouge apparait, c’est qu’il y a une différence.