Apakah ada utilitas checksum bawaan pada Windows 7?


676

Apakah ada utilitas checksum / hash bawaan pada Windows 7?


Bukan area saya, tapi Powershell, pembuat bahasa scripting, mungkin bisa melakukannya.
Phoshi

18
Apakah ini salah satu dari mereka konyol "Aku tidak diizinkan untuk menginstal setiap perangkat lunak pihak ke-3" persyaratan? Jika demikian, coba googling untuk "PowerShell SHA1 hash" dan Anda harus mendapatkan beberapa skrip / cmdlet yang akan berjalan pada PowerShell built-in menggunakan API Crypto MS.
Afrazier

8
Ada GetFile-Hash. Anda memerlukan ekstensi PS 4.0 atau komunitas stackoverflow.com/questions/10521061/…
rofrol

2
Avast anti virus sedang memblokir unduhan dari situs di atas untuk saya, jadi mungkin ada baiknya mendekati dengan hati-hati.
Jules

10
Perhatikan, jawaban terbaik (bagi saya) adalah jawaban ke-2, yang memiliki lebih banyak suara daripada jawaban yang dipilih oleh penanya. Untuk pembaca: lihat di bawah, untuk opsi "certutil.exe".
macetw

Jawaban:


194

Ada utilitas bawaan, seperti yang ditentukan dalam jawaban lain ini .

Anda dapat, bagaimanapun, ingin menggunakan aplikasi freeware ini bernama HashTab yang terintegrasi dengan Windows Explorer dengan mendaftarkan ... yah, sebuah tab di dialog properti file. Cukup manis.

Tangkapan layar HashTab


90
Saya lebih suka HashCheck daripada HashTab, terutama karena dapat menangani beberapa pilihan file / folder campuran dan dapat membuat / memverifikasi file SFV / MD5 / SHA1. Langgan saya di Forum Ars membahas lebih detail.
Afrazier

45
Waspadai HashTab hanya gratis untuk penggunaan pribadi! HashCheck adalah open source dan lengkap gratis (lisensi BSD)
keiki

36
ya, ada cmd: CertUtil -hashfile _main.exe MD5
Scott 混合 理论

14
"Ada utilitas bawaan yang melakukan apa yang Anda butuhkan. Namun, Anda dapat menggunakan alat lain ini yang melakukan sesuatu yang tidak Anda minta." Mengapa ini jawaban yang diterima?
abaumg

8
> "Terima kasih. Sayangnya built-in adalah persyaratan penting bagi saya." Lalu mengapa Anda memilih perangkat lunak tidak built-in, yang tidak ditanyakan oleh pertanyaan, sebagai jawabannya?
KalEl

1187

CertUtil adalah utilitas Windows yang telah diinstal sebelumnya yang dapat digunakan untuk menghasilkan checksum hash:

certUtil -hashfile pathToFileToCheck [HashAlgorithm]

Pilihan HashAlgorithm: MD2 MD4 MD5 SHA1 SHA256 SHA384 SHA512

Jadi misalnya, berikut ini menghasilkan checksum MD5 untuk file C:\TEMP\MyDataFile.img:

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

Untuk mendapatkan hasil yang mirip dengan sistem * Nix, Anda dapat menambahkan beberapa keajaiban PowerShell:

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

103
Pertanyaannya ditentukan built-in, dan selain dari skrip PowerShell, ini adalah satu-satunya yang dibangun untuk Windows 7. Ada beberapa lingkungan di mana Anda tidak bisa menginstal perangkat lunak. Suara tunggal saya sepertinya tidak cukup untuk jawaban ini.
jbo5112

18
MD5.bat: @certutil -hashfile% 1 MD5 | find / v "hash file" | find / v "CertUtil"
pbarney

6
Harap perhatikan bahwa certutilini tidak tersedia di Windows PE , jadi jika Anda mencoba untuk menghitung checksum dalam skrip tugas pra-penempatan di PE, Anda harus menggunakan alat eksternal seperti Microsoft FCIV .
Wayfarer

3
Itu luar biasa, tetapi CertUtil -hashfile C:\TEMP\MyDataFile.img MD5tidak menghasilkan hash yang sama daripada md5sum /tmp/MyDataFile.imgdi Linux (saya jamin itu adalah file yang sama dengan mount)
lalebarde

14
@ lalebarde Hanya ada satu standar untuk MD5. Jika Anda mendapatkan hasil berbeda pada file yang sama, itu karena ada sesuatu yang membuat beberapa perubahan pada file itu dan menyebabkan hash menjadi berbeda. Ini adalah salah satu fungsi terpenting MD5 dan standar hashing lainnya.
Paul

178

Saya menggunakan HashCheck ( versi terbaru ) yang mengintegrasikan dirinya sebagai halaman properti untuk file dan termasuk menu konteks untuk dibandingkan dengan file cek hash (SFV).

Ini gratis, dan sumbernya tersedia.

Tangkapan layar


3
Aplikasi lucu. Pasti yang terbaik. Itu dapat memeriksa hash dengan klik dua kali pada file yang dibuat. MD5! Dan dia ingat file apa yang di-hash.
Pavel Radzivilovsky

6
AVG sedang menandai bahwa inti Windows Utility telah diubah - itu adalah hal yang sering dilakukan oleh perangkat lunak jahat.
dunxd

11
Gratis, open source, terintegrasi dengan halaman properti dan menu konteks explorer, memiliki .MD5 checker dan mendukung SHA-1. Belum lagi hanya 85kb dan berjalan sangat cepat. Aplikasi ini luar biasa hebat , terima kasih!
Şafak Gür

4
dan Anda dapat menginstalnya melalui cokelat!
Michael Caron

4
@ Mossenbinder Anda pasti mencari di tempat yang salah. SHA-256 telah didukung sejak Desember '14. Alat ini sedang diperbarui hingga setidaknya September '16 jadi sementara itu mungkin tidak aktif akhir-akhir ini mungkin tidak banyak yang ditambahkan. github.com/gurnec/HashCheck/releases
B Layer

84

Ada utilitas FCIV dari Microsoft, Microsoft File Checksum Integrity Verifier ( tautan unduhan ).

Alat Verifikasi Integritas Pemeriksaan File Microsoft adalah utilitas baris perintah yang tidak didukung yang menghitung hash kriptografis MD5 atau SHA1 untuk file.

Itu tidak menunjukkan Windows 7 dalam persyaratan sistem tetapi saya baru saja menggunakannya di Windows 8 dan itu berhasil.


Mengapa kami menautkan ke utilitas baris perintah yang tidak didukung. Ini bahkan tidak terintegrasi ke dalam shell yang saya yakin penulis inginkan.
Ramhound

31
Utilitas itu bermanfaat bagi saya. Saya mengunduh gambar iso dari msdn dan perlu cheksum. Saya tidak ingin alat pihak ketiga. Saya tidak memerlukan integrasi shell dan penulis tidak memintanya. Ini dari sumber tepercaya Microsoft dan sementara tidak didukung masih berfungsi. Saya memposting tautan di sini karena orang lain seperti saya mungkin menganggapnya berguna.
pencipta

29
Saya dengan @creator. Mungkin bukan perangkat lunak yang didukung, tetapi setidaknya Microsoft adalah pembuatnya. Program Checksum berpotensi sangat penting untuk menjaga keamanan; Saya lebih suka tidak mendapatkan milik saya dari pihak ketiga acak.
ellisbben

3
Meskipun ini adalah utilitas OKish untuk penggunaan moderat, itu tidak stabil. Saya menggunakannya dalam skrip xdelta untuk menentukan apakah file dengan ukuran yang sama berbeda dan saya minta maaf saya mendapatkan sekitar 1 crash setiap beberapa ratus file. Ini tidak bisa diandalkan, jadi saran: gunakan sesuatu yang lain.
JasonXA

PsFCIV adalah penulisan ulang PowerShell yang mendukung fungsionalitas basis data XML asli ditambah SHA-256, SHA-384 dan, dan hash SHA-512.
User5910

76

PowerShell versi 4 dan lebih tinggi termasuk cmdlet Get-FileHash .

powershell get-filehash -algorithm md5 <file_to_check>

Gunakan doskey untuk membuat alias persisten yang lebih mudah diingat.

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

1
Dengan menambahkan Format-List untuk menampilkan output penuh jika string hasil hash terlalu panjang powershell Get-FileHash -Algorithm md5 <file_to_check> | Format-List
celeron533

Akhirnya datang ke PowerShell!
Franklin Yu

Pertanyaan dan jawaban yang brilian. Terima kasih untuk semua ini. Saya akan merekomendasikan perangkat lunak lain, tetapi ini cukup lengkap. Tidak dapat cukup berterima kasih kepada kontributor untuk utas ini. Permisi ... Bolehkah saya bertanya mengapa PowerShell pada Win 8.1 dan 10 tidak akan mengenali Get-FileHash "C:\foo.exe" -Algorithm MD5,SHA1,SHA256 | Format-Listsecara asli daftar beberapa hash berturut-turut? Tidak ada instruksi yang disimpan di konsol? Saya mencoba merumuskan kembali beberapa kali dengan sintaks yang benar, tetapi itu mengembalikan saya kesalahan dan sepertinya tidak berhasil tanpa menyematkan skrip.
K0media

38

Versi 7-Zip yang baru juga memberi Anda opsi checksum hanya dengan mengklik kanan (ini tidak termasuk MD5 ). Ini memiliki SHA-1 , SHA-256 , CRC-32, CRC-64, dll.

Masukkan deskripsi gambar di sini.


Untuk MD5 Anda dapat mengunduh HashTab dan memeriksa dengan mengklik kanan dan kemudian properti.

Masukkan deskripsi gambar di sini


Versi 7-zip apa yang Anda bicarakan?
klaar

Sayangnya, alat checksum 7-zip tidak memungkinkan Anda untuk menyalin checksum!
Derek Mahar

Saya pikir memilih teks hash dan Ctrl + C berfungsi dengan baik.
abe312

Dalam pengaturan saya, jika Anda pergi ke properti file, Anda dapat menyalin hash melalui klik kanan-> salin di bawah tab hash file.
abe312

23

Inilah yang saya gunakan sebelumnya yang terintegrasi dengan baik dengan dialog "Properti" Explorer: Summer Properties . Ini open source , dan versi x64 juga tersedia .

Tangkapan layar SummerProperties

Saya juga suka FileAlyzer Safer Networking , yang menyediakan fitur tambahan juga. Tetapi hanya untuk checksum, Properti Musim Panas ringan dan melakukan pekerjaan.


1
Satu-satunya masalah dengan ini adalah tidak mendukung folder atau grup file. Itu juga keluar dari dvlp
Pavel Radzivilovsky

1
Masalah lain dengan itu adalah Anda tidak bisa menempelkan hash ke dalamnya dan melihat apakah cocok
Jonathan

Saya tahu ini benar-benar tua, tetapi bagaimana Anda menjawab pertanyaan lebih dari setahun sebelum diajukan?
Baruch

@Baruch Jika Anda melihat riwayat sunting pertanyaan, Anda akan melihat bahwa, pada Mei 2015, pertanyaan serupa lainnya (tetapi yang lebih lama) memiliki jawaban yang digabung menjadi yang ini. Saya tidak yakin mengapa pertanyaan yang lebih baru adalah yang dipilih untuk bertahan hidup, tapi itu sebabnya itu terlihat aneh. Inilah pertanyaan lama yang asli .
Chris W. Rea

15

HashMyFiles dari Nirsoft adalah utilitas kecil yang memungkinkan Anda menghitung hash MD5 dan SHA1 dari satu atau lebih file di sistem Anda. Anda dapat dengan mudah menyalin daftar hash MD5 / SHA1 ke clipboard, atau menyimpannya ke file teks / html / xml.

HashMyFiles juga dapat diluncurkan dari menu konteks Windows Explorer, dan menampilkan hash MD5 / SHA1 dari file atau folder yang dipilih.

teks alternatif

HashMyFiles adalah freeware dan portable.


+1, Sepertinya yang baru - terakhir kali saya periksa (sebelum pindah ke versi md5sum baris perintah ) adalah FastSum - tapi, itu semacam trialware dan banyak dikomel. HashMyFiles bagus karena memungkinkan seret-dan-jatuhkan beberapa file dan ekspor ke CSV (keduanya fitur penting). Jangan berpikir saya telah melihatnya ketika saya menemukan FastSum beberapa tahun yang lalu.
nik

itu benar, HashMyFiles adalah tambahan yang cukup baru untuk portofolio NirSoft, ini pertama kali dirilis pada 2007.

…that integrates into Windows [Explorer]
Synetech

Dan ukurannya sangat kecil!
Pedi T.

13

Saya menemukan skrip PowerShell ini:

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

Sumber: Menghitung SHA1 di PowerShell

Ini memanfaatkan .NET yang saya anggap telah Anda pasang


7
Win 7 hadir dengan .NET 3.5 dan PowerShell v2, dan PowerShell selalu bergantung pada .NET, jadi jika Anda punya PS, Anda punya .NET. :-)
afrazier

9

Saya menambahkan ini di sini hanya karena saya tidak melihat contoh PowerShell berfungsi penuh, siap untuk copy-paste:

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

Verifikasi Integritas Pemeriksaan Berkas Microsoft . Itu dapat menghitungnilai hash MD5 dan SHA-1 .

Unduh, ekstrak file, lalu buka prompt perintah, pergi ke jalur yang diekstraksi dan kemudian ketik perintah berikut:

fciv -md5 filepath\filename.extension

Sebagai contoh:

fciv -md5 d:\programs\setup.exe

Jawaban ini dan jawaban @ creator harus digabungkan. Mereka merujuk ke alat yang sama.
leif81

Question Title: Apakah ada built-in checksum / hash utilitas pada Windows 7? 'fciv' is not recognized as an internal or external command, operable program or batch file.Microsoft Windows [Versi 10.0.14393]
Amit Naidu


6

File batch berdasarkan komentar pbarney untuk jawaban dengan paling upvotes: Ini menyalin hash MD5 dari file apa pun yang diseret ke file batch ke clipboard:

@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

Untuk menjadikannya item menu konteks:

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

Atau jika Anda tidak keberatan dengan output tambahan, file batch satu liner juga certutil -hashfile %1 md5berfungsi
jrh

3

Menu Konteks MD5 melakukan ini dengan tepat. Ini menambahkan opsi MD5 ke menu konteks file:

Masukkan deskripsi gambar di sini

Teks alternatif

MD5 Context Menu adalah ekstensi shell freeware untuk Windows yang menampilkan jumlah hash MD5 dari file yang dipilih.

Dikatakan itu kompatibel dengan Windows 95, 98, ME, NT, 2000, dan XP, meskipun bekerja dengan baik untuk saya pada Windows 7. Ini adalah unduhan kecil (238 KB) dan mencakup semua yang Anda butuhkan.


3
"Karena bug serius dalam versi terakhir alat kami untuk file besar dengan ukuran> 2 ^ 31 byte (~ 2.1GB), kami saat ini tidak menyediakan unduhan lagi."
Taha Jahangir

3

Ini hanya skrip shell cmd yang menggunakan jawaban tedr2 tetapi menghapus garis dan spasi output yang asing:

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

Output dapat diarahkan kembali ke file jika diperlukan:

@echo %str% > %3

misalnya

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

2

Cygwin berisi md5sum.exeutilitas yang harus melakukan apa yang Anda inginkan.


2
Sayangnya karena berbasis baris perintah, itu tidak berintegrasi dengan Windows Shell.
Cristian Ciupitu

Cristian Ciupitu hanya karena Anda tidak tahu bagaimana melakukannya bukan berarti itu tidak dapat dilakukan. Saya menggunakan banyak aplikasi CLI dari latar belakang desktop / folder Windows Shell dan mengetik menu konteks aplikasi dan berfungsi dengan baik.
JasonXA

2
Cygwin adalah pembunuhan besar-besaran. Ada banyak binari asli yang melakukan pekerjaan itu, sebagian besar di bawah 200k.
sCiphre

Tidak ada yang "berlebihan secara masif" tentang Cygwin. Utilitas pengaturan memungkinkan Anda mencentang dan mengunduh persis apa yang Anda butuhkan dan tidak lebih. Jika semua yang Anda pilih adalah md5sum, itu saja yang Anda dapatkan.
Nicole Hamilton


1

1. checksum

Saya menggunakan utilitas command-line checksum .

Pemakaian:

checksum [-t = sha1 | sha256 | sha512 | md5] [-c = tanda tangan] [-f =] filepath


2. Argumen baris perintah

  • -?, --help, -h
    Mencetak keluar pilihan.
  • -f, --file=VALUE
    Nama file.
  • -t, --type, --hashtype=VALUE
    Hashtype Default untuk md5.
  • -c, --check=VALUE
    Opsional: centang - tanda tangan yang ingin Anda periksa. Tidak peka huruf besar-kecil.

3. Contoh penggunaan

# 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 adalah ekstensi shell gratis yang menghitung banyak checksum, termasuk MD5. Ini terintegrasi sebagai tab baru di File Properties.


0

Anda dapat menggunakan MD5sums untuk Windows , unduhan hanya 28 KB ( Cygwin mungkin berlebihan jika yang ingin Anda lakukan hanyalah menghitung hash MD5).

Cara termudah untuk menggunakannya adalah menggunakan Explorer untuk menarik dan melepaskan file di md5sums.exe untuk mendapatkan hash MD5 mereka.


0

Jawaban yang benar tentu saja, ya, CertUtil (lihat jawaban tedr2 ).

Tapi saya akan menambahkan File Checksum Verifier Penteract gratis yang, saya pikir, adalah salah satu program yang paling ramah pengguna. (Penafian: Saya berafiliasi dengan Penteract.)

Beberapa kelebihannya:

  • Membandingkan hash yang dihitung dan diharapkan untuk Anda.
  • Minimalis - tidak ada item dalam menu konteks file, tidak ada tab tambahan pada properti file.

Untuk memverifikasi integritas program ini (terhadap serangan man-in-the-middle ) - ia mengunduh melalui koneksi yang aman.

Verifikasi Pemeriksaan Berkas Penteract

Plus: gratis, offline (jadi Anda tidak perlu mengunggah file), mudah digunakan (seret file ke dalam dan dapatkan hasilnya), diluncurkan dari menu mulai (tidak perlu mencari executable yang diunduh saat Anda ingin gunakan setahun dari sekarang), dan mendukung MD5, SHA1, SHA256, dll.


1
Terima kasih telah mengungkapkan afiliasi Anda. Namun, harap hindari membuat terlalu banyak posting seperti ini, karena hal itu dapat dianggap sebagai spamming. Untuk informasi lebih lanjut tentang posting promosi, silakan lihat superuser.com/help/promotion .
bwDraco

1
Ini hanya bekerja pada Windows 10 dan op secara khusus bertanya tentang W7.
Jool


0

Anda dapat mencoba msys2, ada di sini .

Cukup ketik (algoritme) jumlah. (Algoritma) adalah algoritma hash yang ingin Anda gunakan misalnya md5, sha1, sha256 ...

Tidak seperti Cygwin, alat ini portabel, Anda hanya perlu mengunduh file .zip dan mengekstraknya di mana pun Anda inginkan. Anda dapat menggunakannya dengan satu klik sederhana (msys2.exe).

Hop alat ini akan membantu Anda.


-1

Yah, saya telah membuat program untuk menghitung beberapa hash dari file. Saya harap ini membantu Anda.

Apa fungsinya? Ini menghitung hash SHA-1 , hash SHA-384, hash MD5 dan hash SHA-256 . Yah, begitulah :)


-1

Ada seperti 100 alat pihak ketiga di luar sana. Saya menggunakan MD5Hash. Untuk unduhan dengan file sfv, cukup gunakan TeraCopy untuk memverifikasi hash.


-2

Untuk solusi yang berfungsi pada Windows atau hampir semua lingkungan lain, gunakan Python.

  1. instal Python - installer Windows disediakan di https://www.python.org/downloads/

  2. unduh cksumimplementasi yang telah teruji , misalnya http://pastebin.com/raw.php?i=cKATyGLb - simpan konten ini untuk dikatakan, c:\cksum.pyatau di mana pun Anda merasa nyaman

Kemudian untuk melakukan checksum:

python c:\cksum.py INPUTFILE

Tidak secepat utilitas yang dikompilasi, tetapi kompatibel dengan Unix cksumdan berjalan di mana saja.


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.