Usamos cookies propias y de terceros para ayudarte en tu navegación. Si continuas navegando consideramos que aceptas el uso de cookies. OK

lunes, 19 de enero de 2015

Encriptar archivos en linux con Mcrypt

En estos tiempos de mucha fuga de privacidad, Mcrypt es una utilidad disponible para Linux que permite encriptar archivos con el fin de proteger la información.
Para instalarlo en Fedora lo hacemos mediante el comando yum.



[root@localhost fernando]#yum install mcrypt

Una vez instalado, vamos a tener dos utilidades: mcrypt (para encriptar) y mdecrypt (para desencriptar.)
Mcrypt soporta varios tipos de hash y lo podemos ver ejecutando:

[root@localhost fernando]# mcrypt --list
cast-128 (16): cbc cfb ctr ecb ncfb nofb ofb
gost (32): cbc cfb ctr ecb ncfb nofb ofb
rijndael-128 (32): cbc cfb ctr ecb ncfb nofb ofb
twofish (32): cbc cfb ctr ecb ncfb nofb ofb
arcfour (256): stream
cast-256 (32): cbc cfb ctr ecb ncfb nofb ofb
loki97 (32): cbc cfb ctr ecb ncfb nofb ofb
rijndael-192 (32): cbc cfb ctr ecb ncfb nofb ofb
saferplus (32): cbc cfb ctr ecb ncfb nofb ofb
wake (32): stream
blowfish-compat (56): cbc cfb ctr ecb ncfb nofb ofb
des (8): cbc cfb ctr ecb ncfb nofb ofb
rijndael-256 (32): cbc cfb ctr ecb ncfb nofb ofb
serpent (32): cbc cfb ctr ecb ncfb nofb ofb
xtea (16): cbc cfb ctr ecb ncfb nofb ofb
blowfish (56): cbc cfb ctr ecb ncfb nofb ofb
enigma (13): stream
rc2 (128): cbc cfb ctr ecb ncfb nofb ofb
tripledes (24): cbc cfb ctr ecb ncfb nofb ofb


El procedimiento es simple:

Para encriptar ejecutamos mcrypt archivo e ingresamos la password:

[root@localhost fernando]# mcrypt archivo.txt
Ingrese la contraseña (máximo de 512 caracteres).
Por favor, utilice una combinación de letras mayúsculas, minúsculas y números.
Ingrese contraseña: ********
Ingrese contraseña: ********
El archivo `archivo.txt' fue cifrado.



Para desencriptar ejecutamos mdecrypt archivo e ingresamos la password:

[root@localhost fernando]# mdecrypt archivo.txt.nc
mdecrypt: `archivo.txt' todavía existe. ¿Desea sobreescribirlo? (y / n) y
Ingrese contraseña: ********
El archivo `archivo.txt.nc' fue descifrado.

Al momento del cifrado se puede especificar el algoritmo a utilizar, en este ejemplo rc2:

[root@localhost fernando]# mcrypt -a rc2 archivo.txt
Ingrese la contraseña (máximo de 512 caracteres).
Por favor, utilice una combinación de letras mayúsculas, minúsculas y números.
Ingrese contraseña: ********
Ingrese contraseña: ********

El archivo `archivo.txt' fue cifrado.



También se puede comprimir el archivo al momento del cifrado. Si tenemos el gzip instalado en nuestro sistemas le podemos indicar al mcrypt que lo utilice antes de encriptar el archivo:

[root@localhost fernando]# mcrypt -z archivo.txt
Ingrese la contraseña (máximo de 512 caracteres).
Por favor, utilice una combinación de letras mayúsculas, minúsculas y números.
Ingrese contraseña: ********
Ingrese contraseña: ********
El archivo `archivo.txt' fue cifrado.

Se creará un archivo que además de tener la extención mc tendrá gz.
[root@localhost fernando]# ls
 archivo.txt.gz.nc

Hay muchas más opciones a la hora de usar esta utilidad. Podemos ingresar al man de la aplicación.