Encriptar un archivo con clave GPG

A continuación explico de forma muy breve cómo se encripta un archivo cualquiera con una clave GPG. *Debes tener instalado en tu sistema GnuPG.

Para este ejemplo primero crearemos un archivo prueba.txt que contendrá la cadena de texto "Hola".

echo "Hola" > prueba.txt
cat prueba.txt 
Hola

Ahora ejecutamos el siguiente comando sobre el archivo prueba.txt.

gpg --passphrase abcd1234 -o prueba.gpg -c prueba.txt

Al argumento --passphrase se le puede pasar la cadena de texto que queramos. Eso si, debemos recordarla para luego desencriptar nuestro archivo. El argumento -o es para indicar el archivo de salida ya encriptado, y el argumento -c es para indicar que se va a realizar un cifrado simétrico (por defecto AES128). Si se quisiera cambiar el tipo de cifrado se puede sustituir la opción -c por --cipher-algo y a continuación especificar el tipo de cifrado, por ejemplo:

gpg --passphrase abcd1234 -o prueba.gpg --cipher-algo AES256 prueba.txt

Una vez hecho esto, se puede listar el contenido del directorio actual para ver lo que se ha generado.

ls -lrt
-rw-rw-r-- 1 xe26505 xe26505    5 nov 03 19:43 prueba.txt
-rw-rw-r-- 1 xe26505 xe26505   54 nov 03 19:43 prueba.gpg

Si queremos ver qué contiene el archivo prueba.gpg generado veremos que está encriptado:

cat prueba.gpg 
??K0pF`?%<??Z?8??>??Tgh???_u???O?
????8a?

Ahora ya podemos guardar para nosotros mismos o hacer llegar el archivo a una persona que conozca la passphrase para descifrarlo, de un modo seguro y fiable.

Para desencriptar el archivo bastaría con ejecutar el siguiente comando:

gpg --passphrase abcd1234 -d prueba.gpg 
gpg: CAST5 encrypted data
gpg: encrypted with 1 passphrase
Hola

Donde al argumento --passphrase se le ha de pasar la misma cadena que se utilizó para encriptar, y el argumento -d es el archivo encriptado.

Si lo que se quiere encriptar es un conjunto de archivos y directorios bastaría con empaquetarlos y/o comprimirlos en un archivo, por ejemplo .tar, .zip o .gz y repetir el proceso de este mini tutorial.

- "¿Y para qué necesito yo hacer todo esto?"

Si necesitas guardar algo de gran valor, por ejemplo una semilla de un monedero Bitcoin, un archivo de passwords, o necesitas enviar por mail datos con información sensible (informe médico, cuenta del banco, passwords, etc.) es altamente recomendable hacerlo de forma que nadie mas que tú y quien tú quieras lo pueda leer. Aquí puedes leer cómo usar GnuPG para tu correo electrónico.

Un comentario en “Encriptar un archivo con clave GPG”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.