Cuando alguien en tu organización desea transferir un archivo, internamente o fuera de la organización, pueden surgir algunas inquietudes: ¿Está completo el archivo? ¿Se envía al lugar correcto? ¿Llegará intacto? ¿Los datos confidenciales están protegidos y encriptados de destinatarios no autorizados?
Todas son preocupaciones válidas y cada una se puede abordar con la ayuda del cifrado. Al codificar los datos mediante uno o más algoritmos de cifrado de confianza, quienes envían archivos pueden sentirse más seguros de que los datos que se intercambian son seguros.
Pero, ¿qué pasa con los destinatarios de los archivos? ¿Podrán decodificar fácilmente el archivo cifrado seguro? Sí, si el archivo se envió con un protocolo de cifrado como PGP.
En este artículo te contamos qué es el cifrado PGP, cómo funciona, su seguridad y sus limitaciones.
Indice
¿Qué es el cifrado PGP?
PGP ( Pretty Good Privacy) se ha convertido en un pilar de la privacidad y la seguridad por una razón principal de Internet: que te permite enviar un mensaje cifrado a alguien sin tener que compartir el código de antemano. Hay mucho más, pero este es el aspecto fundamental que lo ha hecho tan útil.
Supongamos que necesitas enviar un mensaje confidencial a un amigo sin que nadie más descubra su contenido. Una de las mejores soluciones sería alterarlo con un código secreto que solo tú y tu amigo conozcan, de modo que si alguien intercepta el mensaje, no pueda leer el contenido.
Los sistemas como este funcionan bien en muchos tipos diferentes de encriptación, pero hay un fallo importante: ¿Cómo puedes enviar un mensaje codificado a alguien si aún no has tenido la oportunidad de compartir el código con esa persona?
Si no has compartido el código de antemano y lo has utilizado para cifrar tu mensaje, tu amigo no tendrá forma de descifrar el mensaje codificado cuando lo reciba. Si envías el código junto con el mensaje codificado, cualquiera que intercepte el mensaje podrá acceder al contenido con la misma facilidad que el destinatario.
Es un acertijo que PGP ha logrado resolver con algo llamado cifrado de clave pública, que permite a sus usuarios enviar mensajes seguros y cifrados a las personas incluso si nunca lo han hecho antes.
El cifrado PGP es una metodología de cifrado de datos que se utiliza para cifrar, descifrar y autenticar archivos digitales y comunicaciones en línea. Utiliza una combinación de metodologías de cifrado como hash, compresión de datos, criptografía simétrica de clave privada y criptografía asimétrica de clave pública para mantener la seguridad de los datos. El cifrado PGP se puede utilizar para proteger archivos de texto, correos electrónicos, archivos de datos, directorios y particiones de disco.
¿Qué más hace el cifrado PGP?
La función principal de PGP es permitir que sus usuarios envíen mensajes seguros sin necesidad de una presentación previa, pero eso no es todo lo que hace. También permite a los destinatarios verificar si un mensaje es auténtico o si ha sido manipulado. Para ello, utiliza algo llamado firmas digitales, que trataremos más adelante en este artículo.
Además de esto, PGP se puede utilizar para cifrar otras cosas además del correo electrónico. Puedes usarlo para cifrar tu disco duro, mensajes instantáneos, archivos y más. Si bien todas estas son características importantes, este artículo se centrará principalmente en el uso del cifrado PGP para el correo electrónico, el uso más extendido de PGP.
¿Por qué es importante PGP?
Es posible que no lo sepas, pero el correo electrónico no es una forma muy segura de comunicarse. Cuando tu correo electrónico sale de tu cuenta y se envía a través de Internet, transita a través de redes que están fuera de tu control. Puede ser interceptado y manipulado, todo sin que tu o el destinatario lo sepáis.
Si necesitas enviar algo valioso o sensible, el correo electrónico normal simplemente no es adecuado. Tus mensajes personales pueden ser arrebatados por piratas informáticos que podrían usarlos para cometer fraude de identidad, mientras que los mensajes importantes del gobierno pueden caer en manos de espías. El acosador de una persona incluso podría estar leyendo todo lo que pasa por su bandeja de entrada.
Estos peligros son parte de la razón por la que se inventó PGP: para traer una apariencia de privacidad y seguridad al salvaje oeste que es la comunicación por correo electrónico.
A pesar del nombre, que se inspiró en la tienda ficticia de un programa de radio llamada Ralph’s Pretty Good Grocery, PGP es una forma de encriptación que no tiene ninguna forma públicamente conocida de romperse. Esto significa que, siempre que se utilice correctamente, puedes confiar en la seguridad, la privacidad y la integridad de tus mensajes y archivos.
Historia de PGP
PGP es un programa de cifrado creado por Phil Zimmerman en la era oscura de Internet de 1991. Zimmerman, que era un acérrimo activista antinuclear, creó inicialmente el programa para que personas de ideas afines pudieran comunicarse y almacenar archivos de forma más segura. El primer algoritmo de cifrado se llamó «BassOmatic», nombrado por Zimmerman después de un boceto de Saturday Night Live.
Zimmerman lanzó PGP de forma gratuita a través de FTP, lo que la convierte en la primera forma de criptografía de clave pública con amplia disponibilidad. Se extendió rápidamente por Usenet, particularmente entre los activistas por la paz y otros activistas políticos. A partir de estas raíces, su uso se expandió hacia aquellos que querían más privacidad y seguridad para sus comunicaciones.
Después de que el cifrado PGP se extendiera fuera de EE. UU., el Servicio de Aduanas de los Estados Unidos inició una investigación sobre Zimmerman, porque PGP se clasificó como criptografía de alta resistencia. En ese momento, este tipo de criptografía se consideraba una forma de munición y requería una licencia para exportarse.
Afortunadamente para Zimmerman, después de varios años de investigación y algunas maniobras legales imaginativas, no se presentaron cargos.
A lo largo de los años, se han lanzado continuamente nuevas versiones de PGP para mejorar su seguridad y usabilidad. Algunos de estos cambios incluyeron la reestructuración del sistema de certificados, la implementación de nuevos algoritmos simétricos y asimétricos y el desarrollo de una nueva arquitectura basada en proxy.
A lo largo del camino, hubo una serie de adquisiciones que terminaron con Symantec Corporation comprando PGP Corporation y la mayoría de sus activos originales por $ 300 millones. Ahora poseen la marca comercial de PGP y la utilizan en sus productos, como Symantec Command Line y Symantec Desktop Email Encryption.
OpenPGP
Los primeros días de PGP estuvieron plagados de desacuerdos de patentes basados en su uso del algoritmo de cifrado RSA. Para que el desarrollo de PGP continúe sin estos problemas de licencia, el equipo detrás de él se dedicó a crear un estándar no propietario que pudiera usarse abierta y libremente.
En 1997, se acercaron al Grupo de Trabajo de Ingeniería de Internet (IETF) con una propuesta para desarrollar el estándar y nombrarlo OpenPGP. La propuesta fue aceptada y OpenPGP se convirtió en un estándar de Internet. Esto permitió a cualquiera implementar OpenPGP en su software.
OpenPGP se está desarrollando activamente bajo la especificación RFC 4880. Este estándar establece los algoritmos de cifrado, los formatos, la composición y otras características que los programas deben utilizar para ser compatibles con OpenPGP.
¿Qué programas usan OpenPGP?
El cifrado PGP se utiliza en varios programas propietarios, como los productos de Symantec mencionados anteriormente. Gracias al desarrollo del estándar OpenPGP, también está disponible en varias implementaciones gratuitas.
El más destacado de ellos es Gpg4win, que es un conjunto gratuito de herramientas de cifrado para Windows. El cifrado PGP se puede utilizar en Mac OS con un programa como GPG Suite, Android con K-9 Mail e iOS con Canary Mail. Se pueden encontrar más opciones compatibles con OpenPGP en el sitio web de OpenPGP.
¿Cómo funciona?
Primero, cubramos los conceptos clave, luego veremos un ejemplo para darte una comprensión más concreta. El cifrado PGP se basa en varios elementos importantes que necesitarás entender para comprender cómo funciona. Los más importantes son la criptografía de clave simétrica, la criptografía de clave pública, las firmas digitales y la red de confianza.
Criptografía de clave simétrica
La criptografía de clave simétrica implica el uso de la misma clave para cifrar y descifrar datos. En PGP, se genera una clave aleatoria única, que se conoce como clave de sesión. La clave de sesión cifra el mensaje, que es la mayor parte de los datos que deben enviarse.
Este tipo de cifrado es relativamente eficaz, pero tiene un problema. ¿Cómo compartes la clave de sesión con su destinatario? Si lo envías junto con tu correo electrónico, cualquiera que intercepte el mensaje puede acceder al contenido con la misma facilidad que su destinatario. Sin la clave, su destinatario solo verá el texto cifrado.
Criptografía de clave pública
PGP resuelve este problema con la criptografía de clave pública, también conocida como criptografía asimétrica. En este tipo de cifrado hay dos claves: una pública y una privada.
Cada usuario tiene una de cada una. La clave pública de tu corresponsal potencial se puede encontrar buscando en los servidores de claves o preguntando directamente a la persona. El remitente utiliza las claves públicas para cifrar los datos, pero no puede descifrarlos.
Una vez que los datos se han cifrado con la clave pública del destinatario, solo se pueden descifrar con su clave privada. Esta es la razón por la que las claves públicas se entregan libremente, pero las claves privadas deben protegerse con cuidado. Si tu clave privada se ve comprometida por un atacante, le permite acceder a todos tus correos electrónicos cifrados con PGP.
En PGP, el cifrado de clave pública no se utiliza para cifrar el mensaje, solo la clave de sesión única que se generó para cifrarlo. ¿Por qué? Porque el cifrado de clave pública es simplemente demasiado ineficaz. Tomaría demasiado tiempo y usaría una mayor cantidad de recursos computacionales.
Dado que el cuerpo del mensaje generalmente contiene la mayor parte de los datos, PGP utiliza el cifrado de clave simétrica más económico para esto. Reserva el pesado cifrado de clave pública para la clave de sesión, lo que hace que todo el proceso sea más eficiente.
De esta manera, el mensaje se cifra a través de medios más prácticos, mientras que el cifrado de clave pública se utiliza para entregar de forma segura la clave de sesión a su destinatario. Dado que solo su clave privada puede descifrar la clave de sesión, y la clave de sesión es necesaria para descifrar el mensaje, el contenido está protegido de los atacantes.
Firmas digitales
Nuestras firmas escritas se utilizan con frecuencia para verificar que somos quienes decimos ser. Están lejos de ser infalibles, pero siguen siendo una forma útil de prevenir el fraude. Las firmas digitales son similares, utilizando criptografía de clave pública para autenticar que los datos provienen de la fuente a la que afirma y que no han sido manipulados.
El proceso hace que las firmas digitales sean esencialmente imposibles de falsificar a menos que la clave privada se haya visto comprometida. Las firmas digitales se pueden utilizar junto con el cifrado de mensajes de PGP o por separado. Todo depende de lo que estés enviando y por qué.
Si el mensaje es confidencial y nadie más que el destinatario debe leerlo, debes utilizar el cifrado. En caso de que el mensaje deba entregarse intacto y sin alteraciones, será necesario utilizar una firma digital. Si ambos son importantes, debes usarlos juntos.
Las firmas digitales funcionan mediante el uso de un algoritmo para combinar la clave privada del remitente con los datos que están autenticando. El texto sin formato de tu mensaje se alimenta a través de una función hash, que es un algoritmo que transforma las entradas en un bloque de datos de tamaño fijo, llamado resumen del mensaje.
Luego, el resumen del mensaje se cifra con la clave privada del remitente. Este resumen de mensaje cifrado es lo que se conoce como firma digital . En el cifrado PGP, la firma digital se envía junto con el cuerpo del mensaje (que puede estar cifrado o en texto plano).
Verificación de firmas digitales
Cuando alguien recibe un correo electrónico firmado digitalmente, puede verificar su autenticidad e integridad utilizando la clave pública del remitente. Todo el proceso generalmente lo realiza el software PGP del destinatario, pero presentaremos los pasos aproximados para darte una idea de lo que realmente está sucediendo.
Primero, se usa una función hash en el mensaje que se recibió. Esto proporciona el resumen del mensaje del correo electrónico en su forma actual.
El siguiente paso es calcular el resumen del mensaje original a partir de la firma digital que se envió. La clave pública del remitente es descifrar la firma digital. Esto da el resumen del mensaje exactamente como estaba cuando fue firmado por el remitente.
Para determinar si el mensaje es auténtico y no ha sido manipulado, todo lo que el programa del destinatario tiene que hacer es comparar el resumen del mensaje del correo electrónico que recibió con el resumen del mensaje que derivó de la firma digital.
Si el mensaje ha sido alterado incluso por un carácter o un signo de puntuación, los resúmenes del mensaje serán completamente diferentes. Cuando los resúmenes del mensaje no se alinean, el destinatario sabrá que hay un problema con el mensaje.
Si los dos resúmenes de mensajes no son idénticos, hay tres posibles culpables:
- La clave pública utilizada para descifrar la firma digital no estaba vinculada a la clave privada que se utilizó para cifrarla. Esto significa que el remitente puede no ser quien dice ser.
- La firma digital puede ser falsa.
- El mensaje ha cambiado desde que se firmó.
Si recibes un mensaje firmado digitalmente y los resúmenes no se alinean, debes ser escéptico. Puede ser un error inocente porque se ha utilizado accidentalmente la clave pública incorrecta, pero también puede ser un mensaje fraudulento o alterado.
La red de la confianza
¿Cómo sabes que una clave pública pertenece realmente a la persona que dice que pertenece? ¿No podría alguien simplemente publicar su propia clave pública y afirmar que es el Papa en un intento de acceder a todos tus correos electrónicos entrantes cifrados con PGP (asumiendo que es lo suficientemente experto en tecnología como para usar PGP)?
Afortunadamente, todo esto se pensó con anticipación y se implementaron soluciones. De lo contrario, algo tan simple socavaría por completo todo el sistema. Para prevenir este tipo de actividad, se desarrolló la web de confianza.
La red de confianza creció como una forma de verificar que cada clave pública PGP y la identificación de usuario están realmente conectadas a la persona u organización que se dice que representan. La web de un fideicomiso conecta la entidad de la vida real con la clave pública mediante el uso de un tercero para firmar el certificado digital PGP del usuario. ¿La mejor parte? Lo hace todo sin una autoridad central que pueda colapsar o corromperse.
Un certificado digital contiene la información de identificación del usuario, su clave pública y una o más firmas digitales. Si conoces a un usuario de PGP personalmente, puedes confirmar que su clave pública está vinculada a su identidad real. Puedes depositar tu confianza en ellos y firmar digitalmente su certificado, que demuestra que al menos una persona avala su identidad. Ellos también pueden hacer lo mismo por ti.
Si ambos conocen a un nuevo usuario de PGP cada uno y firman digitalmente sus certificados para verificar sus identidades, comienzan a construir una pequeña red, donde los cuatro pueden confiar en los vínculos entre las claves públicas y las identidades, según la confianza de cada persona.
A lo largo del tiempo se crea una red de confianza interconectada, con muchas personas que responden entre sí con firmas digitales que verifican su propiedad de una clave pública.
A veces puede resultar difícil para los nuevos usuarios encontrar a alguien que firme sus certificados y verifique la relación entre ellos y su clave pública. Puede ser particularmente desafiante si no conocen a otros usuarios de PGP en la vida real.
Esto se ha resuelto parcialmente mediante fiestas de firma de claves, que son reuniones de la vida real en las que los usuarios pueden evaluar si las claves pertenecen a la persona que se las atribuye.
Hay diferentes niveles de confianza, incluidos total y parcial. Aquellos que tienen muchas firmas digitales en sus certificados que representan plena confianza se consideran mucho más confiables que aquellos con solo un par de firmas de confianza parcial.
La web de confianza permite a los usuarios evaluar por sí mismos si confían en el certificado digital de un posible corresponsal. Si el mensaje que quieren enviar es extremadamente delicado, podrían decidir que el riesgo es demasiado grande para enviarlo a alguien que solo tiene una confianza parcial.
Autoridades de certificación
Los certificados digitales PGP no son la única forma en que las identidades se pueden vincular a sus claves públicas. También se pueden utilizar certificados X.509. Este es un estándar de certificado común que también se utiliza para otros fines. La principal diferencia entre los certificados PGP y los certificados X.509 es que cualquier persona puede firmar los certificados PGP, mientras que un certificado X.509 debe estar firmado por lo que se conoce como una autoridad de certificación.
Los certificados PGP también pueden ser firmados por autoridades de certificación, pero los certificados X.509 solo pueden ser firmados por autoridades de certificación o sus representantes. Los certificados X.509 también llevan una variedad de información de identificación del propietario junto con la clave pública, pero también tienen una fecha de inicio y una fecha de caducidad.
A diferencia de los certificados PGP, que un usuario puede crear por sí mismo, los certificados X.509 solo están disponibles solicitándolos a una autoridad de certificación. Estos certificados también tienen una única firma digital del emisor, a diferencia de las muchas firmas que un certificado PGP puede tener de otros usuarios.
Cifrar archivos adjuntos
PGP también se puede utilizar para cifrar tus archivos adjuntos. Hay un par de formas de hacer esto, pero dependerá de su implementación. En general, el mejor método es con PGP / MIME, que cifrará los archivos adjuntos y el cuerpo del mensaje juntos. Esto evita la fuga de metadatos que se produce si cada segmento se cifra por separado.
¿Es seguro el cifrado PGP?
En lo que respecta a su seguridad, las versiones actuales de PGP son esencialmente herméticas, siempre que se utilicen correctamente. Existen algunas vulnerabilidades teóricas en las versiones anteriores, pero no se sabe públicamente que las versiones actuales tengan algún medio de romperse con la tecnología contemporánea y las últimas técnicas de criptoanálisis. La probabilidad de que alguien tenga un medio secreto para romper PGP también es insignificante, por lo que es bastante seguro usar PGP con confianza, siempre que lo uses correctamente.
A medida que se desarrolló PGP, se agregaron más algoritmos de cifrado para reforzar su seguridad. Siempre que se han descubierto pequeñas vulnerabilidades, los desarrolladores las han parcheado rápidamente. La mayor preocupación no es que se rompa el cifrado PGP, ya que sería impracticablemente difícil para cualquier estado criminal o nación hacerlo.
En cambio, es mucho más probable que un atacante utilice otros medios para descubrir tus comunicaciones. Esto podría incluir el uso de un registrador de teclas para averiguar tu clave privada o saquear tu casa para ver si tu clave privada se ha escrito en algún lugar.
A pesar de esto, ha habido algunas vulnerabilidades en varias implementaciones de OpenPGP. A principios de 2018, se encontró una debilidad que podría usarse para mostrar el texto sin formato de los correos electrónicos que se habían cifrado. Apodado EFAIL, implica que los atacantes intercepten primero el correo electrónico cifrado de un objetivo y lo modifiquen para hacer que el cliente de correo electrónico del destinatario final envíe el mensaje al atacante una vez que haya sido descifrado.
El atacante en realidad no descifra el correo electrónico por sí mismo y esta técnica no implica romper el cifrado PGP. A pesar de esto, los usuarios de PGP deben ser conscientes y tomar las medidas adecuadas para mitigar los riesgos.
Cualquiera que use PGP debe cambiar la configuración en su cliente de correo electrónico para evitar la carga automática de imágenes externas y otro contenido. También deben desactivar JavaScript y HTML cuando vean correos electrónicos encriptados. Con estas medidas implementadas, el cifrado PGP sigue siendo seguro de usar.
¿Cuáles son las limitaciones del cifrado PGP?
Si bien el cifrado PGP es una herramienta importante en el arsenal de seguridad, como con cualquier otra defensa, está lejos de ser perfecto.
Usabilidad
Una de sus principales desventajas es que no es exactamente fácil de usar, especialmente en comparación con la mayoría de las aplicaciones en las que pasamos nuestro día a día.
Esto presenta desafíos para aquellos que quieren proteger sus correos electrónicos, pero carecen de un alto grado de conocimientos técnicos. Puede ser una de esas cosas que simplemente tienen que aprender para mantener sus comunicaciones seguras. De lo contrario, las aplicaciones de mensajería encriptada como Signal podrían adaptarse mejor a sus necesidades.
También ha habido muchas versiones diferentes de PGP a lo largo de los años, cada una con nuevos algoritmos y funciones. Debido a esto, las versiones anteriores de PGP no podrán abrir mensajes que hayan sido encriptados por sistemas más nuevos. Incluso con la clave correcta, todavía no funcionará, porque usan diferentes algoritmos.
Esto significa que es importante asegurarse de que tanto el remitente como el destinatario sepan qué versión y configuración se están utilizando, para que puedan decidirse por un sistema que funcione para ellos.
PGP no es anónimo de forma predeterminada
Los usuarios de PGP deben saber que no cifra todos los aspectos de sus correos electrónicos. Cifra el texto del cuerpo, pero cualquiera que intercepte los correos electrónicos de PGP aún podrá ver la línea de asunto y los detalles del mensaje, así como información sobre el remitente y el destinatario.
Si bien el mensaje en sí puede ser privado, la interacción no es anónima. Los usuarios deben considerar esto al evaluar si es la herramienta adecuada para el trabajo. Para empezar, deben evitar poner algo demasiado específico en la línea de asunto.
Conclusión
Los aspectos básicos del cifrado PGP son un poco complicados, pero es una garantía importante para asegurar el correo electrónico. Quienes lo usan deben comprender cómo funciona, al menos en un sentido amplio. De lo contrario, pueden hacer suposiciones incorrectas o usarlo de manera inapropiada, poniendo en peligro el contenido de sus mensajes y quizás incluso sus vidas.
Como resumen rápido, el cifrado PGP aprovecha una variedad de técnicas para proporcionar comunicaciones por correo electrónico seguras y privadas. Estos incluyen compresión, cifrado de clave pública, cifrado simétrico, firmas digitales y la red de confianza.
Juntos, estos permiten a sus usuarios enviar mensajes cifrados de manera eficiente. También les permite comprobar si un mensaje es auténtico y no ha sido alterado. El estándar OpenPGP se creó para que todos pudieran usarlo de forma gratuita, lo que ayudó a convertirlo en la forma más extendida de cifrado de correo electrónico. Si bien el cifrado PGP no es perfecto, siempre que conozcas sus limitaciones, es una de las formas más seguras de comunicarse en línea.