GNU Privacy Guard

GNU Privacy Guard o GPG
Información sobre la plantilla
GnuPG.jpg
Programa cuya finalidad es proteger la información distribuida a través de Internet mediante el uso de Criptografía asimétrica
Última versión estable2.0.9
Plataformas soportadasMultiplataforma
LicenciaGNU General Public License
Sitio web
Sitio web oficial de GPG

GNU Privacy Guard o GPG es una herramienta que se usa para las comunicaciones seguras; es un reemplazo gratuito de la tecnología de encriptación PGP (Pretty Good Privacy, una aplicación de encriptación muy conocida). Con GnuPG, puede codificar sus datos y su correspondencia y autentificar ésta con una firma digital. GnuPG es también capaz de descifrar y verificar PGP 5.x.

Debido a que la herramienta GnuPG es compatible con otros sistemas estándares, su correspondencia segura será también compatible con otras aplicaciones de correo electrónico en otros sistemas operativos, tales como Windows y Macintosh.

Características

  • Reemplaza totalmente a PGP.
  • No usa algoritmos patentados.
  • Sujeto a la licencia GPL, escrito desde cero.
  • Se puede usar como un programa de filtrado.
  • Implementación total de OpenPGP.
  • Mejor funcionalidad que PGP y algunas mejoras en seguridad.
  • Descifra y verifica mensajes de PGP 5.x.
  • Implementa los siguientes algoritmos: ElGamal (firma y cifrado), DSA, 3DES, Blowfish, Twofish, CAST5, MD5, SHA-1, RIPE-MD-160, y TIGER.
  • Fácil implementación de nuevos algoritmos por medio de módulos de extensión.
  • El identificador de usuario se genera en el formato estándar.
  • Implementación de fecha de caducidad.
  • Soporte para castellano, ruso, portugués, polaco, italiano, alemán, francés, e inglés.
  • Sistema de ayuda (sobre la marcha).
  • Receptores opcionales de mensajes anónimos.
  • Soporte integrado para servidores de claves HKP (wwwkeys.pgp.net).

Usos

Actualmente hay varias aplicaciones gráficas que utilizan recursos de GPG. Por ejemplo, ha sido integrado dentro de Kmail y Evolution, también hay un plugin llamado Enigmail que se integra con Mozilla y Thunderbird que trabajan en Windows, GNU/Linux y otros sistemas operativos. Debido a que los plugins no forman parte del mecanismo de GPG y no están especificados en los estándares OpenPGP, ni sus respectivos desarrolladores están vinculados con los proyectos de plugins, se podría pensar que las ventajas de seguridad de GPG puedan estar comprometidas o incluso perdiendo su efectividad como resultado de esta falta de coordinación y apoyo, pero al ser las herramientas de código abierto o scripts interpretados (como en el caso de los plugins en Thunderbird), se garantiza un funcionamiento fiable con la herramienta GPG.

GPG también puede ser compilado en otras plataformas como Mac OS X y Windows. En Mac OS X hay portada una aplicación libre llamada MacGPG, que ha sido adaptada para usar el ambiente del usuario y sus definiciones de clases nativas. La compilación cruzada no es un ejercicio trivial, por lo menos en parte debido a que las provisiones de seguridad cambian con el sistema operativo y su adaptación a menudo se vuelve difícil, pero los compiladores de alta calidad deben producir ejecutables que interactúen correctamente con otras implementaciones GPG.

Funcionamiento

GPG cifra los mensajes usando pares de claves individuales asimétricas generadas por los usuarios. Las claves públicas pueden ser compartidas con otros usuarios de muchas maneras, un ejemplo de ello es depositándolas en los servidores de claves. Siempre deben ser compartidas cuidadosamente para prevenir falsas identidades por la corrupción de las claves públicas. También es posible añadir una firma digital criptográfica a un mensaje, de esta manera la totalidad del mensaje y el remitente pueden ser verificados en caso de que se desconfíe de una correspondencia en particular.

GnuPG también soporta algoritmos de cifrado simétricos, por ejemplo CASTS.

GPG no usa algoritmos de software que están restringidos por patentes, entre estos se encuentra el algoritmo de cifrado IDEA que está presente en PGP casi desde sus inicios. En su lugar usa una serie de algoritmos no patentados como ElGamal, CAST5, Triple DES (3DES), AES y Blowfish. También es posible usar IDEA en GPG descargando un plugin extra, sin embargo este puede requerir una licencia para usuarios de algunos países en donde esté patentada IDEA.

GPG es un software de cifrado híbrido que usa una combinación convencional de criptografía de claves simétricas para la rapidez y criptografía de claves públicas para el fácil compartimiento de claves seguras, típicamente usando recipientes de claves públicas para cifrar una clave de sesión que es usada una vez. Este modo de operación es parte del estándar OpenPGP y ha sido parte del PGP desde su primera versión.

Problemas

El estándar OpenPGP especifica varios métodos de mensajes con firmas digitales. Debido a un error al intentar mejorar la eficiencia de uno de los métodos, se introdujo una vulnerabilidad de seguridad (Nguyen 2004) que afectó a un único método de mensajes firmado digitalmente utilizado en algunas versiones de GPG (desde la 1.0.2 hasta la 1.2.3, con menos de 1.000 claves listadas en los servidores de claves). Dicha vulnerabilidad ha sido corregida a partir de la versión 1.2.4 de GPG. El episodio ilustra la dificultad de realizar implementaciones correctas de algoritmos criptográficos, protocolos e incluso criptosistemas.

GPG es un sistema en línea de comandos. Diferentes implementaciones gráficas están disponibles pero sólo algunas tienen implementadas todas sus características (por ejemplo: borrado de ID, usuarios o firmas). Debido a que todas las instrucciones deben ser pasadas a la línea de comandos, rápidamente llegan a dificultar el uso correcto de aspectos no triviales del programa. El trabajo sobre una versión de librería está en progreso.

Fuentes