806 votes

Y a-t-il un utilitaire de contrôle intégré dans Windows 7 ?

Existe-t-il un utilitaire intégré de somme de contrôle/cash sous Windows 7 ?

0 votes

Ce n'est pas mon domaine, mais Powershell, le langage de script intégré, peut probablement le faire.

19 votes

Est-ce que c'est l'un de ces drôles de "je ne suis pas autorisé à installer tout Exigences en matière de "logiciel tiers" ? Si c'est le cas, essayez de chercher sur Google "PowerShell SHA1 hash" et vous devriez obtenir quelques scripts/cmdlets qui s'exécuteront sur le PowerShell intégré en utilisant les API Crypto de MS.

0 votes

Je suis certain d'avoir installé une fois un vérificateur sfv Windows-explorer qui affichait des icônes de flèches de vérification vertes en surimpression (comme le fait svn tortoise) lorsqu'il vérifiait une correspondance avec un fichier .sfv portant le même nom que le fichier vérifié. cependant, je ne le trouve plus.

51voto

abe312 Points 607

La nouvelle version de 7-Zip vous donne également la possibilité de faire des sommes de contrôle par un simple clic droit (ceci n'inclut pas MD5 ). Il a SHA-1 , SHA-256 CRC-32, CRC-64, etc.

Enter image description here .

Pour le MD5, vous pouvez télécharger HashTab et vérifiez en faisant un clic droit et ensuite les propriétés.

Enter image description here

0 votes

De quelle version de 7-zip parlez-vous ?

0 votes

Malheureusement, l'outil de contrôle de 7-zip ne vous permet pas de copier la somme de contrôle !

0 votes

Je pense que sélectionner le texte de hachage et Ctrl+C fonctionne bien.

24voto

Esteban Araya Points 12496

En voici un que j'ai déjà utilisé et qui s'intègre parfaitement à la boîte de dialogue "Propriétés" d'Explorer : Propriétés d'été . C'est source ouverte et un Une version x64 est également disponible .

SummerProperties screen shot

J'aime aussi le site de Safer Networking FileAlyzer qui offre également des fonctionnalités supplémentaires. Mais juste pour les sommes de contrôle, Summer Properties est léger et fait le travail.

1 votes

Le seul problème est qu'il ne prend pas en charge les dossiers ou les groupes de fichiers. Il est également hors dvlp

1 votes

Un autre problème est que vous ne pouvez pas coller un hash dedans et voir s'il correspond.

0 votes

Je sais que c'est très ancien, mais comment avez-vous répondu à la question plus d'un an avant qu'elle ne soit posée ?

18voto

Amit Naidu Points 519

Je l'ajoute ici uniquement parce que je n'ai pas vu d'exemples powershell entièrement opérationnels, prêts à être copiés-collés :

C:\> powershell "Get-FileHash %systemroot%\system32\csrss.exe"

Algorithm       Hash
---------       ----
SHA256          CB41E9D0E8107AA9337DBD1C56F22461131AD0952A2472B4477E2649D16E...

C:\> powershell -c "(Get-FileHash -a MD5 '%systemroot%\system32\csrss.exe').Hash"

B2D3F07F5E8A13AF988A8B3C0A800880

C:\> CertUtil -hashfile "%systemroot%\system32\csrss.exe" MD5 | findstr -v file
b2 d3 f0 7f 5e 8a 13 af 98 8a 8b 3c 0a 80 08 80

C:\>

Mise à jour de 2019 :

Le site certutil La sortie semble avoir changé depuis Windows 8, donc mon ancien filtre pour isoler le hachage ne fonctionne plus. Les espaces superflus ont également disparu - un souci de moins pour les scripts. Voici la nouvelle démo à copier-coller :

C:\>CertUtil -hashfile "%systemroot%\system32\csrss.exe" | findstr -v ash
0300c7833bfba831b67f9291097655cb162263fd

C:\>CertUtil -hashfile  "%systemroot%\system32\csrss.exe" SHA256 | findstr -v :
a37d616f86ae31c189a05b695571732073b9df97bf5a5c7a8ba73977ead3e65b

C:\>ver

Microsoft Windows [Version 10.0.16299.1451]

C:\>

Pour le rendre plus résistant aux ruptures dues à un autre changement futur de la législation. certutil nous devons rechercher les lignes contenant des caractères non hexadécimaux pour les filtrer : [^0-9a-zA-Z] . Cela devrait également le rendre plus sûr pour les autres langues et localisations.

C:\>CertUtil -hashfile  "C:\windows\fonts\arial.ttf" | findstr -vrc:"[^0123-9aAb-Cd-EfF ]"
12c542ef8c99cf3895ad069d31843a5210857fdc

Pourquoi cette regex anti-hex est-elle si bizarre ? Voir cette question pour apprendre comment les plages regex dans findstr ne fonctionnent pas comme ils le devraient. J'ai inclus un caractère d'espacement supplémentaire pour assurer la compatibilité avec les anciennes versions de certutil mais elle est facultative.

Notez que le powershell Get-FileHash par défaut est SHA256, tandis que certutil La valeur par défaut est toujours SHA1. Spécifiez donc explicitement votre algorithme lorsque cela est nécessaire. Vous pouvez vérifier rapidement les options disponibles comme ceci :

C:\>powershell -c "Get-FileHash -?" | findstr gori

    Get-FileHash [-Path] <string[]> [-Algorithm {SHA1 | SHA256 | SHA384 | SHA512 | MACTripleDES | MD5 | RIPEMD160}]
    Get-FileHash -LiteralPath <string[]> [-Algorithm {SHA1 | SHA256 | SHA384 | SHA512 | MACTripleDES | MD5 |
    Get-FileHash -InputStream <Stream> [-Algorithm {SHA1 | SHA256 | SHA384 | SHA512 | MACTripleDES | MD5 | RIPEMD160}]

C:\>certutil -hashfile -v /? | findstr gori

  CertUtil [Options] -hashfile InFile [HashAlgorithm]
Hash algorithms: MD2 MD4 MD5 SHA1 SHA256 SHA384 SHA512

16voto

Nirsoft HashMyFiles est un petit utilitaire qui vous permet de calculer les hachages MD5 et SHA1 d'un ou plusieurs fichiers de votre système. Vous pouvez facilement copier la liste des hachages MD5/SHA1 dans le presse-papiers, ou les enregistrer dans un fichier texte/html/xml.

HashMyFiles peut également être lancé à partir de le menu contextuel de l'Explorateur Windows, et afficher les hachages MD5/SHA1 du fichier ou dossier sélectionné.

alt text

HashMyFiles est un logiciel gratuit et portable.

0 votes

+1, Il semble qu'il s'agisse d'un nouveau problème - la dernière fois que j'ai vérifié (avant de passer à une ligne de commande) md5sum ) était FastSum - mais il s'agissait d'une sorte de logiciel d'essai et il était très exigeant. HashMyFiles est bon parce qu'il permet le glisser-déposer de plusieurs fichiers et l'exportation vers CSV (deux fonctions importantes). Je ne pense pas l'avoir vu lorsque j'ai découvert FastSum il y a quelques années.

0 votes

C'est exact, HashMyFiles est un ajout assez récent au portefeuille de NirSoft, il a été publié pour la première fois en 2007.

0 votes

…that integrates into Windows [Explorer]

14voto

bquaresma Points 526

J'ai trouvé ce script PowerShell :

param([switch]$csv, [switch]$recurse)

[Reflection.Assembly]::LoadWithPartialName("System.Security") | out-null
$sha1 = new-Object System.Security.Cryptography.SHA1Managed
$pathLength = (get-location).Path.Length + 1

$args | %{
    if ($recurse) {
        $files = get-childitem -recurse -include $_
    }
    else {
        $files = get-childitem -include $_
    }

    if ($files.Count -gt 0) {
        $files | %{
            $filename = $_.FullName
            $filenameDisplay = $filename.Substring($pathLength)

            if ($csv) {
                write-host -NoNewLine ($filenameDisplay + ",")
            } else {
                write-host $filenameDisplay
            }

            $file = [System.IO.File]::Open($filename, "open", "read")
            $sha1.ComputeHash($file) | %{
                write-host -NoNewLine $_.ToString("x2")
            }
            $file.Dispose()

            write-host
            if ($csv -eq $false) {
                write-host
            }
        }
    }
}

Source : Calculer SHA1 dans PowerShell

Il s'appuie sur .NET que vous avez installé, je suppose.

7 votes

Win 7 est livré avec .NET 3.5 et PowerShell v2, et PowerShell a toujours été dépendant de .NET, donc si vous avez PS, vous avez .NET. :-)

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X