Remarque : sous Windows, vous pouvez également utiliser certutil
pour calculer le hachage. Par exemple :
certutil -hashfile C:/Users/user1/Downloads/software.zip SHA256
Pour répondre à votre question, voir le post Comment comparer le hachage SHA256 d'un fichier dans PowerShell à une valeur connue ? , cité ici :
En Get-FileHash
La cmdlet calcule les hachages pour les fichiers, et SHA256 est l'algorithme de hachage par défaut. .
Pour calculer le hachage d'un fichier :
Get-FileHash .\path\to\foo.zip
Cela donne quelque chose comme :
Algorithm Hash Path
--------- ---- ----
SHA256 15DC0502666851226F1D9C0FE352CCAF0FFDEFF2350B6D2D08A90FCD1F610A10 C:\Users\me\path\to\foo.zip
Pour comparer à la valeur connue, extrayez la valeur de hachage calculée seule de la sortie de Get-FileHash, puis comparez-la à la valeur attendue sous forme de chaîne littérale (citée). Cette comparaison semble être insensible à la casse.
(Get-FileHash .\path\to\foo.zip).Hash -eq "15dc0502666851226f1d9c0fe352ccaf0ffdeff2350b6d2d08a90fcd1f610a10"
True
...ou si vous avez le hachage attendu dans un fichier, par exemple expected-hash.sha256
(Get-FileHash '.\path\to\foo.zip').Hash -eq (Get-Content .\expected-hash.sha256)
True