Como Funciona PGP
PGP combina algunas de las mejores características de la criptografía simétrica y la criptografía asimétrica. PGP es un criptosistema híbrido.Cuando un usuario emplea PGP para cifrar un texto plano, dicho texto es comprimido. La compresión de los datos ahorra espacio en disco, tiempos de transmisión y, más importante aún, fortalece la seguridad criptográfica. La mayoría de las técnicas de criptoanálisis explotan patrones presentes en el texto plano para craquear el cifrador. La compresión reduce esos patrones en el texto plano, aumentando enormemente la resistencia al criptoanálisis.
Después de comprimir el texto, PGP crea una clave de sesión secreta que solo se empleará una vez. Esta clave es un numero aleatorio generado a partir de los movimientos del ratón y las teclas que se pulsen durante unos segundos con el propósito específico de generar esta clave (el programa nos pedirá que los realicemos cuando sea necesario).
Esta clave de sesión se usa con un algoritmo simétrico convencional (IDEA, 3DES) para cifrar el texto plano.
Una vez que los datos se encuentran cifrados, la clave de sesión se cifra con la clave publica del receptor (criptografía asimétrica).
La clave de sesión cifrada se adjunta al texto cifrado y el conjunto es enviado al receptor.
El descifrado sigue el proceso inverso. El receptor usa su clave privada para recuperar la clave de sesión, que PGP luego usa para descifrar los datos.
La combinación de los dos métodos de cifrado permite aprovechar lo mejor de cada uno. El cifrado simétrico o convencional es mil veces más rápida que la asimétrica de clave pública. La asimétrica de clave pública a su vez provee una solución al problema de la distribución de claves en forma segura.
Las llaves empleadas en el cifrado asimétrica se guardan cifradas protegidas por contraseña en el disco duro. PGP guarda dichas claves en dos archivos separados llamados llaveros; uno para las claves públicas y otro para las claves privadas.
PGP como estándar de Internet
La IETF se ha basado en el diseño de PGP para crear el estándar de Internet OpenPGP. Las últimas versiones de PGP son conformes o compatibles en mayor o menor medida con ese estándar. La compatibilidad entre versiones de PGP y la historia del esfuerzo por estandarizar OpenPGP, se tratan a continuación. Firmas digitalesPGP apoya la autenticación de mensajes y la comprobación de su integridad. Ésta última es usada para descubrir si un mensaje ha sido cambiado luego de ser completado (la propiedad de integridad del mensaje), y la anterior para determinar si realmente fue enviado por la persona/entidad que reclama ser el remitente (una firma digital). En PGP, estas operaciones son usadas por defecto junto con la codificación o cifrado del mensaje, pero pueden ser aplicadas a texto plano también. El remitente usa PGP para crear una firma digital para el mensaje con algoritmos de firma RSA o DSA. Para hacer esto, PGP calcula un picadillo (también llamado resumen o - en inglés - "hash" del mensaje) del texto plano, y luego crea la firma digital de aquel picadillo usando las llaves privadas del remitente.
Seguridad en PGP
Utilizado correctamente, PGP puede proporcionar un gran nivel de seguridad. A diferencia de protocolos de seguridad como SSL, que sólo protege los datos en tránsito (es decir, mientras se transmiten a través de la red), PGP también puede utilizarse para proteger datos almacenados en discos, copias de seguridad, etcétera.PGP Usa una función de 4 claves.