Gibt es eine integrierte Methode zum Berechnen eines SHA-1- oder MD5-Hash in Windows 7?

60739
Brian Webster

Gibt es eine integrierte Methode zum Berechnen eines SHA-1- oder MD5-Hash in Windows 7?

37
http://superuser.com/questions/89191/looking-for-md5-utility-that-integrates-to-windows akira vor 12 Jahren 0
Ich würde die Aufnahme von sha1 in den Titel der anderen Frage unterstützen und diese abschließen Brian Webster vor 12 Jahren 0
Diese Frage ist kein Duplikat von http://superuser.com/questions/89191/looking-for-md5-utility-that-integrates-to-windows. Bei dieser Frage wird nur nach Shell-Integration gefragt, keine Befehlszeile. wisbucky vor 9 Jahren 0
Diese Lösung ist nicht genau in Windows 7 integriert, aber wenn Sie bereits Git Bash (msys / mingw) installiert haben, enthält es die Befehlszeile md5sum wisbucky vor 9 Jahren 0
`Powershell get-filehash -Algorithmus sha1 ` Christian Long vor 8 Jahren 3
Das ist also ein Duplikat eines Duplikats? Sollte es nicht eher gegen [die ursprüngliche Frage] (http://superuser.com/q/245775/122096) verweisen, die die meisten Antworten bietet? x29a vor 8 Jahren 0
Eigentlich können Sie certUtil verwenden, welches ein eingebautes Werkzeug ist:> certUtil -hashfile -? Verwendung: CertUtil [Options] -hashfile InFile [HashAlgorithm] Generiert und zeigt einen kryptografischen Hash über einer Datei an Dikla vor 6 Jahren 0

7 Antworten auf die Frage

31
John Sampson

Es gibt kein integriertes Dienstprogramm. Microsoft bietet jedoch ein Befehlszeilenprogramm als kostenlosen Download an:

Verfügbarkeit und Beschreibung des Dienstprogramms File Checksum Integrity Verifier

Das stimmt nicht mehr. PowerShell 4 fügt den Befehl [`Get-FileHash`] hinzu (http://technet.microsoft.com/en-us/library/dn520872.aspx). (Zeit, nicht wahr?) Obwohl es fair ist, wird PowerShell 4 derzeit nur unter den neuesten Windows-Betriebssystemen installiert. Auf älteren Betriebssystemen ist ein Upgrade jedoch äußerst sinnvoll. (PS4 hat auch viele andere schöne Dinge.) jpmc26 vor 9 Jahren 5
Ein großer Nachteil: `fciv` schlägt für Dateinamen fehl, die Unicode-Zeichen enthalten. wisbucky vor 6 Jahren 0
18
akira

Keine integrierten Tools

Ich benutze die HashCheck- Shell-Erweiterung:

Alt-Text

This is my favorite because it's a *kernel extension* (dunno if they still use that terminology). Been using it for years. David Cowden vor 10 Jahren 0
Gibt es eine Möglichkeit, SHA-256-Hashes mit diesem zu erhalten? Max vor 9 Jahren 0
@DavidCowden: Welche Vorteile bietet die Implementierung einer solchen Funktion als Kernel-Erweiterung im Vergleich zu einer Anwendung, die ausschließlich im Benutzerbereich arbeitet. Ist das Betriebssystem möglicherweise nicht instabil? Isaac vor 8 Jahren 0
@Isaac ich vermisse es. In alten Windows-Begriffen handelt es sich um eine *** Shell-Erweiterung *, nicht um eine Kernel-Erweiterung. Der Vorteil ist, dass die Benutzeroberfläche direkt in den Windows-Explorer eingefügt wird, sodass Sie, wie das Bild zeigt, die Prüfsummen und Hashwerte direkt im Eigenschaftsfenster der Datei anzeigen können. Es ist ziemlich ordentlich! David Cowden vor 8 Jahren 0
11
SysAdmin1138

Es ist nicht genau eingebaut, aber Sie müssen keine neue Software herunterladen, damit es funktioniert. Sie können ein Powershell-Skript erstellen, um die MD5-Summe von Dateien zu berechnen. Das eigentliche Skript finden Sie hier:

http://www.ahmadsoft.org/powershelljunkie/index.html

Kopieren Sie diesen Text in eine Datei mit dem Namen "ps-md5sum.ps1" und speichern Sie sie irgendwo. Wenn Sie den Hash einer Datei berechnen müssen, öffnen Sie PowerShell im Verzeichnis der Datei, die Sie überprüfen möchten, und führen Sie sie dann aus:

[PS] C:\> ps-md5sum.ps1 file-of-choice.exe 

Und es sollte den Hash dieser Datei zurückgeben.

Dieses PS1-Skript von Joe Pruitt emuliert das Verhalten von UNIX md5: http://devcentral.f5.com/weblogs/Joe/archive/2009/05/18/unix-to-powershell---md5.aspx Brian Reiter vor 13 Jahren 0
6
Matt Hanson

Es ist nichts eingebaut. Darf ich vorschlagen, HashTab zu verwenden ?

6
steve.lippert

Wieder nichts eingebaut, also verwende ich HashCalc .

HashCalc-Screenshot

5
Ohad Schneider

Arpoon Checksum ist auch schön, da keine Installation erforderlich ist

Arpoon Checksum - Main Screen

4
Lèse majesté

In addition to all the great options already posted, there's also md5deep/hashdeep, an open source hash calculation suite for Windows (but can also be used in *nix and OS X systems) that supports:

  • MD5
  • SHA-1
  • SHA-256
  • Tiger
  • Whirlpool

Some advantages of md5deep/hashdeep:

  • It's open source and cross-platform.
  • It runs from the command-line and can be used for scripting.
  • It has optimized binaries for both 32-bit and 64-bit systems.
  • It supports modern hashing algorithms (MD5 and SHA-1 are both broken at this point for verifying file integrity and digital signatures since collisions can already be produced for MD5 with relative ease and SHA-1 collisions are increasingly within the realm of possibility).
  • It can recursively generate checksums for an entire directory.
  • It can test a file or directory against a previously generated list of checksums to perform a quick audit of the directory (identifying unknown files or files which have been altered).

To use it in Windows, you can either install it in Cygwin or you can just include the md5deep directory in your %PATH% variable. Though I personally prefer the following setup:

  1. Extract all files somewhere, e.g.

    %ProgramFiles%\md5deep

  2. Create a set of batch files in your windows directory, e.g.

    %WinDir%\md5.bat
    %WinDir%\hash.bat
    %WinDir%\sha1.bat
    %WinDir%\sha256.bat
    %WinDir%\tiger.bat
    %WinDir%\whirlpool.bat

  3. Include the path to the appropriate binaries, e.g.

    In md5.bat:
    @ECHO OFF
    "%ProgramW6432%\md5deep\md5deep64.exe" %* (64-bit systems)
    "%ProgramFiles%\md5deep\md5deep.exe" %* (32-bit systems)

    In hash.bat:
    @ECHO OFF
    "%ProgramW6432%\md5deep\hashdeep64.exe" %* (64-bit systems)
    "%ProgramFiles%\md5deep\hashdeep.exe" %* (32-bit systems)
    ...

Or if you want to automatically switch between the 32-bit and 64-bit binaries for WoW64, you can put the 32-bit binaries in %ProgramFiles(x86)% and the 64-bit ones in %ProgramW6432%, and then write your batch files like this:

@ECHO OFF SET cmd=hashdeep IF "%ProgramFiles%" EQU "%ProgramW6432%" SET cmd=%cmd%64 "%ProgramFiles%\md5deep\%cmd%.exe" %*