Gibt es ein eingebautes Prüfsummen- / Hash-Dienstprogramm unter Windows 7?
Gibt es ein eingebautes Prüfsummen- / Hash-Dienstprogramm unter Windows 7?
Antworten:
Es gibt ein eingebautes Dienstprogramm, wie in dieser anderen Antwort angegeben .
Möglicherweise möchten Sie jedoch diese Freeware-App namens HashTab verwenden , die sich nahtlos in den Windows Explorer einfügt , indem Sie eine Registerkarte im Eigenschaftendialog von Dateien registrieren. Es ist ziemlich süß.
CertUtil ist ein vorinstalliertes Windows-Dienstprogramm, mit dem Hash-Prüfsummen generiert werden können:
certUtil -hashfile pathToFileToCheck [HashAlgorithm]
HashAlgorithmus Auswahl: MD2 MD4 MD5 SHA1 SHA256 SHA384 SHA512
So generiert beispielsweise Folgendes eine MD5-Prüfsumme für die Datei
C:\TEMP\MyDataFile.img
:
CertUtil -hashfile C:\TEMP\MyDataFile.img MD5
Um eine Ausgabe ähnlich wie auf * Nix-Systemen zu erhalten, können Sie PowerShell-Magie hinzufügen:
$(CertUtil -hashfile C:\TEMP\MyDataFile.img MD5)[1] -replace " ",""
certutil
ist in Windows PE nicht verfügbar , wenn Sie also eine Prüfsumme in einem Pre-Deployment - Task - Skript in PE zu berechnen versuchen, werden Sie ein externes Tool wie verwenden, um Microsoft FCIV .
CertUtil -hashfile C:\TEMP\MyDataFile.img MD5
nicht den gleichen Hash wie md5sum /tmp/MyDataFile.img
unter Linux (ich garantiere, es ist die gleiche Datei mit einem Mount)
Ich verwende HashCheck ( neueste Version ), das sich selbst als Eigenschaftsseite für Dateien integriert und ein Kontextmenü zum Vergleichen mit Hash-Überprüfungsdateien (SFV) enthält.
Es ist kostenlos und die Quelle ist verfügbar.
Es gibt das FCIV-Dienstprogramm von Microsoft, den Microsoft File Checksum Integrity Verifier ( Download-Link ).
Das Microsoft File Checksum Integrity Verifier-Tool ist ein nicht unterstütztes Befehlszeilendienstprogramm, das kryptografische MD5- oder SHA1-Hashes für Dateien berechnet.
Windows 7 wird in den Systemanforderungen nicht angezeigt, aber ich habe es gerade in Windows 8 verwendet und es hat funktioniert.
PowerShell ab Version 4 enthält das Cmdlet Get- FileHash.
powershell get-filehash -algorithm md5 <file_to_check>
Verwenden Sie doskey , um einen dauerhaften Alias zu erstellen , der leichter zu merken ist.
doskey sha1sum=powershell get-filehash -algorithm sha1 "$1"
doskey md5sum=powershell get-filehash -algorithm md5 "$1"
powershell Get-FileHash -Algorithm md5 <file_to_check> | Format-List
Get-FileHash "C:\foo.exe" -Algorithm MD5,SHA1,SHA256 | Format-List
automatisch erkennt, ob mehrere Hashes hintereinander aufgelistet sind? In der Konsole ist keine solche Anweisung gespeichert? Ich habe mehrmals versucht, eine Neuformulierung mit der richtigen Syntax durchzuführen, aber es gibt einen Fehler zurück und es scheint nicht zu funktionieren, ohne ein Skript einzubetten.
Die neue Version von 7-Zip bietet Ihnen auch die Möglichkeit, Prüfsummen durch einfaches Klicken mit der rechten Maustaste zu erstellen (ohne MD5 ). Es verfügt über SHA-1 , SHA-256 , CRC-32, CRC-64 usw.
Für MD5 können Sie HashTab herunterladen und mit der rechten Maustaste und dann Eigenschaften überprüfen.
Hier ist eine, die ich zuvor verwendet habe und die sich gut in das Dialogfeld "Eigenschaften" des Explorers einfügt: Sommereigenschaften . Es ist Open Source und eine x64-Version ist ebenfalls verfügbar .
Ich mag auch den FileAlyzer von Safer Networking , der auch zusätzliche Funktionen bietet. Aber nur für Prüfsummen ist Summer Properties leicht und erledigt die Arbeit.
Nirsofts HashMyFiles ist ein kleines Dienstprogramm, mit dem Sie die MD5- und SHA1-Hashes einer oder mehrerer Dateien in Ihrem System berechnen können. Sie können die MD5 / SHA1-Hashliste problemlos in die Zwischenablage kopieren oder in einer Text- / HTML- / XML-Datei speichern.
HashMyFiles kann auch über das Kontextmenü von Windows Explorer gestartet werden und zeigt die MD5 / SHA1-Hashes der ausgewählten Datei oder des ausgewählten Ordners an.
HashMyFiles ist Freeware und portabel.
…that integrates into Windows [Explorer]
Ich habe dieses PowerShell-Skript gefunden:
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
}
}
}
}
Quelle: Berechnung von SHA1 in PowerShell
Es nutzt .NET, von dem ich annehme, dass Sie es installiert haben
Ich füge dies hier nur hinzu, weil ich keine voll funktionsfähigen Powershell-Beispiele zum Kopieren und Einfügen gesehen habe:
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:\>
Microsoft File Checksum Integrity Verifier . Es kann MD5- und SHA-1- Hashwerte berechnen.
Laden Sie herunter, extrahieren Sie die Dateien, öffnen Sie eine Eingabeaufforderung, wechseln Sie zum extrahierten Pfad und geben Sie den folgenden Befehl ein:
fciv -md5 filepath\filename.extension
Zum Beispiel:
fciv -md5 d:\programs\setup.exe
'fciv' is not recognized as an internal or external command, operable program or batch file.
Microsoft Windows [Version 10.0.14393]
Leider ist mir das nicht bekannt, aber die Sysinternals- Suite von Microsoft enthält ein nettes Tool namens sigcheck .
Eine Batch-Datei basierend auf dem Kommentar von pbarney zu der Antwort mit den meisten positiven Bewertungen: Diese kopiert den MD5-Hash der Datei, die in die Batch-Datei gezogen wurde, in die Zwischenablage:
@ECHO OFF
FOR /f "tokens=*" %%i IN ('@certutil -hashfile %1 MD5 ^| find /v "hash of file" ^| find /v "CertUtil"') DO SET r=%%i
SET r=%r: =%
ECHO %r% | clip
So machen Sie es stattdessen zu einem Kontextmenüelement:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\*\shell\Get MD5]
@="Copy MD5 to Clipboard"
[HKEY_CLASSES_ROOT\*\shell\Get MD5\command]
@="\"C:\\<PATH TO BAT FILE>\\getMD5.bat\" \"%1\""
certutil -hashfile %1 md5
funktioniert auch
Genau das leistet das MD5-Kontextmenü . Es wird eine MD5- Option zum Kontextmenü der Dateien hinzugefügt:
MD5 Context Menu ist eine Freeware-Shell-Erweiterung für Windows, die die MD5-Hashsumme der ausgewählten Datei anzeigt.
Es heißt, es ist kompatibel mit Windows 95, 98, ME, NT, 2000 und XP, obwohl es unter Windows 7 einwandfrei funktioniert. Es ist ein winziger Download (238 KB) und enthält alles, was Sie brauchen.
Dies ist nur ein Cmd-Shell-Skript, das die Antwort von tedr2 verwendet, aber die überflüssigen Ausgabezeilen und Leerzeichen entfernt:
:: hash.cmd : Get a hash of a file
:: p1: file to be hashed
:: p2: Hash algorithm in UPPERCASE
:: p3: Output file
@setlocal
@for /f "tokens=*" %%a in (
'@certutil -hashfile %1 %2 ^|find /v "hash of file" ^|find /v "CertUtil"'
) do @(
@set str=%%a
)
@set str=%str: =%
@echo %str%
@endlocal
Die Ausgabe kann bei Bedarf in eine Datei umgeleitet werden:
@echo %str% > %3
z.B
sys> \dev\cmd\hash.cmd MyApp.dll SHA1
8ae6ac1e90ccee52cee5c8bf5c2445d6a92c0d4f
Cygwin enthält ein md5sum.exe
Dienstprogramm, das tun sollte, was Sie wollen.
QuickHash unterstützt SHA-256 und SHA-512. Ich benötigte SHA-256-Unterstützung, um die Prüfsumme von JavaScript-Bibliotheken auf der Whitelist für die Aufnahme in ein Firefox-Addon zu überprüfen.
Ich benutze Prüfsumme Befehlszeilenprogramm.
md5
, sha1
, sha256
und sha512
.Verwendungszweck:
Prüfsumme [-t = sha1 | sha256 | sha512 | md5] [-c = Signatur] [-f =] Dateipfad
-?
, --help
, -h
-f
, --file=VALUE
-t
, --type
, --hashtype=VALUE
md5
. -c
, --check=VALUE
# Check md5 for "E:\Саша Неотразима\Sasha-Irresistible.exe" file
SashaChernykh@DESKTOP-0G54NVG E:\Саша Неотразима
$ checksum -f "E:\Саша Неотразима\Sasha-Irresistible.exe"
342B45537C9F472B93A4A0C5997A6F52
# Check sha256
SashaChernykh@DESKTOP-0G54NVG E:\Саша Неотразима
$ checksum -f "E:\Саша Неотразима\Sasha-Irresistible.exe" -t=sha256
F6286F50925C6CBF6CBDC7B9582BFF833D0808C04283DE98062404A359E2ECC4
# Correct 41474147414741474147 sha256 hash or not?
SashaChernykh@DESKTOP-0G54NVG E:\Саша Неотразима
$ checksum -f "E:\Саша Неотразима\Sasha-Irresistible.exe" -t=sha256 -c 41474147414741474147
Error - hashes do not match. Actual value was 'F6286F50925C6CBF6CBDC7B9582BFF833D0808C04283DE98062404A359E2ECC4'
# One more attempt
SashaChernykh@DESKTOP-0G54NVG E:\Саша Неотразима
$ checksum -f "E:\Саша Неотразима\Sasha-Irresistible.exe" -t=sha256 -c F6286F50925C6CBF6CBDC7B9582BFF833D0808C04283DE98062404A359E2ECC4
Hashes match..
HashTab 3.0 ist eine kostenlose Shell-Erweiterung, die viele Prüfsummen berechnet, einschließlich MD5. Es ist als neue Registerkarte in den Dateieigenschaften integriert.
Sie können MD5sums für Windows verwenden , ein Download von nur 28 KB ( Cygwin könnte überfordert sein, wenn Sie nur MD5-Hashes berechnen möchten).
Am einfachsten ist es, mit dem Explorer Dateien auf md5sums.exe zu ziehen und dort abzulegen, um deren MD5-Hashes abzurufen.
Die richtige Antwort lautet natürlich Ja, CertUtil (siehe Antwort von tedr2 ).
Aber ich werde Penteracts kostenlosen File Checksum Verifier hinzufügen , der meiner Meinung nach eines der benutzerfreundlichsten Programme ist. (Haftungsausschluss: Ich bin mit Penteract verbunden.)
Einige seiner Vorteile:
Um die Integrität dieses Programms (gegen Man-in-the-Middle-Angriffe ) zu überprüfen, wird es über eine sichere Verbindung heruntergeladen.
Plus: kostenlos, offline (damit Sie Ihre Dateien nicht hochladen müssen), benutzerfreundlich (ziehen Sie eine Datei hinein und erhalten Sie das Ergebnis), wird über das Startmenü gestartet (Sie müssen nicht nach der heruntergeladenen ausführbaren Datei suchen, wenn Sie möchten benutze es in einem Jahr) und unterstütze MD5, SHA1, SHA256 usw.
Dies ist kein integriertes Dienstprogramm, aber eine sehr gute Option
http://checksumcompare.sanktuaire.com
Sie können die Prüfsumme nach Datei und / oder Zusammenfassungen vergleichen, wenn zwei Ordner unterschiedlich oder identisch sind.
Sie können msys2 ausprobieren, es ist hier .
Geben Sie einfach die Summe (Algorithmus) ein. (algorithm) ist der Hash-Algorithmus, den Sie verwenden möchten, z. B. md5, sha1, sha256 ...
Im Gegensatz zu Cygwin ist dieses Tool portabel. Sie müssen lediglich die ZIP-Datei herunterladen und an einer beliebigen Stelle extrahieren. Sie können es durch einen einfachen Klick (msys2.exe) verwenden.
Hop dieses Tool wird Ihnen helfen.
Nun, ich habe ein Programm erstellt , um einige Hashes aus einer Datei zu berechnen. Ich hoffe es hilft dir.
Was macht das? Es berechnet den SHA-1- Hash, den SHA-384-Hash, den MD5- Hash und den SHA-256- Hash. Nun, das war's schon :)
Verwenden Sie Python für eine Lösung, die unter Windows oder in nahezu jeder anderen Umgebung funktioniert.
Python installieren - ein Windows-Installationsprogramm wird unter https://www.python.org/downloads/ bereitgestellt.
Herunterladen einer getesteten cksum
Implementierung, zB http://pastebin.com/raw.php?i=cKATyGLb - den Inhalt dieses speichern zu sagen, c:\cksum.py
oder wo auch immer Sie bequem finden
Dann führen Sie eine Prüfsumme durch:
python c:\cksum.py INPUTFILE
Nicht so schnell wie ein kompiliertes Dienstprogramm, aber kompatibel mit Unix cksum
und überall lauffähig.