GnuPG: Firmar y Cifrar correos en Android con K-9 Mail y OpenKeychain
2017-11-16
Índice
Si utilizas Android en tu telófono o tablet, seguramente tambión estarás usando Gmail como gestor de correo, que como sabrás escanea permanentemente nuestros correos a cambio de poder usar de forma gratuito sus servicios.
Si quieres preservar un poco más tu privacidad o si en un momento dado necesitas mandar un correo con información sensible podemos instalar OpenKeychain y K-9 Mail que nos permitirán firmar y encriptar digitalmente, mediante GnuPG, nuestros correos desde nuestros dispositivos Android
GNU Privacy Guard (GnuPG)
No quiero profundizar mucho sobre GnuPG, versión libre de PGP, solo pretendo dar unas pequeñas pinceladas a fin de poder entender bien los pasos que realizaremos más adelante, una simple búsqueda por Duckduckgo te aportará toda la información que necesitas.
Parto de la base de que tienes unas nociones básicas sobre el uso de GnuPG o PGP y de que ya tienes creadas tu par de claves (privada y publica), si no sabes muy bien de lo que estoy hablando te recomiendo que leas este artículo
Básicamente, lo que vamos a realizar es firmar o cifrar nuestros correos con la clave publica del remitente (que previamente deberemos de haber importado) y el remitente podrá descifrar o verificar nuestra identidad con su clave privada.
OpenKeychain
OpenKeychain es un sofware open source, puedes ver y examinar su código en Github, que nos va a permitir cifrar y firmar archivos y junto a K-9 Mail, cifrar y firmar digitalmente nuestros correos en dispositivos Android.
Lo puedes descargar desde F-Droid
Configuración
Nada mas arrancar por primera vez aparece una la pantalla desde la que podemos crear el par de claves GnuPG en caso de no tenerlas aun, o como es mi caso podemos importar nuestras claves que previamente deberemos de haber copiado en nuestro dispositivo.
Tras pulsar en Importar, navegamos por nuestro dispositivo para encontrar nuestro fichero de claves
Tras seleccionarla nos aparece una pantalla con la información de la clave a importar, pulsamos en Importar
Nos pedirá la contraseña de las claves para poder importarlas, tras la importación, nuestra clave ya estará disponible para poder ser utilizada con OpenKeychain
Para finalizar, deberemos de darle los permisos necesarios para que funcione correctamente
Con esto terminamos la parte relacionada con la configuración de OpenKeychain, ahora nos queda configurar el cliente de correo.
K-9 Mail
K-9 Mail es un cliente de correo electrónico de código abierto con soporte para múltiples cuentas, búsqueda, IMAP, notificaciones push, sincronización de múltiples carpetas, con soporte PGP/MIME y mucho más.
Tambión lo puedes descargar desde F-Droid
Configuración
Doy por hecho que ya tienes configurada tu cuenta de correo en K-9 Mail, por lo que solo voy a explicar la forma de configurar y enviar el correo cifrado
Pulsamos sobre Opciones -> Configuración -> Configuración de cuenta -> Cifrado
Seleccionamos OpenKeychain como Aplicación OpenPGP
Pulsamos en Mi clave y permitimos que K-9 Mail pueda acceder a la aplicación.
Elegimos la clave que vamos ha utilizar, solo aparece una, la que hemos importado antes, en caso de tener mas claves aparecerán aquí.
Tambión tenemos la opción de poder firmar los correos con nuestra clave PGP sin necesidad de cifrar el correo.
Con estos sencillos pasos ya tenemos configurado K-9 Mail para poder enviar correos cifrados y/o firmados con nuestra clave PGP
Prueba de funcionamiento
Para finalizar vamos a comprobar que todo funciona correctamente, para lo que vamos a firmar y cifrar un correo que nos vamos a enviar a nosotros mismos.
Creamos un correo de prueba, K-9 Mail por defecto viene configurado para cifrar el correo en caso de tener importada la clave publica del destinatario (Candado con punto verde), esta opción se puede cambiar pulsando sobre el icono marcado con un candado
Podemos elegir entre no cifrar el mensaje, cifrarlo si tenemos la clave publica del destinatario o forzar el cifrado del mensaje.
Tambión podemos elegir firmar el mensaje pero no cifrarlo desde el menú de Opciones seleccionamos Enable PGP Sign Only
Nos aparece una ventana informativa advirtiendo que el correo se va a firmar pero no se cifra, en algunos clientes de correos la firma puede mandarse como un fichero adjunto llamado signature.asc, debemos saber que cuando cifras un correo tambión incluimos la firma en ól.
En la captura de pantalla vemos dos iconos, indicando que el mensaje será firmado (check azul) pero no se cifrará (candado sin punto verde)
Desde el mismo menú de Opciones podemos habilitar PGP/INLINE, se nos abre otra ventana con advertencias y problemas que podemos tener si habilitamos esta opción.
Tras seleccionar las opciones de firmado/cifrado que más nos interesen enviaremos el correo pero antes nos pedirá la contraseña de nuestra clave para poder hacerlo.
Una vez enviado el correo debe de aparecer en nuestra bandeja de entrada, al intentar leer el correo nos aparecerá una ventana solicitando nuestra contraseña de la clave para poder descifrar el mensaje.
Tras poner la contraseña podremos ver el contenido del mensaje, como se ve en la captura, el candado tiene un color verde junto a tres puntos, lo que nos indica que el mensaje está cifrado y firmado
Si queremos saber más información acerca de la firma pulsamos sobre el icono del candado y luego pulsamos en Ver Firmante veremos mas información sobre quien firmó el mensaje
Tambión podemos ver el resultado de nuestra prueba en un cliente de correo como Thunderbird
Para leer el mensaje necesito introducir la contraseña de mi clave privada
Y ya podemos ver el contenido del mensaje
Si intentamos leer el mensaje sin poner la contraseña veremos el mensaje cifrado
Cono veis esta es una forma muy sencilla de ganar un poco más de privacidad en nuestros dispositivos.
Espero que te haya gustado, pasa un buen día. 🐧