Criptología - PGP (Pretty Good Privacy)


Este proyecto de "Seguridad Bastante Buena" pertenece a Phill Zimmerman quien decidió crearlo en 1991 "por falta de herramientas criptográficas sencillas, potentes, baratas y al alcance del usuario común. Es personal. Es privado. Y no es de interés para nadie más que no sea usted... Existe una necesidad social en crecimiento para esto. Es por eso que lo creé." (1)

Actualmente PGP es la herramienta más popular y fiable para mantener la seguridad y privacidad en las comunicaciones tanto para pequeños usuarios como para grandes empresas.

Funcionamiento de PGP

  1. Anillos de Claves
    Un anillo es una colección de claves almacenadas en un archivo. Cada usuario tiene dos anillos, uno para las claves públicas y otro para las claves privadas.
    Cada una de las claves, además, posee un identificador de usuario, fecha de expiración, versión de PGP y una huella digital única hexadecimal suficientemente corta que permita verificar la autenticidad de la clave.
  2. Codificación de Mensajes
    Como ya se sabe, los algoritmos simétricos de cifrado son más rápidos que los asimétricos. Por esta razón PGP cifra primero el mensaje empleando un algoritmo simétrico con una clave generada aleatoriamente (clave de sesión) y posteriormente codifica la clave haciendo uso de la llave pública del destinatario. Dicha clave es extraída convenientemente del anillo de claves públicas a partir del identificador suministrado por el usuario .
    Nótese que para que el mensaje pueda ser leído por múltiples destinatarios basta con que se incluya en la cabecera cada una de las claves públicas correspondientes.
  3. Decodificación de Mensajes
    Cuando se trata de decodificar el mensaje, PGP simplemente busca en la cabecera las claves públicas con las que está codificado, pide una contraseña para abrir el anillo de claves privadas y comprueba si se tiene una clave que permita decodificar el mensaje.
    Nótese que siempre que se quiere hacer uso de una clave privada, habrá que suministrar la contraseña correspondiente, por lo que si este anillo quedara comprometido, el atacante tendría que averiguar dicha contraseña para descifrar los mensajes.
    No obstante, si el anillo de claves privadas quedara comprometido, es recomendable revocar todas las claves almacenadas y generar otras nuevas.
  4. Compresión de Archivos
    PGP generalmente comprime el texto plano antes de encriptar el mensaje (y lo descomprime después de desencriptarlo) para disminuir el tiempo de cifrado, de transmisión y de alguna manera fortalecer la seguridad del cifrado ante el criptoanálisis que explotan las redundancias del texto plano.
    PGP utiliza rutinas de compresión de dominio público creadas por Gaily-Adler-Wales (basadas en los algoritmos de Liv-Zemple) funcionalmente semejantes a las utilizadas en los softwares comerciales de este tipo.
  5. Algoritmos Utilizados por PGP
    Las diferentes versiones de PGP han ido adoptando diferentes combinación de algoritmos de signatura y cifrado eligiendo entre los estudiados. Las signatura se realizan mediante MD5, SHA-1 y/o RIPE-MD6. Los algoritmos simétricos utilizados pueden ser IDEA, CAST y TDES y los asimétricos RSA y ElGamal.

(1) "Porqué escribí PGP". Declaraciones de Phill Zimmerman. http://www.pgpi.com - http://pgp.org

Con más de 24 años de experiencia compartiendo la mejor información de Seguridad

Contacto