Czy w systemie Windows 7 jest wbudowane narzędzie sumy kontrolnej?


606

Czy w systemie Windows 7 jest wbudowane narzędzie sumy kontrolnej / skrótu?


Nie mój obszar, ale Powershell, kompilacja w języku skryptowym, może to zrobić.
Phoshi

17
Czy to jedna z tych głupkowatych, których nie mogę zainstalować każdy Wymagania dla oprogramowania innych firm? Jeśli tak, spróbuj googlingu dla „skrótu PowerShell SHA1” i powinieneś pobrać skrypty / cmdlety, które będą uruchamiane na wbudowanym PowerShelu przy użyciu MS Crypto API.
afrazier

7
Jest GetFile-Hash. Potrzebujesz PS 4.0 lub rozszerzeń społeczności stackoverflow.com/questions/10521061/…
rofrol

2
Wirus antywirusowy Avast blokuje dla mnie pobieranie z powyższej strony, więc warto być ostrożnym.
Jules

8
Uwaga, najlepszą odpowiedzią (dla mnie) jest druga odpowiedź, która ma o wiele więcej głosów niż odpowiedź wybrana przez pytającego. Do czytelnika: spójrz poniżej, dla opcji „certutil.exe”.
macetw

Odpowiedzi:


174

Istnieje wbudowane narzędzie, jak określono w ta inna odpowiedź .

Możesz jednak skorzystać z tej bezpłatnej aplikacji o nazwie HashTab który integruje się z Eksploratorem Windows, rejestrując ... cóż, kartę w oknie dialogowym właściwości plików. To całkiem słodkie.

HashTab screenshot


87
wolę HashCheck przez HashTab, przede wszystkim dlatego, że może obsługiwać wiele mieszanych wyborów plików / folderów i może tworzyć / weryfikować pliki SFV / MD5 / SHA1. Mój zapis na forum Ars jest bardziej szczegółowy.
afrazier

44
Pamiętaj, że HashTab jest bezpłatny tylko do użytku prywatnego! HashCheck jest open source i kompletny za darmo (licencja BSD)
keiki

33
tak, istnieje cmd: CertUtil -hashfile _main.exe MD5
Scott混合理论

11
„Istnieje wbudowane narzędzie, które wykonuje dokładnie to, czego potrzebujesz. Możesz jednak użyć tego innego narzędzia, które robi coś, o co nie prosiłeś”. Dlaczego to jest zaakceptowana odpowiedź?
abaumg

6
& gt; „Dzięki. Niestety wbudowanie było dla mnie niezbędnym wymogiem”. Dlaczego więc wybrałeś niezbudowane oprogramowanie, na które pytanie nie wymaga, jako odpowiedzi?
KalEl

1064

CertUtil to wstępnie zainstalowane narzędzie systemu Windows, które może być używane do generowania sum kontrolnych mieszania:

certUtil -hashfile pathToFileToCheck [HashAlgorithm]

Opcje algorytmu HashAlgorithm: MD2 MD4 MD5 SHA1 SHA256 SHA384 SHA512

Na przykład poniższe generuje sumę kontrolną MD5 dla pliku C:\TEMP\MyDataFile.img:

  CertUtil -hashfile C:\TEMP\MyDataFile.img MD5

Aby uzyskać dane wyjściowe podobne do * systemów Nix, możesz dodać trochę magii PowerShell:

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

90
W pytaniu określono wbudowany, a oprócz skryptu powershell, jest to jedyny wbudowany w Windows 7. Istnieją środowiska, w których nie można po prostu zainstalować oprogramowania. Mój pojedynczy upvote nie wydaje się wystarczający dla tej odpowiedzi.
jbo5112

16
MD5.bat: @certutil -hashfile% 1 MD5 | znajdź / v "skrót pliku" | find / v "CertUtil"
pbarney

5
Proszę to zanotować certutil jest niedostępne w Windows PE , więc jeśli próbujesz obliczyć sumę kontrolną w skrypcie zadania przed wdrożeniem w PE, musisz użyć narzędzia zewnętrznego Microsoft FCIV .
Wayfarer

3
To niesamowite, ale CertUtil -hashfile C:\TEMP\MyDataFile.img MD5 nie wytwarza tego samego skrótu md5sum /tmp/MyDataFile.img pod Linuksem (gwarantuję, że jest to ten sam plik z zamontowaniem)
lalebarde

9
@lalebarde Istnieje tylko jeden standard dla MD5. Jeśli uzyskasz różne wyniki w tym samym pliku, dzieje się tak, ponieważ coś powoduje pewne zmiany w tym pliku i powoduje, że skróty są różne. Jest to jedna z najważniejszych funkcji MD5 i innych standardów mieszania.
Paul

165

używam HashCheck ( Ostatnia wersja ), który integruje się jako strona właściwości plików i zawiera menu kontekstowe do porównywania z plikami kontrolnymi mieszania (SFV).

Jest bezpłatny, a źródło jest dostępne.

Screenshot


3
Zabawna aplikacja. Zdecydowanie najlepszy. Może sprawdzić hash za pomocą podwójnego kliknięcia na utworzonym pliku.MD5! I pamięta, jakie pliki zostały zmieszane.
Pavel Radzivilovsky

4
AVG zaznacza, że ​​zmieniono podstawowy program narzędziowy Windows - tego typu złośliwe oprogramowanie często robi.
dunxd

10
Bezpłatne, open source, integruje się z menu właściwości i menu kontekstowym eksploratora, ma kontroler .MD5 i obsługuje SHA-1. Nie wspominając, że jest tylko 85kb i biegnie naprawdę szybki. Ta aplikacja jest absurdalnie świetnie , Dziękuję Ci!
Şafak Gür

4
i możesz go zainstalować za pośrednictwem chocolatey!
Michael Caron

4
@Sossenbinder Musiałeś szukać w niewłaściwym miejscu. SHA-256 jest obsługiwany od grudnia '14. Narzędzie było aktualizowane co najmniej do września 16, więc chociaż może nie być aktywne ostatnio może nie ma wiele do dodania. github.com/gurnec/HashCheck/releases
B Layer

80

Istnieje narzędzie FCIV firmy Microsoft, the Microsoft File Checksum Integrity Verifier ( link do pobrania ).

Narzędzie weryfikujące integralność plików Microsoft Checkpoint to nieobsługiwane narzędzie wiersza komend, które oblicza skróty kryptograficzne MD5 lub SHA1 dla plików.

Nie pokazuje Windows 7 w wymaganiach systemowych, ale właśnie użyłem go w Windows 8 i zadziałało.


Dlaczego łączymy się z nieobsługiwanym narzędziem wiersza poleceń. To nawet nie integruje się z powłoką, której jestem pewien, że autor chciał.
Ramhound

30
To narzędzie było dla mnie przydatne. Pobrałem obraz iso z msdn i musiałem go sprawdzić. Nie chciałem żadnych narzędzi innych firm. Nie potrzebowałem integracji powłoki i autor nie prosił o to. Pochodzi z zaufanego źródła firmy Microsoft i mimo że nie jest obsługiwany, nadal działa. Opublikowałem tutaj link, ponieważ inni ludzie tacy jak ja mogą uznać to za przydatne.
creator

28
Jestem z @creator. To może nie być obsługiwane oprogramowanie, ale przynajmniej Microsoft jest autorem. Programy sum kontrolnych są potencjalnie bardzo ważne dla utrzymania bezpieczeństwa; Wolałbym nie dostać się od jakiejś przypadkowej osoby trzeciej.
ellisbben

2
Chociaż jest to narzędzie OK do umiarkowanego użytku, jest niestabilne. Używam go w skrypcie xdelta, aby określić, czy pliki o tym samym rozmiarze są różne i przykro mi, że otrzymuję około 1 awarii co kilkaset plików. To niewiarygodne, więc rada: użyj czegoś innego.
JasonXA

PsFCIV to przepisanie PowerShell, które obsługuje oryginalną funkcjonalność bazy danych XML plus skróty SHA-256, SHA-384 i SHA-512.
User5910

63

PowerShell w wersji 4 i nowszych zawiera Get-FileHash cmdlet.

powershell get-filehash -algorithm md5 <file_to_check>

Posługiwać się doskey aby stworzyć trwały alias, który jest łatwiejszy do zapamiętania.

doskey sha1sum=powershell get-filehash -algorithm sha1 "$1"
doskey md5sum=powershell get-filehash -algorithm md5 "$1"

1
Dodając Format-List, aby wyświetlić pełne wyjście, jeśli łańcuch wyników mieszania jest za długi powershell Get-FileHash -Algorithm md5 <file_to_check> | Format-List
celeron533

Wreszcie przychodzi do PowerShell!
Franklin Yu

Genialne pytanie i odpowiedzi. Dzięki za to wszystko. Polecam inne oprogramowanie, ale to jest całkiem kompletne. Nie mogę podziękować wystarczającym autorom za ten wątek. Przepraszam ... Mogę zapytać, dlaczego PowerShell na Win 8.1 i 10 nie rozpozna Get-FileHash "C:\foo.exe" -Algorithm MD5,SHA1,SHA256 | Format-List natywnie wymienić kilka skrótów z rzędu? W konsoli nie ma takich instrukcji? Próbowałem przeformułować kilka razy z poprawną składnią, ale zwraca mi błąd i nie wydaje się działać bez osadzenia skryptu.
K0media

32

Nowa wersja 7-Zip daje również opcję sum kontrolnych po kliknięciu prawym przyciskiem myszy (nie obejmuje to MD5 ). To ma SHA-1 , SHA-256 , CRC-32, CRC-64 itp.

Enter image description here.


Dla MD5 możesz pobrać HashTab i sprawdź klikając prawym przyciskiem myszy, a następnie właściwości.

Enter image description here


O której wersji 7-zip mówisz?
klaar

Niestety narzędzie sumy kontrolnej 7 zip nie pozwala na skopiowanie sumy kontrolnej!
Derek Mahar

Myślę, że wybór tekstu skrótu i ​​Ctrl + C działa dobrze.
abe312

W mojej konfiguracji, jeśli przejdziesz do właściwości pliku, możesz skopiować skrót za pomocą kliknięcia prawym przyciskiem myszy - & gt;
abe312

22

Oto jeden, z którego korzystałem wcześniej, który dobrze integruje się z oknem „Właściwości” Eksploratora: Właściwości letnie . Jego otwarte źródło i an Dostępna jest również wersja x64 .

SummerProperties screen shot

Podoba mi się także Bezpieczniejsze sieci FileAlyzer , który zapewnia również dodatkowe funkcje. Ale tylko dla sum kontrolnych, Summer Properties jest lekki i działa.


1
Jedynym problemem jest to, że nie obsługuje folderów lub grup plików. Jest również poza dvlp
Pavel Radzivilovsky

1
Innym problemem jest to, że nie można wkleić do niego skrótu i ​​sprawdzić, czy pasuje
Jonathan

13

Nirsoft HashMyFiles to małe narzędzie, które pozwala obliczyć skróty MD5 i SHA1 jednego lub więcej plików w systemie. Możesz łatwo skopiować listę skrótów MD5 / SHA1 do schowka lub zapisać je w pliku tekstowym / html / xml.

HashMyFiles można również uruchomić z   menu kontekstowe Eksploratora Windows,   i wyświetlić skróty MD5 / SHA1   wybrany plik lub folder.

alt text

HashMyFiles jest darmowy i przenośny.


+1, Wygląda na nowy - ostatni raz kiedy sprawdzałem (przed przejściem do linii poleceń md5sum wersja) była FastSum - ale była to wersja próbna i bardzo nękana. HashMyFiles jest dobry, ponieważ umożliwia przeciąganie i upuszczanie wielu plików i eksportowanie do CSV (obie ważne funkcje). Nie myśl, że widziałem to, gdy kilka lat temu znalazłem FastSuma.
nik

to prawda, HashMyFiles to całkiem nowy dodatek do portfolio NirSoft, został wydany po raz pierwszy w 2007 roku.

…that integrates into Windows [Explorer]
Synetech

13

Znalazłem ten skrypt 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
            }
        }
    }
}

Źródło: Obliczanie SHA1 w PowerShell

Wykorzystuje .NET, który zakładam, że został zainstalowany


7
Win 7 jest wyposażony w .NET 3.5 i PowerShell v2, a PowerShell zawsze był zależny od .NET, więc jeśli masz PS, masz .NET. :-)
afrazier

8

Dodaję to tutaj tylko dlatego, że nie widziałem żadnych w pełni działających przykładów PowerShell, gotowych do skopiowania:

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:\>

7

Microsoft File Checksum Integrity Verifier . Może obliczyć MD5 i SHA-1 wartości mieszania.

Pobierz, rozpakuj pliki, otwórz wiersz polecenia, przejdź do wyodrębnionej ścieżki, a następnie wpisz następujące polecenie:

fciv -md5 filepath\filename.extension

Na przykład:

fciv -md5 d:\programs\setup.exe

Odpowiedź ta i odpowiedź @ twórcy powinny być połączone. Odnoszą się do tego samego narzędzia.
leif81

Tytuł pytania: Czy istnieje wbudowany narzędzie sumy kontrolnej / mieszania w systemie Windows 7? 'fciv' is not recognized as an internal or external command, operable program or batch file. Microsoft Windows [wersja 10.0.14393]
Amit Naidu

6

Plik wsadowy oparty na komentarzu pbarneya do odpowiedzi z większością komentarzy: Kopiuje skrót MD5 dowolnego pliku przeciągniętego do pliku wsadowego do schowka:

@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

Aby uczynić z niego element menu kontekstowego:

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\""

Lub, jeśli nie przeszkadza ci dodatkowe wyjście, jeden plik wsadowy linera certutil -hashfile %1 md5 działa również
jrh


3

Menu kontekstowe MD5 robi dokładnie to. Dodaje MD5 opcja menu kontekstowego plików:

Enter image description here

Alt text

Menu kontekstowe MD5 to bezpłatne rozszerzenie powłoki dla systemu Windows, które wyświetla sumę kontrolną MD5 wybranego pliku.

Mówi, że jest kompatybilny z Windows 95, 98, ME, NT, 2000 i XP, chociaż działa na mnie doskonale w systemie Windows 7. Jest to mały plik do pobrania (238 KB) i zawiera wszystko, czego potrzebujesz.


3
„Z powodu poważnego błędu w ostatniej wersji naszego narzędzia dla dużych plików o rozmiarach> 2 ^ 31 bajtów (~ 2.1 GB) obecnie nie pobieramy już pliku.”
Taha Jahangir

3

To jest tylko skrypt powłoki cmd, który używa odpowiedź tedr2 ale usuwa obce linie i spacje wyjściowe:

:: 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

W razie potrzeby dane wyjściowe można przekierować do pliku:

@echo %str% > %3

na przykład

sys> \dev\cmd\hash.cmd MyApp.dll SHA1
8ae6ac1e90ccee52cee5c8bf5c2445d6a92c0d4f

2

Cygwin zawiera md5sum.exe narzędzie, które powinno robić, co chcesz.


2
Niestety, w oparciu o wiersz poleceń, nie integruje się z powłoką Windows.
Cristian Ciupitu

Cristian Ciupitu tylko dlatego, że nie wiesz, jak to zrobić, nie oznacza to, że nie można tego zrobić. Używam wielu aplikacji CLI z pulpitu / foldera Windows Shell w tle i menu kontekstowego aplikacji i działają poprawnie.
JasonXA

2
Cygwin jest ogromnie przesadzony. Istnieje wiele rodzimych plików binarnych, które wykonują tę pracę, większość z nich poniżej 200k.
sCiphre

W Cygwinie nie ma nic „masowo przesadzonego”. Narzędzie konfiguracyjne pozwala sprawdzić i pobrać tylko dokładnie to, czego potrzebujesz i nic więcej. Jeśli wybierzesz tylko md5sum, to wszystko, co otrzymasz.
Nicole Hamilton


1

1. suma kontrolna

używam suma kontrolna narzędzie wiersza polecenia.

Stosowanie:

suma kontrolna [-t = sha1 | sha256 | sha512 | md5] [-c = podpis] [-f =] ścieżka pliku


2. Argumenty wiersza polecenia

  • -?, --help, -h
    Drukuje opcje.
  • -f, --file=VALUE
    Nazwa pliku.
  • -t, --type, --hashtype=VALUE
    Hashtype Domyślnie md5.
  • -c, --check=VALUE
    Opcjonalnie: sprawdź - podpis, który chcesz sprawdzić. Bez rozróżniania wielkości liter.

3. Przykłady użycia

# 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..


0

HashTab 3.0 to darmowe rozszerzenie powłoki, które oblicza wiele sum kontrolnych, w tym MD5. Jest zintegrowany jako nowa karta w oknie Właściwości pliku.


0

Możesz użyć MD5 sumy dla Windows , pobieranie tylko 28 KB ( Cygwin może być przesadą, jeśli wszystko, co chcesz zrobić, to obliczyć skróty MD5).

Najprostszym sposobem użycia jest użycie Eksploratora do przeciągania i upuszczania plików na md5sums.exe w celu uzyskania ich skrótów MD5.


0

Prawidłowa odpowiedź brzmi oczywiście tak, CertUtil (patrz odpowiedź tedr2 ).

Ale dodam darmowe Penteract Plik Checksum Verifier który, jak sądzę, jest jednym z najbardziej przyjaznych dla użytkownika programów. (Zastrzeżenie: jestem związany z Penteract.)

Niektóre z jego zalet:

  • Porównuje obliczone i oczekiwane skróty dla Ciebie.
  • Minimalistyczny - brak pozycji w menu kontekstowym plików, brak dodatkowej zakładki właściwości plików.

Aby zweryfikować integralność tego programu (przeciwko ataki man-in-the-middle ) - pobiera przez bezpieczne połączenie.

Penteract File Checksum Verifier

Plus: bezpłatny, offline (więc nie musisz przesyłać plików), przyjazny dla użytkownika (przeciągnij plik i uzyskaj wynik), uruchamia się z menu startowego (nie musisz szukać pobranego pliku wykonywalnego, gdy chcesz używaj go za rok) i obsługuje MD5, SHA1, SHA256 itd.


1
Dziękujemy za ujawnienie swojej afiliacji. Należy jednak unikać tworzenia zbyt wielu postów tego typu, ponieważ może to zostać uznane za spam. Aby uzyskać więcej informacji na temat postów promocyjnych, zobacz superuser.com/help/promotion .
bwDraco

1
Działa to tylko na Windows 10, a operatorzy zapytali konkretnie o W7.
Jool


0

Możesz spróbować msys2 tutaj .

Wystarczy wpisać sumę (algorytm). (algorytm) to algorytm mieszania, którego chcesz użyć, np. md5, sha1, sha256 ...

W przeciwieństwie do Cygwina, to narzędzie jest przenośne, wystarczy pobrać plik .zip i rozpakować w dowolnym miejscu. Możesz go użyć za pomocą jednego kliknięcia (msys2.exe).

Hop to narzędzie ci pomoże.



-1

Istnieje tam 100 narzędzi innych firm. Używam MD5Hash. Aby pobierać pliki sfv, po prostu użyj TeraCopy zweryfikować hasze.


-2

Dla rozwiązania, które działa w systemie Windows lub w dowolnym innym środowisku, użyj Pythona.

  1. zainstaluj Pythona - jest dostępny instalator Windows https://www.python.org/downloads/

  2. pobierz testowany cksum wdrożenie, np. http://pastebin.com/raw.php?i=cKATyGLb - zapisz zawartość tego słowa, c:\cksum.py lub gdziekolwiek to wygodne

Następnie, aby wykonać sumę kontrolną:

python c:\cksum.py INPUTFILE

Nie tak szybki jak skompilowane narzędzie, ale kompatybilny z Uniksem cksum i biegnie wszędzie.


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.