¿Existe una utilidad de suma de comprobación / hash incorporada en Windows 7?
¿Existe una utilidad de suma de comprobación / hash incorporada en Windows 7?
Respuestas:
Hay una utilidad incorporada, como se especifica en esta otra respuesta .
Sin embargo, es posible que desee utilizar esta aplicación gratuita llamada HashTab que se integra perfectamente con el Explorador de Windows registrando un ... bueno, una pestaña en el cuadro de diálogo de propiedades de los archivos. Es muy dulce
CertUtil es una utilidad de Windows preinstalada que se puede utilizar para generar sumas de comprobación hash:
certUtil -hashfile pathToFileToCheck [HashAlgorithm]
Opciones de algoritmo hash: MD2 MD4 MD5 SHA1 SHA256 SHA384 SHA512
Entonces, por ejemplo, lo siguiente genera una suma de verificación MD5 para el archivo
C:\TEMP\MyDataFile.img
:
CertUtil -hashfile C:\TEMP\MyDataFile.img MD5
Para obtener resultados similares a los sistemas * Nix, puede agregar algo de magia de PowerShell:
$(CertUtil -hashfile C:\TEMP\MyDataFile.img MD5)[1] -replace " ",""
certutil
está disponible en Windows PE , por lo que si está tratando de calcular una suma de verificación en un script de tarea previa a la implementación en PE, tendrá que usar una herramienta externa como Microsoft FCIV .
CertUtil -hashfile C:\TEMP\MyDataFile.img MD5
no produce el mismo hash que md5sum /tmp/MyDataFile.img
bajo Linux (garantizo que es el mismo archivo con una montura)
Estoy usando HashCheck ( última versión ) que se integra como una página de propiedades para los archivos e incluye un menú contextual para comparar con los archivos de comprobación de hash (SFV).
Es gratis y la fuente está disponible.
Existe la utilidad FCIV de Microsoft, el Comprobador de integridad de suma de comprobación de archivos de Microsoft ( enlace de descarga ).
La herramienta Microsoft File Checksum Integrity Verifier es una utilidad de línea de comandos no compatible que calcula hash criptográficos MD5 o SHA1 para archivos.
No muestra Windows 7 en los requisitos del sistema, pero lo acabo de usar en Windows 8 y funcionó.
PowerShell versión 4 y superior incluye el cmdlet Get-FileHash .
powershell get-filehash -algorithm md5 <file_to_check>
Use doskey para crear un alias persistente que sea más fácil de recordar.
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
forma nativa para enumerar varios hash seguidos? ¿No hay tal instrucción almacenada en la consola? Intenté reformular varias veces con la sintaxis correcta, pero me devuelve un error y no parece funcionar sin incrustar un script.
La nueva versión de 7-Zip también le ofrece la opción de sumas de verificación simplemente haciendo clic derecho (esto no incluye MD5 ). Tiene SHA-1 , SHA-256 , CRC-32, CRC-64, etc.
Para MD5 puede descargar HashTab y verificar haciendo clic derecho y luego en propiedades.
Aquí hay uno que he usado antes que se integra muy bien con el cuadro de diálogo "Propiedades" del Explorador: Propiedades de verano . Es de código abierto , y una versión x64 también está disponible .
También me gusta FileAlyzer de Safer Networking , que también ofrece funciones adicionales. Pero solo para sumas de comprobación, Summer Properties es liviano y hace el trabajo.
HashMyFiles de Nirsoft es una pequeña utilidad que le permite calcular los valores hash MD5 y SHA1 de uno o más archivos en su sistema. Puede copiar fácilmente la lista de hashes MD5 / SHA1 en el portapapeles o guardarlos en un archivo de texto / html / xml.
HashMyFiles también se puede iniciar desde el menú contextual del Explorador de Windows y mostrar los hashes MD5 / SHA1 del archivo o carpeta seleccionados.
HashMyFiles es gratuito y portátil.
…that integrates into Windows [Explorer]
Encontré este script de 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
}
}
}
}
Fuente: Cálculo de SHA1 en PowerShell
Aprovecha .NET, que supongo que has instalado
Estoy agregando esto aquí solo porque no vi ningún ejemplo de PowerShell que funcione completamente, listo para copiar y pegar:
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:\>
Comprobador de integridad de suma de comprobación de archivos de Microsoft . Puede calcularvalores hash MD5 y SHA-1 .
Descargue, extraiga los archivos, luego abra un símbolo del sistema, vaya a la ruta extraída y luego escriba el siguiente comando:
fciv -md5 filepath\filename.extension
Por ejemplo:
fciv -md5 d:\programs\setup.exe
'fciv' is not recognized as an internal or external command, operable program or batch file.
Microsoft Windows [Versión 10.0.14393]
Desafortunadamente, no que yo sepa, pero la suite Sysinternals de Microsoft incluye una buena herramienta llamada sigcheck .
Un archivo por lotes basado en el comentario de pbarney a la respuesta con más votos positivos: esto copia el hash MD5 de cualquier archivo que se arrastre al archivo por lotes al portapapeles:
@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
Para que sea un elemento de menú contextual en su lugar:
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
también funciona
El menú contextual MD5 hace exactamente esto. Agrega una opción MD5 al menú contextual de archivos:
MD5 Context Menu es una extensión de shell de software gratuito para Windows que muestra la suma hash MD5 del archivo seleccionado.
Dice que es compatible con Windows 95, 98, ME, NT, 2000 y XP, aunque me funciona perfectamente en Windows 7. Es una descarga pequeña (238 KB) e incluye todo lo que necesita.
Este es solo un script de shell cmd que usa la respuesta de tedr2 pero elimina las líneas y espacios de salida extraños:
:: 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
La salida se puede redirigir a un archivo si es necesario:
@echo %str% > %3
p.ej
sys> \dev\cmd\hash.cmd MyApp.dll SHA1
8ae6ac1e90ccee52cee5c8bf5c2445d6a92c0d4f
Cygwin contiene una md5sum.exe
utilidad que debe hacer lo que quieras.
QuickHash es compatible con SHA-256 y SHA-512. Necesitaba compatibilidad con SHA-256 para verificar la suma de comprobación de las bibliotecas de JavaScript incluidas en la lista blanca para incluirlas en un complemento de Firefox.
Yo uso la utilidad de línea de comandos de suma de comprobación .
md5
, sha1
, sha256
y sha512
.Uso:
suma de comprobación [-t = sha1 | sha256 | sha512 | md5] [-c = firma] [-f =] ruta de archivo
-?
, --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 es una extensión de shell gratuita que calcula muchas sumas de verificación, incluido MD5. Está integrado como una nueva pestaña en las Propiedades del archivo.
Puede usar MD5sums para Windows , una descarga de solo 28 KB ( Cygwin podría ser excesivo si todo lo que quiere hacer es calcular hash MD5).
La forma más fácil de usarlo es usar Explorer para arrastrar y soltar archivos en md5sums.exe para obtener sus hash MD5.
La respuesta correcta es, por supuesto, sí, CertUtil (ver la respuesta de tedr2 ).
Pero agregaré el Comprobador de suma de comprobación de archivos gratuito de Penteract que, creo, es uno de los programas más fáciles de usar. (Descargo de responsabilidad: estoy afiliado a Penteract).
Algunas de sus ventajas:
Para verificar la integridad de este programa (contra ataques de hombre en el medio ), se descarga a través de una conexión segura.
Además: gratis, sin conexión (para que no tenga que cargar sus archivos), fácil de usar (arrastre un archivo y obtenga el resultado), se inicia desde el menú de inicio (no es necesario buscar el ejecutable descargado cuando desee úselo dentro de un año) y es compatible con MD5, SHA1, SHA256, etc.
Esta no es una utilidad incorporada, pero es una muy buena opción
http://checksumcompare.sanktuaire.com
Puede comparar la suma de comprobación por archivo y / o resúmenes si dos carpetas difieren o son idénticas.
Puedes probar msys2, está aquí .
Simplemente escriba suma (algoritmo). (algoritmo) es el algoritmo hash que desea usar, por ejemplo, md5, sha1, sha256 ...
A diferencia de Cygwin, esta herramienta es portátil, solo debe descargar el archivo .zip y extraerlo en cualquier lugar que desee. Puede usarlo con un simple clic (msys2.exe).
Espero que esta herramienta te ayude.
Bueno, he hecho un programa para calcular algunos hashes de un archivo. Espero que te ayude.
¿Qué hace esto? Calcula el hash SHA-1 , el hash SHA-384, el hash MD5 y el hash SHA-256 . Bueno, eso es todo :)
Para una solución que funcione en Windows o en cualquier otro entorno, use Python.
instalar Python: se proporciona un instalador de Windows en https://www.python.org/downloads/
descargue una cksum
implementación probada , por ejemplo, http://pastebin.com/raw.php?i=cKATyGLb - guarde el contenido de esto para decirlo, c:\cksum.py
o donde le resulte conveniente
Luego, para realizar una suma de verificación:
python c:\cksum.py INPUTFILE
No es tan rápido como una utilidad compilada, pero es compatible con Unix cksum
y se ejecuta en cualquier lugar.