Criptografía (13) PGP
---- La combinación perfecta de criptografía
?PGP fue escrito en 1990 por Philip Zimmermann. PGP es un software criptográfico escrito por Philip Zimmermann en 1990 y todavía se utiliza ampliamente en el mundo.
PGP se ejecuta en Windows, Mac OS X, Linux y muchas otras plataformas, tanto en versión comercial como gratuita. Además, GNU ha escrito un software gratuito llamado GnuPG (GNU Privacy Guard) basado en la especificación OpenGPG (RFC4880).
?El software aquí descrito se basa en PGP Command Line User Guide 10.3 y GnuPG 2.1.4. En términos de funciones detalladas y algoritmos admitidos, PGP y GunPG son diferentes, y también existen diferencias entre las diferentes versiones. Aquí se presenta el PGP unificado.
OpenPGP es una especificación estándar que define texto criptográfico y formatos de firma digital (RFC1991, RFC2440, RFC4880, RFC5581, RFC6637).
El formato de información de PGP se definió en RFC1991 en 1996, se agregó soporte para RSA y DSA en RFC4880 en 2007, y se agregó soporte para criptografía de curva elíptica (ECC) en RFC6637 en 2012, y también proporciona soporte para tres algoritmos de cifrado basados en las curvas P-256, P-384 y P-521. Curva elíptica DSA e intercambio de claves de curva elíptica Diffie-Hellman.
Se ha agregado una tabla que compara los equilibrios de fortaleza criptográfica al RFC6637. Por ejemplo, en esta tabla se puede ver que cuando elegimos un algoritmo de cifrado de curva elíptica de 256 bits, debemos elegir en consecuencia un algoritmo hash de 256 bits y un algoritmo de cifrado simétrico con una longitud de clave de 128 bits.
GNU Privacy Guard (GnuPG, GPG) es un software de cifrado basado en el estándar OpenPGP que admite cifrado, firmas digitales, administración de claves, S/MIME, ssh y muchas otras funciones. GnuPG en sí es un software de ataque de línea de comandos, pero a menudo se integra en otras aplicaciones.
GnuPG se divide en tres series: versión estable, versión moderna y versión clásica.
?Omitido
?El proceso de cifrado de PGP es como se muestra en la figura. La información se cifra a través del criptosistema híbrido y luego se convierte en datos de información (datos de texto).
?El contenido aquí es básicamente el mismo que la estructura del criptosistema híbrido mencionado anteriormente, la diferencia es que también incluye mensajes comprimidos y conversión de texto binario-> (pasos de conversión a ASCII radix-64). .
?En la imagen de arriba, el mensaje se fusiona con la firma correspondiente y finalmente se convierte en datos del mensaje (datos de texto). Por cierto, convertir datos de mensajes a datos de texto es opcional en PGP.
?La figura anterior muestra el proceso de generar una firma digital para un mensaje, comprimir y cifrar el mensaje y luego fusionar los resultados de los dos en datos del mensaje (datos de texto). En PGP puede elegir si desea convertir los datos del mensaje en datos de texto.
?Al utilizar PGP, es muy importante confirmar que la clave pública proporcionada realmente pertenece a la persona correcta, ya que la clave pública puede reemplazarse mediante un ataque de intermediario.
Un certificado es una firma digital aplicada a una clave pública por una autoridad de certificación. La legitimidad de la clave pública se puede confirmar verificando la firma digital.
?Sin embargo, PGP no utiliza una autoridad de certificación, sino que utiliza un método llamado red de confianza. En este método, los usuarios de PGP firman digitalmente las claves públicas de los demás.
El significado de la red de confianza es "no depender de las autoridades de certificación", sino establecer una relación de confianza entre todos. En otras palabras, permite a los usuarios decidir por sí mismos en qué claves públicas confiar.
El contenido principal de esta serie proviene de la tercera edición de "Criptozoología Ilustrada"
Solo soy un portador de conocimiento
Las ilustraciones de este artículo son del libro original.