PGP es programa que sirve para cifrar y descifrar datos, de tal forma que solo el destinatario legítimo pueda descifrar la información. OpenPGP es el estándar abierto basado en PGP, y el que actualmente se utiliza en todos los programas. Mailvelope es una extensión para Chrome y Firefox que nos va a permitir cifrar y descifrar e-mails de los principales proveedores como Gmail, Outlook y Yahoo Mail, así nadie podrá conocer la información ni filtrarse. Es una medida de seguridad más si tus correos son importantes.
El correo electrónico, es una de los medios de comunicación más utilizados hoy en día. Por lo cual, que la seguridad se mantenga en niveles altos, es un factor muy importante para que los usuarios sigan confiando en estos servicios para poder realizar enviós de contenido, ya que muchas veces es la manera más sencilla y profesional de hacerlo.
¿Qué es PGP (Pretty Good Privacy)?
PGP es uno de los programas más utilizados para cifrar y descifrar correos electrónicos, la finalidad de este programa es proteger con criptografía la información distribuida a través de Internet. PGP hace uso de criptografía de clave pública, también ofrece autenticación de documentación gracias a la firma digital.
PGP es un criptosistema híbrido, utiliza tanto la criptografía simétrica como asimétrica, esta combinación permite tener lo mejor de ambas tecnologías. El cifrado simétrico es mucho más rápido que el cifrado asimétrico, pero este último proporciona la solución al problema de distribución de la clave de cifrado/descifrado del cifrado simétrico. Gracias a este criptosistema, podremos asegurar que tanto la información enviada como la clave de cifrado/descifrado está a salvo.
Otra característica interesante de PGP es que utiliza compresión, esto se hace con el objetivo de reducir posibles ataques con criptoanálisis, este tipo de ataques buscan patrones presentes en el texto en claro para romper el cifrado. La compresión que se realiza antes de cifrar el contenido, reduce radicalmente estos patrones en el texto claro, por lo que la fortaleza frente a estos ataques es mucho mejor.
El proceso de funcionamiento de PGP es el siguiente:
- PGP crea una clave de sesión secreta única, solo se empleará una vez en la comunicación. Normalmente se utiliza el popular algoritmo de cifrado simétrico AES.
- Una vez que los datos están cifrados, la clave de sesión se cifra con la clave pública del receptor. Se envía el mensaje, y el receptor lo debe descifrar con su clave privada (que no debe ser compartida nunca).
Las claves de cifrado asimétrico se guardan protegidas por una contraseña para evitar que otros usuarios puedan utilizarla, concretamente, se encuentra protegida la clave privada (que no debe ser compartida), pero la clave pública no, ya que como su propio nombre indica, es pública. Esta clave pública es totalmente necesario que la compartamos con cualquier usuario que se quiera comunicar con nosotros, de lo contrario, no podrán comunicarse con nosotros. Esta clave pública se usa para cifrar el mensaje y lo descifraremos con la clave privada asociada.
¿Cómo podemos asegurar la autenticidad del mensaje? El emisor firmará el correo electrónico con su clave privada, para que el receptor pueda utilizar la clave pública del emisor para comprobar a ciencia cierta que él es quien ha enviado el mensaje. Gracias a la confidencialidad y a la autenticidad, podremos enviar emails de manera totalmente segura y privada. De esta forma, podremos confirmar al 100% que el origen del mensaje es legítimo, o al menos, podremos confirmar que el origen del mensaje tiene la clave privada correcta. No obstante, siempre tenemos la posibilidad de que alguien robe la clave privada y se haga pasar por el usuario, por este motivo es recomendable cifrar la clave privada y usar una contraseña de paso con el objetivo de que, si alguien roba la clave privada, no pueda utilizarla porque no conoce la contraseña de acceso a descifrar esa clave privada.
Actualmente todos los programas hacen uso de OpenPGP, permitiéndonos el envío seguro de archivos y mensajes, ofreciendo también verificación del emisor, y además, proporcionando una gran compatibilidad entre plataformas ya que es un estándar. Por tanto, si usas PGP en Linux podrás leer los mensajes en Windows sin ningún problema.
Cifrados más comunes
El cifrado es un tema crítico hoy en día, pero no solo en los correos electrónicos. En todo lo que compone un dispositivo o una red, es necesario disponer de un cifrado que nos mantenga a salvo. Esto hace que siempre tengamos cifrados generalistas, y algunos más específicos. Como es el caso del correo, donde las empresas que proporcionan el servicio hacen grandes inversiones. Y es por ello que tenemos diferentes métodos por los cuales se procede a realizar el cifrado de los correos electrónicos.
- S/MIME: Este cifrado proporciona una criptografía de clave pública para poder cifrar y descifrar. También tiene la capacidad de cifrado de extremo a extremo, lo cual quiere decir sólo el destinatario puede leer ese contenido. Aparte de esto, también proporciona autenticación, integridad y no repudio gracias al uso de firmas digitales. Pero en ese caso requiere de un certificado, el cual tiene que ser emitido por una autoridad de certificación.
- PGP: Es una solución de software gratuita y abierta. Utiliza los mismos procesos que el cifrado previo, y a mayores nos permite firmar los correos para verificar la autenticidad. Y en este punto tenemos una diferencia con los certificados, ya que pueden no ser emitidos por entidades dedicadas a tal efecto. Sino que funcionan como un anillo de confianza donde los usuarios verifican y firman de forma mutua.
- TLS: Es uno de los protocolos más conocidos para cifrar tráfico web, pero también es muy utilizado para correos electrónicos cuando están en tránsito. Esto también quiere decir que una vez lleguen al destino, se almacenarán de forma descifrada. Excepto que se combine con S/MIME o PGP, lo cual puede ser una gran idea si se manejan datos privados. De este modo, nos aseguramos el tránsito y el almacenamiento sin ningún tipo de problemas.
- STARTTLS: Es una extensión del protocolo SMTP, desempeña un papel fundamental en la seguridad de la comunicación por correo electrónico. Cuando dos servidores de correo electrónico son compatibles con STARTTLS, pueden iniciar una conexión segura durante la transmisión de mensajes. Este proceso de «oportunidad de cifrado» permite que los datos se transmitan de manera cifrada, reduciendo el riesgo de que terceros no autorizados intercepten o accedan a la información durante la transmisión de datos entre los servidores.
- DKIM: Aunque DKIM no cifra el contenido de los correos electrónicos, desempeña un papel muy importante en la autenticación y garantía de la integridad del mensaje. DKIM utiliza firmas digitales vinculadas al dominio del remitente para verificar que el correo electrónico no ha sido modificado durante su transmisión.Cuando un remitente envía un correo electrónico firmado con DKIM, incluye una firma digital generada con una clave privada asociada al dominio del remitente. El servidor de correo del destinatario puede verificar esta firma utilizando la clave pública asociada al dominio del remitente. Si la firma es válida, se confirma la autenticidad del remitente y la integridad del mensaje.La aplicación de DKIM ayuda a prevenir la suplantación de identidad y garantiza que el contenido del correo electrónico no haya sido alterado en el camino hacia el destinatario. Esta técnica, combinada con otras medidas de seguridad, contribuyen a fortalecer la confianza en el correo electrónico y a proteger a los usuarios contra prácticas fraudulentas o maliciosas.
¿Qué es Mailvelope?
Es una extensión para los navegadores Google Chrome y Mozilla Firefox que es totalmente gratuita, incorpora el estándar OpenPGP para el cifrado y descifrado de texto en los correos electrónicos, pero es que, además, permite cifrar los archivos adjuntos de dichos e-mails. Su utilización es muy sencilla si antes has usado algún programa basado en PGP para enviar y recibir correos electrónicos, lo primero que tendremos que hacer es crear las claves asimétricas, e intercambiar las claves públicas entre emisor y receptor para cifrar correctamente los mensajes, a continuación, deberán crearse las claves privadas para descifrar el mensaje. Mailvelope también proporciona la comprobación de la autenticidad, haciendo uso de la clave privada para firmar el mensaje, y la clave pública del emisor para comprobar que ha sido él quien lo ha firmado.
Hoy en RedesZone os vamos a enseñar cómo se configura y cómo se envían los e-mails cifrados para que nadie los lea.
Instalación de Mailvelope en los navegadores Chrome o Firefox
Lo primero que tenemos que hacer es acceder a la página web oficial de Mailvelope y seguir los enlaces para descargar la extensión en tu navegador. Nosotros hemos probado a instalar esta extensión en Google Chrome, y durante todas las pruebas hemos utilizado una cuenta de Gmail.
Una vez que pinchemos en «Añadir a Chrome» automáticamente se nos instalará, no es necesario reiniciar el ordenador ni tampoco el propio navegador Google Chrome.
Esta extensión aparecerá en la parte superior del navegador web, y podremos activar o desactivar la extensión siempre que queramos, además, también podremos pinchar en «Añadir» por si estamos en Gmail y la extensión no detecta que estamos en el cliente webmail de Google, asimismo también podemos pinchar en «Recargar» para que refresque la extensión.
Si pinchamos en «Opciones» entraremos dentro de toda la configuración de la extensión, algo necesario para empezar a utilizarla ya que deberemos crear o importar nuestras claves criptográficas.
Configuración: Generación de la clave pública y clave privada (cifrado asimétrico)
Para poder enviar o recibir correos electrónicos con OpenPGP, lo primero que debemos es crear las claves criptográficas. En la zona de «Administración de claves» nos debemos ir a la parte de «Configuración». En este menú tendremos dos opciones principalmente:
- Generar clave: generará nuevas claves criptográficas para usarlas a continuación.
- Importar claves: si ya tienes claves criptográficas PGP generadas anteriormente, puedes importarlas para empezar a usarlas.
Nosotros vamos a generar unas claves nuevas, por tanto, pinchamos sobre «Generar clave» y rellenamos todos los recuadros de texto. Deberemos poner nuestro nombre y correo electrónico, por supuesto, también debemos introducir una contraseña para cifrar y descifrar el contenido de los correos electrónicos, sin esta clave no podremos hacer nada, y además no debemos olvidarla.
Si pinchamos en el botón de «Avanzadas >>» veremos que podemos modificar la longitud de las claves RSA, por defecto es de 4096 bits que es una longitud de clave bastante segura. Otra opción que podremos definir es que las claves criptográficas caduquen pasados por ejemplo 2 meses, de esta forma, nos aseguramos la renovación de dichas claves. Es muy recomendable que todas las claves RSA que generemos, sean de 4096 bits o superior, el mínimo recomendable son 2048 bits, pero por seguridad, es mejor aumentarlo.
Una opción muy interesante que podemos marcar o desmarcar es «subir clave pública al Servidor de claves de Mailvelope«, esto facilita el envío de nuestra clave pública a los futuros destinatarios. No importa subir esta clave pública a dicho servidor, ya que lo que debemos proteger es la clave privada que genera. La entidad que gestiona este servidor de claves es Ubuntu, la popular distribución Linux. Debemos recordar que, en un esquema de criptografía de clave pública, es fundamental que el destinatario tenga nuestra clave pública para cifrar el contenido del correo electrónico, y que nosotros con la clave privada (que no se debe compartir) podamos descifrar esta información.
Verificar las claves pública y privada desde Mailvelope
En la pestaña «Mostrar claves» podremos ver todas las claves que hemos generado o que tenemos importadas en esta extensión. Nos aparecerá tanto si tenemos la clave pública y privada, como si únicamente la pública (porque es la de un destinatario), también aparecerá el correo electrónico asociado, así como el ID de la clave y cuándo se ha creado.
Si pinchamos sobre la clave en cuestión, podremos ver todos sus detalles, e incluso exportar la clave pública, privada o ambas.
Cómo enviar un e-mail con PGP y la extensión Mailvelope
Una vez que hayamos instalado la extensión y hayamos creado las claves criptográficas, podremos enviar y recibir correos electrónicos cifrados con PGP. Lo primero que tenemos que tener claro es que, para enviar un correo electrónico cifrado a un destinatario, debemos tener antes su clave pública y haberla importado, de hecho, la propia extensión nos avisará si no tenemos la clave pública del destinatario, indicándonos que solo se podrá firmar el correo electrónico.
Una vez que tengamos la clave, basta con abrir Gmail y poner un destinatario del que tengamos su clave pública, a continuación, ponemos el asunto y en el cuerpo nos aparecerá directamente un icono nuevo que es el de Mailvelope. Al pinchar sobre ese icono se nos abrirá un menú nuevo y ahí es donde deberemos poner el texto que queramos enviar al destinatario. Una vez enviado, podremos no solo cifrar el mensaje sino también firmarlo para que sepa al 100% que nosotros somos quienes lo hemos enviado.
En la siguiente imagen podéis ver cómo es el aspecto cuando ya tenemos el e-mail listo para firmar y cifrar:
Antes de poder firmarlo, debemos introducir nuestra contraseña ya que se firma con la clave privada (para que el destinatario compruebe la firma con nuestra clave pública que ya debería tener).
En cuanto pinchemos en aceptar, nos llevará directamente a la pantalla de Gmail y pegará en el cuerpo del correo todo el mensaje cifrado:
Y ya simplemente deberemos enviar el correo electrónico como siempre, el destinatario recibirá todo eso y deberá descifrarlo con su software basado en OpenPGP y con su clave privada (ya que nosotros lo hemos cifrado con su clave pública).
Cómo descifrar un correo electrónico cifrado con PGP
Cuando recibimos un correo electrónico cifrado con PGP veremos algo así en nuestra bandeja de entrada:
Si lo abrimos veremos que el cuerpo del mensaje está totalmente cifrado con PGP, y nos saldrá un sobre cerrado con un candado. Si presionamos sobre él, podremos abrir el contenido del correo electrónico con tan solo introducir la contraseña que hemos creado anteriormente:
Si verificamos el correo electrónico, veremos la firma del emisor del mensaje (en este caso hemos sido nosotros mismos):
Tal y como habéis podido ver, el descifrado de los e-mails con Mailvelope es realmente fácil y muy rápido.
Cifrando y descifrando archivos adjuntos
En la zona de «Opciones», si pinchamos en la pestaña de «Cifrado del fichero» podremos adjuntar ficheros a nuestro correo electrónico con un tamaño máximo de 20MB. En esta zona podremos tanto cifrarlos como descifrarlos:
Como habéis podido ver, cifrar y descifrar e-mails y adjuntos con la extensión Mailvelope es muy sencillo, rápido y también completamente gratuito. Si necesitas aumentar la privacidad en tus comunicaciones, os recomendamos hacer uso de OpenPGP ya sea en forma de extensión o programa dedicado. Debemos tener en cuenta que si alguien entra en nuestro correo electrónico de Gmail o Hotmail, y hacemos uso de OpenPGP, solamente podrán ver los destinatarios y el origen de los correos enviados y recibidos, pero nunca podrán ver el contenido de los mensajes porque de cara a Gmail y Hotmail estará todo cifrado con OpenPGP.
Principales ventajas del cifrado de correo electrónico
Está claro que a día de hoy es muy importante proteger nuestra información ya que en los últimos tiempos resulta ser muy valiosa y se encuentra en constante peligro, por lo que os destacamos a continuación las principales ventajas de cifrar la información de nuestro correo electrónico.
- Proteger la información crítica: Nuestros correos electrónicos pueden contener mucha información confidencial, desde detalles de cuentas bancarias, datos comerciales críticos e información personal. Para evitar cualquier fuga de datos sobre esta importante información, el cifrado de correo electrónico es vital tanto para tu negocio como para tu vida personal.
- Eficiencia: Si los correos electrónicos, sean personales o de tu empresa, están encriptados a través de la plataforma o el programa real, los destinatarios no necesitan realizar pasos adicionales para proteger sus correos electrónicos. La responsabilidad recae en su proveedor de correo electrónico y en este caso en la herramienta de encriptación que utilicemos, y su equipo puede escribir y enviar rápidamente su mensaje sin pensar en el proceso de varios pasos para proteger los archivos adjuntos.
- Autenticación: El uso de cifrado puede ayudar a tu equipo y a tu entorno a identificar remitentes auténticos. Los correos electrónicos no deseados siempre existen y la aplicación de cifrado en combinación con la firma digital indica al destinatario que el remitente es auténtico y que el contenido no fue manipulado.
- Rentable: Cuando nuestro servicio de correo electrónico tiene encriptación integrada en el servidor, no es necesario que compres ningún software adicional o tarifas por usuario aunque podemos utilizar alguno como el PGP para que todo sea incluso más seguro, dado que se incluyen todas las funciones esenciales para el cifrado, puede ahorrar mucho dinero si obtiene un servicio de terceros de confianza.
- Prevenir el riesgo empresarial: Sin encriptación, cualquier persona puede tener acceso a la información contenida en nuestro correo electrónico. Hoy en día, hay mucho en juego y no deseamos enviar correos electrónicos sin cifrar. Las amenazas externas o internas siempre están presentes y la información recopilada se puede utilizar en contra de su negocio. Para evitar tales riesgos, se recomienda optar por correos electrónicos encriptados.
Desventajas del cifrado de correo electrónico
Pese a que el cifrado electrónico es una gran ventaja que nos ayuda a tener mayor seguridad y control en todos nuestros correos, también tiene una serie de desventajas, y de ahí que no se use siempre, por tanto, vamos a verlas y si realmente, para el uso que le puedes dar, son realmente contras, o no.
- Complejidad en la configuración y uso: Configurar un cifrado, pese a ser relativamente sencillo, tiene sus complicaciones, por los tipos que hay, programas a utilizar, implementación, etc, de ahí a que hayamos hecho un tutorial, por lo que si no se te da muy bien la informática, podrías volverte loco para hacer que todo funcione correctamente.
- Compatibilidad: No todos los servidores de correo electrónico son compatibles con todos los tipos de cifrados, lo que podría suponer un problema entre receptor y emisor en muchas ocasiones.
- Gestión de claves: Olvidarse una clave para descifrar un correo puede ser muy peligroso, sobre todo porque no hay opción de poder visualizarlo sino, por tanto, si es importante, podríamos generar un problema.
Además, podemos hablar de otros problemas, aunque menos importantes, como el consumo de recursos del sistema para poder utilizarlo, el coste que tiene si nos vamos a nivel empresarial, la falsa seguridad que ofrece pudiéndonos olvidar de otros temas importantes como los metadatos o información sobre el emisor y receptor, problemas legales en algunos países sobre este tipo de cifrados no permitidos, etc. Por tanto, hay que tener todo en cuenta a la hora de decidir si vamos a usar esto, o no.
Antes de terminar, nos gustaría recomendar el programa Mozilla Thunderbird, este programa es un gestor de correo electrónico completo que incorpora la posibilidad de cifrar todos los mensajes enviados y descifrar los mensajes recibidos gracias a OpenPGP. Hace años era necesario instalar en Thunderbird una serie de extensiones para crear las claves PGP y posteriormente para poder utilizarlo en el programa necesitábamos un plugin, sin embargo, en las últimas versiones de Mozilla Thunderbird han incorporado estas características de forma predeterminada, por lo que no tendrás que instalar absolutamente nada. Otro punto positivo de Thunderbird es que podremos gestionar varias cuentas de correo electrónico con diferentes identidades PGP de forma realmente fácil y rápida. Gracias a esta posibilidad, podremos asegurar tanto la confidencialidad de la información, como también la autenticidad de la misma.