MD5
Para utilizar la función MD5 tenemos el siguiente comando.
md5sum [opciones] fichero
Opciones del comando:
-c
Comprueba que la huella generada por el comando coincide con la que me han pasado del fichero.
-b
Indico al comando que el fichero que voy a abrir es binario, es decir, todos los códigos ASCII desde el 0 al 255.
-t
Indico al comando que el fichero es texto, es decir, solo caracteres imprimibles.
Creación del Hash
En este ejemplo vamos a pasar el manual del comando md5sum a un fichero txt al que llamaremos md5sum.txt, el hash lo pasaremos a un fichero que llamaremos md5sum.md5
man md5sum > md5sum.txt
md5sum -t md5sum.txt > md5sum.md5
Comprobación del Hash
Para comprobar si el hash anterior es correcto, utilizaremos el siguiente comando
md5sum -c md5sum.md5
Calcular la huella de varios ficheros
Le pasamos una carpeta, en nuestro caso /bin
md5sum -b /bin > bin.md5
md5sum -c bin.md5
Como podemos ver, nos comprueba todos los archivos ubicados en la carpeta /bin
.
Casos Prácticos
El fichero se ha modificado
Supongamos que el fichero se ha modificado
nano md5sum.txt
md5sum -c md5sum.md5
Como podemos ver, nos ha generado un error indicando que el hash no corresponde al archivo.
WARNING: 1 computed checksum did NOT match
La huella ha sido modificada
Modificamos la huella del fichero de ejemplo
nano md5sum.md5
md5sum -c md5sum.md5
Como podemos ver, nos ha generado un error indicando que el hash no corresponde al archivo.
WARNING: 1 computed checksum did NOT match
El fichero no existe
Eliminamos el fichero de ejemplo
rm md5sum.txt
md5sum -c md5sum.md5
Como podemos ver, nos ha generado un error indicando que no se ha encontrado el archivo.
WARNING: 1 listen file could not be read
El fichero está en otra ubicación
Movemos a otra ubicación el fichero y comprobamos el hash
mv md5sum.txt md5sum.txt.bak
md5sum -c md5sum.md5
Como podemos ver, nos ha generado un error indicando que no se ha encontrado el archivo.
WARNING: 1 listen file could not be read
SHA
Para utilizar la función SHA tenemos el siguiente comando.
shasum [opciones] fichero
Opciones del comando:
-a
Algoritmo: 1, 224, 256, 384, 512
-c
Comprueba que la huella generada por el comando coincide con la que me han pasado del fichero.
-b
Indico al comando que el fichero que voy a abrir es binario, es decir, todos los códigos ASCII desde el 0 al 255.
-t
Indico al comando que el fichero es texto, es decir, solo caracteres imprimibles.
Creación del hash
En este ejemplo vamos a pasar el manual del comando shasum a un fichero txt al que llamaremos shasum.txt, el hash lo pasaremos a un fichero que llamaremos shasum.sha256
man shasum > shasum.txt
shasum -a 256 -b shasum.txt > shasum.sha256
Comprobación del hash
Para comprobar si el hash anterior es correcto, utilizaremos el siguiente comando
shasum -c shasum.sha256
Calcular la huella de varios ficheros
Le pasamos una carpeta, en nuestro caso /bin
shasum -b /bin > bin.sha256
shasum -c bin.sha256
Como podemos ver, nos comprueba todos los archivos ubicados en la carpeta /bin
.
Casos Prácticos
El fichero se ha modificado
Modificamos el fichero de ejemplo y añadimos, por ejemplo, un espacio al principio del fichero
nano shasum.txt
shasum -c shasum.sha256
Como podemos ver, nos ha generado un error indicando que el hash no corresponde al archivo.
WARNING: 1 computed checksum did NOT match
La huella ha sido modificada
Modificamos la huella del fichero de ejemplo
nano shasum.sha256
shasum -c shasum.sha256
Como podemos ver, nos ha generado un error indicando que el hash no corresponde al archivo.
WARNING: 1 computed checksum did NOT match
El fichero no existe
Eliminamos el fichero de ejemplo
rm shasum.txt
shasum -c shasum.sha256
Como podemos ver, nos ha generado un error indicando que no se ha encontrado el archivo.
WARNING: 1 listen file could not be read
El fichero está en otra ubicación
Movemos a otra ubicación el fichero y comprobamos el hash
mv shasum.txt shasum.txt.bak
shasum -c shasum.sha256
Como podemos ver, nos ha generado un error indicando que no se ha encontrado el archivo.
WARNING: 1 listen file could not be read