En este pequeño tutorial veremos cómo cifrar o descifrar un archivo utilizando GPG en la terminal de GNU/Linux
Para iniciar este tutorial suponemos que ya tienes una clave GPG establecida para tu propia identidad. También asumiremos que sabes un poco lo básico de GPG y que ya no eres un “dummie” en esto del cifrado.
Partimos del supuesto que tienes un archivo de texto que quieres cifrar para mandarlo a alguno de tus contactos. Para cifrarlo utilizarás su clave pública que previamente el contacto te ha mandado, o has descargado desde un servidor de claves.
Una vez cifrado con su clave pública (cerrado el candado), el archivo de texto cifrado sólo podrá ser descifrado por quien posea la clave privada (la llave del candado), que únicamente debería estar en posesión de tu contacto.
Se pueden utilizar algunas de las interfaces gráficas que existen para utilizar GPG, pero en este caso veremos cómo realizar estas tareas desde la línea de comandos, que ya veréis como es sencillo…
Creamos un archivo de texto, y escribimos en él (podemos editarlo con el editor de texto micro o cualquier otro: nano, vi, etc) lo que queramos que quede cifrado para que sólo nuestro contacto pueda leerlo:
<br />touch archivo.txt
micro archivo.txt
Escribimos lo que queramos y lo guardamos con Ctrl+s y salimos con Ctrl+q (si hemos utilizado el editor micro). Ya tenemos el archivo que queremos cifrar.
Ahora podemos buscar el contacto al que queremos enviarselo entre nuestras claves públicas guardadas. Para este ejemplo imaginemos que se lo queremos enviar a Richard Stallman:
<br />gpg -k | grep Stallman -b3
Como lo tenemos entre nuestros contactos de GPG no hace falta importar su clave pública.
Ahora cifraremos (-e) con nuestra identidad (-u) el archivo archivo.txt con la clave pública del receptor (-r) en este caso de Stallman, para que sólo el pueda leer el contenido, mediante el comando:
<br />gpg -e -u "Victorhck" -r "Richard Stallman" archivo.txt
Veremos que ahora nos ha generado un archivo llamado archivo.txt.gpg, si lo abrimos veremos una serie de caracteres indescifrables. Este sería el archivo a enviar.
El contacto que lo reciba simplemente debería descifrarlo (-d) mediante el comando:
<br />gpg -d archivo.txt.gpg > archivo.txt
Le pediría su clave o frase de paso de GPG y si es correcta descifraría el contenido enviándolo a archivo.txt y podría leer aquello que le habías mandado.
Tu también puedes cifrar archivos con tu propia clave pública y así tenerlo cifrado “sólo para tus ojos”. El proceso de cifrado es similar, pero sin especificar el receptor del archivo, ya que serás tu misma.
<br />gpg -e -r "victorhck" mi_archivo_secreto.txt
Y el proceso de descifrado será similar al anterior ejemplo que hemos visto.
Estos son unos ejemplos muy simples de la utilización de GPG desde la línea de comandos, pero como puedes imaginar tiene otras muchas opciones y herramientas que te invito a descubrir mediante su ayuda o página man.
GPG sigue siendo una herramienta indispensable no sólo para seguir ofreciendo cifrado entre las comunicaciones de las personas, también como herramienta indispensable a la hora de certificar la procedencia de un archivo firmándolo con tu clave, por ejemplo las imágenes ISO de las distribuciones GNU/Linux que descargamos e instalamos.
Aquí te dejo el proceso descrito realizado en una terminal:
¿Te animas a hackear con GPG y cifrar algo? Espero tu correo con un pequeño archivo cifrado y así practicamos ambos… 🙂
La privacidad es imposible sin software libre
————————————————————