Wie kann eine Prüfsumme für eine Datei auf meinem Computer am besten berechnet werden?


81

Ich bin auf einem Windows-Computer und möchte eine Prüfsumme für die MySQL-Distribution ausführen, die ich gerade erhalten habe. Es sieht so aus, als gäbe es Produkte zum Herunterladen, ein nicht unterstütztes Microsoft-Tool und wahrscheinlich andere Optionen. Ich frage mich, ob es einen Konsens darüber gibt, welches Tool am besten geeignet ist. Dies mag eine sehr einfache Frage sein. Ich habe noch nie zuvor eine Prüfsummenroutine ausgeführt.


1
Auch auf Super - User diskutiert: superuser.com/questions/245775/...

Antworten:


16

Jedes MD5 erstellt eine gute Prüfsumme, um die Datei zu überprüfen. Alle unten auf dieser Seite aufgeführten Dateien funktionieren einwandfrei. http://en.wikipedia.org/wiki/Md5sum


6
Diese Antwort ist kein guter Rat mehr. MD5 ist heutzutage sehr unsicher . Die Verwendung von MD5 zum Überprüfen heruntergeladener Dateien ist nicht sicher.
Antiduh

22
@antiduh Da Sie den Hash von derselben Stelle erhalten, von der Sie ihn heruntergeladen haben, ist Ihr Argument umstritten. Sie sind durch den auf der Website bereitgestellten Hash eingeschränkt.
JJ

7
Beachten Sie, dass der Benutzer nur überprüfen möchte, ob die heruntergeladene Datei nicht beschädigt wurde. Wenn Sie sich https://en.wikipedia.org/wiki/MD5#Security ansehen, werden Sie im ersten Absatz auf diesen Schlüsselsatz stoßen: "Obwohl MD5 ursprünglich als kryptografische Hash-Funktion konzipiert wurde, hat es Es wurde festgestellt, dass es unter umfangreichen Sicherheitslücken leidet. Es kann weiterhin als Prüfsumme zur Überprüfung der Datenintegrität verwendet werden, jedoch nur gegen unbeabsichtigte Korruption. "
Kosta Tenedios

2
@JJ Auf vielen offiziellen Websites können Sie die eigentliche Binärdatei von einer anderen Domain herunterladen, sodass das Argument gültig ist. Sie können einen modifizierten VLC von einem böswilligen Spiegel über die offizielle Website herunterladen, die durch eine Prüfsumme erkannt wird.
Hey

2
@antiduh Ich habe nicht gefragt, weil ich zu faul bin, um zu suchen, sondern weil RTFM niemals eine angemessene "Antwort" auf Stackoverflow ist (was Ihre Antwort impliziert).
Java-Addict301

234

Die CertUtil ist ein vorinstalliertes Windows - Dienstprogramm, das verwendet werden kann Hash - Prüfsummen zu erzeugen:

CertUtil -hashfile pathToFileToCheck [HashAlgorithm]

HashAlgorithm Auswahlmöglichkeiten: 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 bei * Nix-Systemen zu erhalten, können Sie PS-Magie hinzufügen:

$(CertUtil -hashfile C:\TEMP\MyDataFile.img MD5)[1] -replace " ",""

1
Dies ist eine viel einfachere Wahl als FCIV, da dies vorinstalliert ist.
CJBS

1
Hinweis: Dies ist unter Win XP nicht vorinstalliert. Da das Betriebssystem jedoch veraltet ist, sollte dies kein Problem sein.
CJBS

2
@Laisvis - mit Ihrer Erklärung ging ich von 0 auf in ca. 2 Minuten fertig. Ich bin auf diese Seite gekommen und habe gesucht, wie es geht. Ihre Antwort war einfach und perfekt.
Eisberg

2
+1 für die Empfehlung einer vorinstallierten Version. Gibt es einen besseren Weg, um sichere Software zu gewährleisten, um die Sicherheit zu überprüfen und zusätzliche Schritte beim Suchen, Herunterladen, Installieren und Validieren zu speichern?
Zack Jannsen

1
Kann mir bitte jemand sagen, wie ich die Dateiprüfsumme auf die Verwendung von certUtil generiertem Hash überprüfen soll? Befehlszeile. Wäre das nur die gleiche Befehlszeile, um den Hash für die Datei zu generieren (nachdem die Datei auf dem Zielcomputer empfangen wurde)?
rvpals

25

Ich persönlich verwende Cygwin , mit dem ich das gesamte Smörgåsbord an Linux-Dienstprogrammen zur Hand habe - es gibt md5sumund alle von OpenSSL unterstützten kryptografischen Digests . Alternativ können Sie auch eine Windows-Distribution von OpenSSL verwenden (die "Light" -Version ist nur ein 1-MB-Installationsprogramm).


3
Um nur eine Prüfsumme zu überprüfen, scheint Cygwin ein wenig schwer zu sein. Zumal es 5KB ausführbare Dateien für die Überprüfung des MD5 gibt
Nick Berardi

3
Es mag schwer sein, aber es ist eine gültige Antwort, insbesondere wenn ein Unixy-Programm (MySQL) in Betracht gezogen wird.
Adam Hawes

3
Für diejenigen von uns, die Cygwin als wesentliches Werkzeug betrachten, ist es eine perfekte Antwort.
Zenexer

7
Es ist erwähnenswert, dass md5sum auch mit git bash (mingw) kommt
Old Badman Grey


6

Prüfsummen-Registerkarten: http://code.kliu.org/hashcheck/

Das hat bei Windows schon eine Weile gut funktioniert. Es ermöglicht das einfache Kopieren und Einfügen von Prüfsummen. Es hat ein Feld zum Eingeben / Einfügen von Prüfsummen von Webseiten und zum Anzeigen von Übereinstimmungen oder Nichtübereinstimmungen.


2
Dieses handliche kleine Dienstprogramm ist hier eher untertrieben. Zuerst habe ich keine Beziehung zu den Autoren --- Ich denke nur, dass es ein großartiger Nutzen ist! Sie können eine Hash-Datei Ihrer Wahl aus dem Kontextmenü im Windows Explorer für eine einzelne Datei oder eine Gruppe von Dateien generieren. Sie können später auf diese Hash-Datei doppelklicken, um automatisch eine Hash-Überprüfung dieser Dateien durchzuführen. Ich verwende dies häufig, um einen Hash für große Dateien zu generieren, die ich kopieren möchte, kopiere dann die Hash-Datei damit und doppelklicke am Zielort, um zu überprüfen, ob sie intakt geblieben sind.
Michael Sorens

1
Ausgezeichnete Lösung, aber der Link ist veraltet. Der sicherste Ort, um diese Software jetzt zu bekommen, ist github.com/gurnec/HashCheck
asachet

5

Auf MySQL.com werden MD5s neben jeder Datei aufgelistet, die Sie herunterladen können. Zum Beispiel ist MySQL "Windows Essentials" 5.1 528c89c37b3a6f0bd34480000a56c372 .

Sie können md5 (md5.exe) herunterladen , ein Befehlszeilentool, das die MD5 aller lokal vorhandenen Dateien berechnet. MD5 ist genau wie jede andere kryptografische Hash-Funktion , was bedeutet, dass ein bestimmtes Array von Bytes immer denselben Hash erzeugt. Das heißt, wenn Ihre heruntergeladene MySQL-Zip-Datei (oder was auch immer) dieselbe MD5 hat, die sie auf ihrer Site veröffentlichen, haben Sie genau dieselbe Datei.



3

7-Zip kann verwendet werden, um Hashes für Dateien, Ordner von Dateien und Bäume von Ordnern von Dateien zu generieren. 7-Zip ist klein und ein sehr nützliches Komprimierungsprogramm. http://7-zip.org/


Zwar bietet 7-zip Hashes für alle oben aufgeführten Elemente, es fehlt jedoch eine Möglichkeit, die Ergebnisse direkt zu kopieren und einzufügen. CertUtil bietet, da es sich um ein CMD-Programm handelt, Funktionen zum Kopieren und Einfügen.
Jonathin

Es ist auch möglich, 7z.exe über das CMD zu verwenden, beispielsweise 7z.exe h -scrcSHA256 -- /path/to/your/file.txtwird ein sha256-Hash erzeugt.
Elpy



2

So berechnen Sie md5 aller Dateien im aktuellen Verzeichnis in Windows 7

for %i in (*) DO CertUtil -hashfile %i MD5


1

Das beste Dienstprogramm für Windows ist HashCheck, das jetzt auf GitHub verfügbar ist. https://github.com/gurnec/HashCheck/releases/tag/v2.4.0

Installieren Sie HashCheck. Klicken Sie nun mit der rechten Maustaste auf die Datei -> Bestätigungsdatei erstellen. Es wird eine Datei file.extension.md5 mit MD5-Code erstellt.

Liebe es.


0

Beachten Sie, dass die oben genannten Lösungen Ihnen nur dann nicht mitteilen, ob Ihre Installation korrekt ist, wenn Ihre install.exe korrekt ist (Sie können darauf vertrauen, dass sie eine korrekte Installation erzeugt).

Sie benötigen MD5-Summen für jede Datei / jeden Ordner, um zu testen, ob der installierte Code nach Abschluss der Installation durcheinander gebracht wurde.

WinMerg ist nützlich, um zwei Installationen (möglicherweise auf zwei verschiedenen Computern) zu vergleichen, um festzustellen, ob eine geändert wurde oder warum eine fehlerhaft ist.


0

Sicher ist das certutil der beste Ansatz, aber es besteht die Möglichkeit, einen Windows XP / 2003-Computer ohne den Befehl certutil zu erreichen. Es kann der Befehl makecab verwendet werden, der über einen eigenen Hash-Algorithmus verfügt - hier die Datei fileinf.bat, die einige Informationen über die Datei einschließlich ausgibt die Prüfsumme.


0

Hashing ist eine eigenständige Anwendung, die MD5-, SHA-1- und SHA-2-Familien ausführt. Aufbauend auf OpenSSL.




0

In HPUX (HP UNIX)

Installieren Sie das Paket md5sum beispielsweise auf Ihrem UNIX-Computer, wenn eine Datei mit dem Namen a.txt vorhanden ist

shell > md5sum a.txt

-4

Verwenden Sie einfach win32 Checksum api. MD5 ist in Win32 nativ.


2
Haben Sie ein Beispiel für die Win32-API, das klein genug für eine SO-Antwort und für den Fragesteller geeignet ist?
Sqeaky
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.