Comandos · Seguridad y cifrado
Get-FileHash
La versión de PowerShell para calcular el hash de un archivo (SHA-256 por defecto).
- Dónde se escribe
- PowerShell
- Permisos
- No necesita administrador
- Riesgo
- Bajo: solo consulta datos o hace cambios que no afectan a tus archivos.
Para qué sirve
Hace lo mismo que certutil -hashfile, pero en PowerShell y usando SHA-256 si no indicas otro algoritmo.
Cómo se usa
Get-FileHash .\instalador.exeCalcula el SHA-256 del archivo de la carpeta actual.
Get-FileHash .\instalador.exe -Algorithm SHA512Usa otro algoritmo, si la web publica ese.
Cuándo usarlo
Get-FileHash es la opción cómoda si ya trabajas en PowerShell, y es tu mejor aliada para verificar descargas: imágenes ISO, instaladores, copias de seguridad o archivos que te envía alguien y de los que tienes el hash original. Además usa SHA-256 por defecto, que es el algoritmo más habitual para publicar sumas de comprobación.
La salida es una pequeña tabla con tres columnas: el algoritmo, el hash y la ruta del archivo. Para compararlo con el de la web sin errores, puedes dejar que PowerShell haga la comparación: (Get-FileHash .\archivo.iso).Hash -eq "HASH_PUBLICADO" devuelve True si coinciden y False si no. La comparación no distingue mayúsculas de minúsculas.
Con -Algorithm puedes elegir otros algoritmos como SHA1, SHA384, SHA512 o MD5, pero usa el que publique el sitio de descarga. MD5 y SHA1 sirven para detectar corrupción accidental, aunque no son recomendables como garantía frente a una manipulación intencionada.
Problemas y dudas frecuentes
Dice que no encuentra la ruta.
Revisa el nombre y la carpeta actual. Si el nombre tiene espacios, ponlo entre comillas. Con .\ delante indicas que el archivo está en la carpeta actual.
En CMD no funciona.
Es un cmdlet de PowerShell. Abre PowerShell, o usa en CMD certutil -hashfile archivo SHA256, que da el mismo resultado.
El hash es distinto al publicado.
Descarga el archivo otra vez y revisa que compares el mismo algoritmo. Si sigue sin coincidir, no lo uses y comprueba que has copiado el hash de la web oficial.
Fuentes consultadas
- Get-FileHash (módulo Microsoft.PowerShell.Utility) (Microsoft Learn)