Cómo cifrar tu correo electrónico con PGP
El correo electrónico se transmite en texto plano por defecto, lo que expone tus mensajes a ISPs, proveedores y atacantes. El cifrado PGP garantiza que solo tu destinatario pueda leer lo que envías. Esta guía te explica cómo funciona y cómo empezar.
En esta página
El correo electrónico nunca fue diseñado pensando en la privacidad. Cuando envías un mensaje, este pasa por múltiples servidores en texto plano — legible por tu proveedor de internet, los proveedores de correo, o cualquier atacante conectado a la misma red WiFi de una cafetería. PGP (Pretty Good Privacy) resuelve esto cifrando tu correo para que solo el destinatario previsto pueda leerlo, y permitiéndote firmar mensajes digitalmente para demostrar que realmente los enviaste tú.
Esta guía explica cómo funciona PGP, cómo configurarlo y cómo usarlo sin que se convierta en una carga.
Cómo funciona PGP
PGP utiliza criptografía asimétrica, lo que significa que cada usuario obtiene dos claves matemáticamente vinculadas: una clave pública y una clave privada.
Tu clave pública se comparte libremente. Cualquiera que quiera enviarte un correo cifrado la usa para bloquear el mensaje. Tu clave privada permanece en secreto en tu dispositivo y es lo único capaz de descifrar los mensajes cifrados con tu clave pública.
Lo elegante de este sistema es que nunca necesitas compartir ningún secreto con tu contacto de antemano. Solo intercambian claves públicas y ya están listos.
Cifrado y firma
PGP hace dos cosas distintas, y vale la pena entender ambas.
El cifrado protege el contenido del mensaje. Cifras los mensajes salientes con la clave pública del destinatario, este los descifra con su clave privada, y nadie en el camino puede leer nada.
Las firmas digitales verifican la identidad. Firmas un mensaje con tu clave privada, y el destinatario comprueba la firma contra tu clave pública. Esto confirma que el mensaje realmente vino de ti y que no fue modificado en tránsito.
Puedes usar ambas funciones de forma independiente o combinadas. Firmar sin cifrar es habitual en la distribución de software — permite a los desarrolladores demostrar que un paquete de lanzamiento no ha sido manipulado.
Configuración de PGP
Generación del par de claves
GnuPG (GPG) es la implementación de código abierto estándar de OpenPGP. Viene preinstalado en muchos sistemas Linux y es fácil de obtener en cualquier otra plataforma.
# Instalar GPG en Debian/Ubuntu
sudo apt install gnupg
# Instalar GPG en macOS con Homebrew
brew install gnupg
# Generar un nuevo par de claves
gpg --full-generate-key
Durante la configuración, elegirás un tipo de clave (RSA de 4096 bits es una buena opción por defecto), establecerás una fecha de expiración y crearás una frase de contraseña. Esa frase protege tu clave privada si alguien obtiene acceso físico a tu dispositivo.
# Listar tus claves para confirmar que se crearon correctamente
gpg --list-keys
# Exportar tu clave pública para compartirla
gpg --armor --export [email protected] > clavepublica.asc
Expiración y revocación de claves
Establece una fecha de expiración al generar tu clave. Entre uno y dos años es razonable. La expiración fuerza una rotación periódica de claves y limita el daño si una clave queda comprometida silenciosamente sin que lo sepas. Siempre puedes extenderla antes de que caduque, así que no hay ningún inconveniente real.
Más importante aún: genera un certificado de revocación justo después de crear tu clave y guárdalo en un lugar seguro y sin conexión a internet. Si tu clave privada queda comprometida, publicas ese certificado para que cualquiera que tenga tu clave pública sepa que debe dejar de confiar en ella.
# Generar un certificado de revocación
gpg --gen-revoke [email protected] > revocar.asc
Distribución y verificación de claves públicas
Tener un par de claves es solo la mitad de la ecuación. Los demás necesitan encontrar tu clave pública y confiar en que realmente es tuya.
Servidores de claves
Los servidores de claves son directorios públicos para subir y buscar claves públicas. Los dos más comunes son keys.openpgp.org y keyserver.ubuntu.com.
# Subir tu clave pública a un servidor de claves
gpg --keyserver keys.openpgp.org --send-keys TU_ID_DE_CLAVE
# Buscar la clave de otra persona
gpg --keyserver keys.openpgp.org --search-keys [email protected]
# Importar una clave desde un archivo
gpg --import clavepublica.asc
Red de Confianza vs. verificación directa
El modelo de confianza descentralizado de PGP se llama Red de Confianza (Web of Trust). Cuando firmas la clave pública de alguien, le estás diciendo al mundo que has verificado que esa clave le pertenece. Otros que confíen en ti pueden extender transitivamente esa confianza hacia afuera.
“The only secure computer is one that's unplugged, locked in a safe, and buried 20 feet under the ground in a secret location.”
— Dennis Hughes
En la práctica, la Red de Confianza es difícil de arrancar a menos que ya formes parte de una comunidad donde esto se haga con regularidad. Para la mayoría de los usuarios, la verificación directa es más práctica. Después de intercambiar claves con un contacto, verifica la huella de la clave a través de un canal separado — una llamada telefónica, en persona o a través de una aplicación de mensajería verificada. La huella es un hash corto de la clave pública, fácil de leer en voz alta.
# Ver la huella de una clave
gpg --fingerprint [email protected]
Para situaciones de mayor riesgo, las llaves de seguridad por hardware como YubiKey almacenan tu clave privada en hardware resistente a manipulaciones. El material de la clave nunca toca el sistema de archivos del sistema operativo, lo que supone una protección significativa contra el malware que lee memoria o archivos.
Cifrado y descifrado de correo electrónico
Uso de GPG en la línea de comandos
# Cifrar un mensaje para un destinatario (genera un archivo cifrado)
gpg --armor --encrypt --recipient [email protected] mensaje.txt
# Firmar y cifrar en un solo paso
gpg --armor --sign --encrypt --recipient [email protected] mensaje.txt
# Descifrar un mensaje recibido
gpg --decrypt mensaje.txt.asc
# Verificar una firma independiente (detached)
gpg --verify mensaje.txt.sig mensaje.txt
Integración con clientes de correo
GPG en línea de comandos es potente, pero no es algo que la mayoría quiera hacer con cada correo. Por suerte, los principales clientes de correo tienen una integración sólida con PGP.
| Cliente de correo | Método de integración con PGP | Plataforma |
|---|---|---|
| Thunderbird | OpenPGP integrado (v78+) | Windows, macOS, Linux |
| Apple Mail | Plugin GPG Suite | macOS |
| Outlook | Gpg4win / Kleopatra | Windows |
| Mutt / NeoMutt | Soporte nativo de GPG | Linux / macOS |
| Proton Mail | Integrado, automático | Web, móvil |
| K-9 Mail | Integración con OpenKeychain | Android |
Thunderbird es el punto de partida más accesible para la mayoría. Su soporte integrado de OpenPGP permite importar o generar una clave directamente en el cliente, y gestiona el cifrado y descifrado automáticamente al redactar y leer mensajes.
Consideraciones prácticas y limitaciones
Qué protege PGP y qué no
PGP cifra el cuerpo del mensaje y los archivos adjuntos. No toca los metadatos. El asunto, las direcciones del remitente y destinatario, las marcas de tiempo y la información de enrutamiento permanecen visibles. Alguien que monitorice el tráfico de red puede ver que te estás comunicando con una persona concreta y cuándo, aunque no pueda leer el contenido.
Una convención habitual cuando el contenido es sensible: escribe un asunto genérico como "Mensaje" o déjalo en blanco.
La gestión de claves es la parte difícil
Sinceramente, la gestión de claves es donde PGP complica las cosas para la mayoría. Si pierdes tu clave privada sin una copia de seguridad, pierdes permanentemente el acceso a todos los mensajes cifrados que alguna vez te enviaron a esa clave. Si olvidas tu frase de contraseña, ocurre lo mismo. No hay proceso de recuperación, no hay enlace de "olvidé mi contraseña".
Algunos hábitos que evitan que esto se convierta en un desastre:
Haz una copia de seguridad de tu clave privada y del certificado de revocación en almacenamiento cifrado sin conexión — una memoria USB guardada en un lugar físicamente seguro funciona perfectamente. Usa una frase de contraseña robusta que puedas recordar de verdad, no una clave corta y descartable. Si tu modelo de amenaza incluye ataques de malware dirigidos, pasa tu clave privada a una YubiKey, que impide la extracción de la clave incluso en un sistema comprometido.
Cuándo PGP es realmente la herramienta adecuada
PGP tiene más sentido para la comunicación entre periodistas y fuentes, el envío de documentos sensibles (legales, financieros, médicos) por correo electrónico, desarrolladores que firman versiones de software y commits, y organizaciones que intercambian datos operativos sensibles con contactos conocidos.
Para mensajería privada cotidiana, Signal es la mejor opción. Es más sencillo, tiene mejor usabilidad y ofrece secreto hacia adelante (forward secrecy) — algo que PGP no tiene. Sin secreto hacia adelante, si tu clave privada queda comprometida en el futuro, un atacante que haya capturado tus correos cifrados en el pasado podrá volver atrás y descifrarlos todos. Es una limitación real que conviene tener presente.
Para equipos preocupados por amenazas en redes compartidas, combinar PGP con una VPN y HTTPS forzado crea una defensa en profundidad. La protección a nivel de red y el cifrado a nivel de aplicación cubren diferentes superficies de ataque, por lo que se complementan mutuamente.
El malware lo invalida todo
El cifrado es tan fuerte como el dispositivo que lo ejecuta. Si tu sistema está infectado con malware que registra pulsaciones de teclado o lee el contenido del portapapeles, un atacante puede capturar tu frase de contraseña o interceptar el texto plano antes de que se cifre. Mantener el sistema limpio — mediante actualizaciones regulares, evitando descargas de dudosa procedencia y usando protección en el endpoint — no es opcional. Es un requisito previo para que cualquier herramienta de cifrado funcione como se espera.
Resumen y conclusiones
PGP ofrece cifrado de correo robu
Preguntas frecuentes
¿Qué es el cifrado PGP y por qué debería usarlo para el correo electrónico?
PGP (Pretty Good Privacy) es un método para cifrar tus correos electrónicos de modo que solo el destinatario previsto pueda leerlos. Funciona mediante un par de claves: una clave pública que compartes con otros y una clave privada que solo tú posees. Es muy útil cuando necesitas enviar información sensible como contraseñas, datos financieros o comunicaciones privadas.
¿Tanto el emisor como el receptor necesitan tener PGP configurado para usarlo?
Sí, ambos necesitan PGP para intercambiar correos cifrados. El emisor cifra el mensaje con la clave pública del destinatario, y este usa su clave privada para descifrarlo. Si el destinatario no tiene PGP configurado, no podrá leer el mensaje cifrado.
¿Es difícil configurar PGP para alguien sin experiencia?
Tiene una pequeña curva de aprendizaje, pero herramientas como GPG (GNU Privacy Guard) y plugins de correo como el soporte OpenPGP integrado en Thunderbird lo hacen mucho más accesible. Los pasos principales son generar tu par de claves, compartir tu clave pública e importar las claves públicas de las personas con quienes te comunicas. Una vez configurado, enviar correos cifrados se vuelve algo bastante rutinario.
Recursos en vídeo
Fuentes y lecturas adicionales
- GnuPG Documentation — Manuals and how-tos for GPG key management and encryption.
- Wikipedia: Pretty Good Privacy — Background on PGP, OpenPGP and the web of trust.
- EFF Surveillance Self-Defense — Threat-model based guides from the Electronic Frontier Foundation.
- EFF — Digital rights organisation with security explainers.
- OWASP — Open standards and cheat sheets for application security.
- NIST Cybersecurity Framework — Reference framework for identifying, protecting and responding to threats.
- CISA — US cybersecurity agency guidance for individuals and organisations.