Hoy vemos uno de los software de encriptación de archivos más conocidos para Linux, gpg.
el primer paso para aprender de su uso es instalarlo, y lo haremos a través de este comando:
sudo apt install gnupg
Para empezar utilizaremos el comando:
gpg -c mensaje.txt
Des esta forma cifraremos el archivo mencionado en el comando o a través de una ruta concreta. Una vez ejecutado el comando nos pedirá una contraseña (depende del sistema, a través de terminal o de una ventana), y una vez introducida, el programa procederá a encriptar el contenido del archivo.
Una vez encriptado, veremos que se genera un archivo adicional, el que ya ha sido encriptado a parte del original, obligándonos a borrar el original de una forma segura, a través del comando “srm” con esta sintaxis:
srm archivo
Una vez encriptado y asegurado, podemos desencriptarlo con el sencillo comando:
gpg -d archivo
Una vez introducido el comando, con el nombre o ruta del archivo, nos pedirá la contraseña anteriormente establecida, de esta forma podremos acceder al archivo original en texto plano.
Otras de de la opciones que nos ofrece el software gpg, es el cifrado asimétrico, que nos ofrece una mayor seguridad, puesto que se utilizan dos tipos de claves asociadas entre sí, la pública y la privada. La clave pública, es la que es accesible por cualquiera y su función es la de cifrar archivos, a diferencia de la clave privada, cuya función es la de descifrar los archivos para que puedan ser visibles por cualquiera.
El primer paso, es el de generar las claves, privada y pública, lo haremos con el comando:
gpg --gen-key
Una vez introducido el comando, nos pedirá el algoritmo de encriptación que queramos utilizar, recomendamos usar RSA y después 4096 bits de tamaño máximo permitido, después, nos preguntará si deseamos establecer una fecha de caducidad (para no establecer ninguna: 0), después de especificar información personal, y una contraseña (passphrase) crearemos la clave pública.
Una vez creada, cifraremos el archivo deseado con el comando:
gpg --encrypt --recipient (ruta/del/archivo) archivo
(Una vez encriptado, tendrá extensión gpg, así sabremos que ha sido cifrado con éxito).
gpg [--output <nombre de archivo resultante>] --decrypt nombre_archivo.gpg