Cómo utilizar GPG sobre Windows

En este artículo veremos un pequeño manual sobre el uso de esta herramienta y veremos las principales interfaces gráficas que nos permiten gestionar GPG sobre este sistema operativo.
GPG significa Gnu Private Guard. Es una herramienta utilizada comúnmente para el cifrado y firmado de archivos y correo electrónico y supone un remplazo de otra herramienta de carácter propietario: PGP (Pretty Good Privacy).

INTRODUCCIÓN

El sistema de autentificación antes referenciado nos permite comprobar fehacientementela verdadera identidad del remitente, y el sistema de encriptación, que es el destinatario final de nuestro mail o mensaje, quien va a leer nuestro correo y que no va a ser leído por nadie más en el caso de ser interceptado.

Como ya hemos visto, existen dos grandes programas para firmar y encriptar mails: GPG y PGP. Nosotros nos vamos a centrar en GPG porque es una herramienta libre, distribuida bajo licencia GPL y de carácter totalmente gratuito.

GPG vio su primera versión, la 1.0.0, en 1999. Su carácter de herramienta libre hace que sea frecuentemente incluida en sistemas operativos como Linux, FreeBSD, OpenBSD, etc. En Windows no viene incluida de serie pero existe una portabilidad a este sistema operativo que nos podemos bajar desde la página principal del proyecto GPG, o bien desde el mirror, de sun.rediret. Aquí os dejamos el enlace directo para descargar la última versión disponible, la 1.4.5.

CÓMO FUNCIONA

GPG utiliza pares de claves asimétricas, que son individualmente generadas para cada usuario. Este par de claves se compone de una clave pública y una clave privada. Para que los usuarios puedan comprobar nuestra indentidad, deberemos subir nuestra clave pública a un servidor de claves al efecto. La generación de estas claves se puede hacer utilizando frontend gráficos, o desde la línea de comandos utilizando solo gpg. Yo voy a empezar a explicar el proceso suponiendo que ya tenemos instalado GPG y está instalado en un directorio llamado “GnuPG”.

Así pues el primer paso sería ubicarnos en el directorio donde tenemos instalado el ejecutable de GPG, y teclear desde el mismo la siguiente orden:

gpg --gen-key

Durante el proceso de generación se nos irán haciendo diversas preguntas, como el tipo de cifrado que queremos utilizar, la intensidad de cifrado, la fecha de expiración de la clave en cuestión y naturalmente nuestro nombre y apellidos así como una dirección de correo, que es lo que va a constituir el USERID. Nos va a bastar con aceptar las opciones que ya vienen por defecto, ya que en la mayoría de los caso éstas son apropiadas para nuestra seguridad.

Al generar la clave se nos va a preguntar por una frase de paso, es decir, una contraseña. Esta contraseña nos va a asegurar que nadie más que nosotros mismos va a poder usar esta clave GPG, por lo que es importante elegir una contraseña fuerte y difícil de adivinar, pero que sea lo suficientemente clara para nosotros como para no olvidarla, puesto que si esto sucede no podremos volver a utilizar más la clave gpg relacionada. También es importante tener una copia aparte de nuestra clave privada, para que en caso de desastre informático o pérdida de datos podamos recuperarla.

Bien, ya tenemos generada nuestro par de claves, pero para que el resto de la gente pueda comprobar nuestros mensajes firmados, tenemos que darles nuestra clave pública.

Esto se puede hacer de varias maneras.

  1. Enviándosela por correo
  2. Dándosela en un disquete
  3. Subiéndola a un servidor de claves públicas

Servidores de claves hay muchos, pero todos ellos están interconectados, es decir, que subiendo la clave a un servidor, el resto ya tiene conocimiento de la existencia de nuestra nueva clave. Yo suelo utilizar el servidor pgp de rediris para estos propósitos. La orden a teclear para remitir nuestra clave es:

gpg --send-keys --keyserver pgp.rediris.es USERID.

Tecleada lógicamente, desde donde tengamos instalado gpg, USERID es el número de la clave que quieres enviar al servidor de claves. La clave que has generado y su número los puedes comprobar con el comando gpg --list-keys. Este comando listará todas las claves memorizadas hasta el momento por GPG. Si acabamos de instalar GPG, solo debería salir la nuestra.

Este sería el proceso para remitir nuestra clave a un servidor de claves público, pero es posible que deseemos que tan sólo unos pocos tengan conocimiento de nuestra clave pública. Pues bien, para ello deberemos volcar esta clave a un fichero de texto. El comando para ello sería:

gpg -a -–export USERID > miclave.asc.pub

El comando que deberiamos ejecutar para importar una clave volcada en un fichero, es:


gpg -–import miclave.asc.pub


Normalmente nos va a bastar con subir nuestras claves públicas a un servidor al efecto. Para comprobar la indentidad de alguien y bajarnos su clave pública desde un servidor definido al efecto, podemos teclear la orden:

gpg --keyserver pgp.rediris.es --recv-keys CA6E390E

La salida del comando te debe dar algo parecido a esto:

gpg: key CA6E390E: "Fernando Mu±oz Rio-PÚrez ...@correo.es>" not
changed

La clave referida es mi clave pública, pero podéis llevar ese proceso con cualquier otra clave.

Qué pasa si se me olvida mi contraseña o pierdo mi clave privada.

Pues en este caso, o en el caso de nuestra clave haya sido comprometida,tenemos que generar un certificado de revocación y subirlo a un servidor de claves. Un certificado de revocación es como una carta de despido, en la cual comunicas que esa clave ya no es fiable. La orden precisa para generar este certificado es:

gpg -o revocacion.asc --gen-revoke USERID

Esto genera un fichero de revocación que deberemos importar a nuestra relación de claves, con la orden.

gpg --import revocacion.asc

El último paso es comunicar a los servidores de claves que nuestra clave ya no es válida, con la orden:

gpg --keyserver pgp.rediris.es --send-keys USERID.

Frontend gráficos.

Bueno, hasta aquí todo el rollo de comandos. Es importante referenciarlos porque son básicamente lo que nos va a permitir trabajar con GPG con seguridad, utilicemos el frontend gráfico que utilicemos.

Yo, en este apartado, quiero referenciar dos GUIs (Graphical User Interface) para Windows: la primera de ellas, y la que mejor funciona, es Enigmail para windows. enigmail es un plugin para Thunderbird que funciona de lujo con este cliente de correo o con Mozilla Mail. La descarga es libre y gratuita y la podéis efectuar desde aquí.

La única precaución a tener en cuenta es descarganos el fichero "xpi" en el mismo idioma en el que tengamos Thunderbird puesto que de otro modo no funcionará.

La última versión de enigmail en estos momentos es la 0.9.2 y permite llevar todas los comandos referenciados mediante la GUI. Yo es este el sistema que utilizo, tanto en linux como en Windows.

Pero si nos gusta el OE y no queremos cambiar de cliente de correo, podemos utilizar GPGOE, descargable desde aquí.

Este programa no tiene instalación. Simplemente basta con descomprimir el paquete en un directorio de nuestra elección y ejecutarlo. Notaremos que está en funcionamiento porque agrega un icono al "systray" o barra de notificación (junto al reloj).

Para firmar y encriptar mensajes, tan sólo debemos agregar el botón de firmar y encriptar en la barra de botones del Outlook Express. Y eso es todo, a partir de ahora cuando hagamos doble click sobre el mensaje de correo saldrá una ventana emergente informándonos de si la firma de ese mensaje es correcta o no lo es.

Lo único que no me gusta de este plugin para OE es que no permite generar claves, ni establecer relaciones de confianza, cosa que sí permite enigmail para Thunderbird. Es decir, que lo veo muy básico, pero al menos funciona de lujo.

Top