30Aug
Algunas veces verá hashes MD5, SHA-1 o SHA-256 junto con las descargas durante sus viajes por Internet, pero realmente no sabe cuáles son. Estas secuencias aparentemente aleatorias de texto le permiten verificar que los archivos que descarga no estén dañados o manipulados. Puede hacerlo con los comandos integrados en Windows, macOS y Linux.
Cómo funcionan los hash y cómo se usan para la verificación de datos Los algoritmos de
son producto de algoritmos criptográficos diseñados para producir una cadena de caracteres. A menudo, estas cadenas tienen una longitud fija, independientemente del tamaño de los datos de entrada. Eche un vistazo a la tabla de arriba y verá que tanto "Fox" como "El zorro rojo salta sobre el perro azul" produce el mismo resultado de longitud.
Ahora compare el segundo ejemplo en el gráfico con el tercero, el cuarto y el quinto. Verá que, a pesar de un cambio muy pequeño en los datos de entrada, los hashes resultantes son todos muy diferentes entre sí.Incluso si alguien modifica una parte muy pequeña de los datos de entrada, el hash cambiará drásticamente.
MD5, SHA-1 y SHA-256 son todas funciones hash diferentes. Los creadores de software suelen tomar una descarga de archivos, como un archivo. iso de Linux, o incluso un archivo. exe de Windows, y ejecutarlo a través de una función de hash. A continuación, ofrecen una lista oficial de los hashes en sus sitios web.
De esta manera, puede descargar el archivo y luego ejecutar la función hash para confirmar que tiene el archivo original y real, y que no se ha dañado durante el proceso de descarga ni ha sido alterado de manera maliciosa. Como vimos anteriormente, incluso un pequeño cambio en el archivo cambiará drásticamente el hash.
Estos también pueden ser útiles si tiene un archivo que obtuvo de una fuente no oficial y desea confirmar que es legítimo. Digamos que tiene un archivo. ISO de Linux que obtuvo de algún lado y desea confirmar que no ha sido alterado. Puede consultar el hash de ese archivo ISO específico en línea en el sitio web de la distribución de Linux. Luego puede ejecutarlo a través de la función hash en su computadora y confirmar que coincida con el valor hash que esperaría que tuviera. Esto confirma que el archivo que tiene es exactamente el mismo archivo que se ofrece para descargar en el sitio web de la distribución de Linux, sin ninguna modificación.
Cómo comparar las funciones hash en cualquier sistema operativo
Con esto en mente, veamos cómo verificar el hash de un archivo que ha descargado, y compararlo con el que se le ha dado. Aquí hay métodos para Windows, macOS y Linux. Los valores hash siempre serán idénticos si está utilizando la misma función hash en el mismo archivo. No importa qué sistema operativo use.
Windows
Este proceso es posible sin ningún software de terceros en Windows gracias a PowerShell.
Para comenzar, abra una ventana de PowerShell iniciando el acceso directo "Windows PowerShell" en su menú de Inicio.
Ejecute el siguiente comando, reemplazando "C: \ path \ to \ file.iso" con la ruta a cualquier archivo que desee ver el hash de:
Get-FileHash C: \ path \ to \ file.isoLo haráTómese su tiempo para generar el hash del archivo, según el tamaño del archivo, el algoritmo que esté utilizando y la velocidad de la unidad en la que se encuentra el archivo.
Por defecto, el comando mostrará el hash SHA-256 para un archivo. Sin embargo, puede especificar el algoritmo hash que desea usar si necesita un MD5, SHA-1 u otro tipo de hash.
Ejecute uno de los siguientes comandos para especificar un algoritmo de hash diferente:
Get-FileHash C: \ path \ to \ file.iso -Algorithm MD5 Get-FileHash C: \ path \ to \ file.iso -Algorithm SHA1 Get-FileHashC: \ ruta \ a \ archivo.iso -Algoritmo SHA256 Get-FileHash C: \ ruta \ a \ archivo.iso -Algoritmo SHA384 Get-FileHash C: \ ruta \ a \ archivo.iso -Algoritmo SHA512 Get-FileHash C:\ path \ to \ file.iso -Algorithm MACTripleDES Get-FileHash C: \ path \ to \ file.iso -Algorithm RIPEMD160
Compara el resultado de la función hash con el resultado que esperabas ver. Si tiene el mismo valor, el archivo no se ha corrompido, alterado ni alterado de ninguna otra forma con respecto al original.
macOS
macOS incluye comandos para ver diferentes tipos de hashes. Para acceder a ellos, inicie una ventana de Terminal. Lo encontrará en Finder & gt;Aplicaciones & gt;Utilidades & gt;Terminal.
El comando md5 muestra el hash MD5 de un archivo: archivo
md5 /path/to/El comando shasum muestra el hash SHA-1 de un archivo de forma predeterminada. Eso significa que los siguientes comandos son idénticos:
shasum /path/to/ archivo shasum -a 1 /path/to/ archivoPara mostrar el hash SHA-256 de un archivo, ejecute el siguiente comando:
shasum -a 256 /path/to/ archivo
Linux
En Linux, acceda aTerminal y ejecute uno de los siguientes comandos para ver el hash de un archivo, dependiendo del tipo de hash que desee ver:
md5sum /path/to/ archivo sha1sum /path/to/ archivo sha256sum /path/to/ archivo
Algunos hashes están firmados criptográficamente para aún más seguridad
Mientras que los hashespuede ayudarlo a confirmar que un archivo no fue alterado, todavía hay una vía de ataque aquí.Un atacante podría obtener el control del sitio web de distribución de Linux y modificar los hashes que aparecen en él, o un atacante podría realizar un ataque man-in-the-middle y modificar la página web en tránsito si estuviera accediendo al sitio web a través de HTTP en lugar deHTTPS cifrado.
Es por eso que las distribuciones modernas de Linux a menudo proporcionan más que hashes enumerados en páginas web. Firman criptográficamente estos hash para ayudar a protegerse contra los atacantes que podrían intentar modificar los hash. Deberá verificar la firma criptográfica para asegurarse de que el archivo hash haya sido firmado por la distribución de Linux si quiere asegurarse de que no se manipulen el hash y el archivo.
Verificación de la firma criptográfica es un proceso más complicado. Lea nuestra guía para verificar que los ISO de Linux no hayan sido manipulados para obtener instrucciones completas.
Crédito de la imagen: Jorge Stolfi / Wikimedia