stringtranslate.com

Guardia de privacidad de GNU

GNU Privacy Guard ( GnuPG o GPG ) es un reemplazo de software libre para el paquete de software criptográfico PGP de Symantec . El software cumple con RFC  4880, la especificación de seguimiento de estándares IETF de OpenPGP . Las versiones modernas de PGP son interoperables con GnuPG y otros sistemas compatibles con OpenPGP v4. [4]

En noviembre de 2023 se produjeron dos borradores destinados a actualizar la especificación OpenPGP v4 de 2007 (RFC4880), lo que finalmente dio como resultado el estándar propuesto RFC 9580 en julio de 2024. La propuesta de los desarrolladores de GnuPG se llama LibrePGP. [5]

GnuPG es parte del Proyecto GNU y recibió una importante financiación del gobierno alemán en 1999. [6]

Descripción general

GnuPG es un programa de software de cifrado híbrido porque utiliza una combinación de criptografía de clave simétrica convencional para mayor velocidad y criptografía de clave pública para facilitar el intercambio seguro de claves, normalmente utilizando la clave pública del destinatario para cifrar una clave de sesión que se utiliza únicamente una vez. Este modo de funcionamiento forma parte del estándar OpenPGP y ha formado parte de PGP desde su primera versión.

La serie GnuPG 1.x utiliza una biblioteca criptográfica integrada, mientras que la serie GnuPG 2.x la reemplaza con Libgcrypt .

GnuPG cifra mensajes utilizando pares de claves asimétricas generadas individualmente por los usuarios de GnuPG. Las claves públicas resultantes se pueden intercambiar con otros usuarios de diversas formas, como servidores de claves de Internet . Siempre deben intercambiarse con cuidado para evitar la suplantación de identidad corrompiendo las correspondencias de identidad de clave pública ↔ "propietario". También es posible agregar una firma digital criptográfica a un mensaje, de modo que se pueda verificar la integridad del mensaje y el remitente, si una correspondencia particular en la que se confía no ha sido corrompida.

GnuPG también admite algoritmos de cifrado simétrico . Por defecto, GnuPG usa el algoritmo simétrico AES desde la versión 2.1, [7] CAST5 se usó en versiones anteriores. GnuPG no utiliza software o algoritmos patentados o restringidos de otro modo. En cambio, GnuPG utiliza una variedad de otros algoritmos no patentados. [8]

Durante mucho tiempo no admitió el algoritmo de cifrado IDEA utilizado en PGP. De hecho, era posible utilizar IDEA en GnuPG descargando un complemento; sin embargo, esto podría requerir una licencia para algunos usos en los países en los que IDEA estaba patentada. A partir de las versiones 1.4.13 y 2.0.20, GnuPG admite IDEA porque la última patente de IDEA expiró en 2012. El soporte de IDEA tiene como objetivo "deshacerse de todas las preguntas de las personas que intentan descifrar datos antiguos o migrar claves de PGP". to GnuPG", [9] y por lo tanto no se recomienda su uso regular.

Las versiones más recientes de GnuPG 2.x (la serie "moderna" y ahora obsoleta "estable") exponen la mayoría de las funciones y algoritmos criptográficos que proporciona Libgcrypt (su biblioteca de criptografía), incluido el soporte para criptografía de curva elíptica (ECDH, ECDSA y EdDSA) [ 10] en la serie "moderna" (es decir, desde GnuPG 2.1).

Algoritmos

A partir de las versiones 2.3 o 2.2, GnuPG admite los siguientes algoritmos:

Clave pública
RSA , ElGamal , DSA , ECDH ( cv25519 , cv448 , [c] nistp256, nistp384, nistp521 , BrainpoolP256r1, BrainpoolP384r1, BrainpoolP512r1 , secp256k1), ECDSA (nistp256, nistp384, nistp521, BrainpoolP2 56r1, BrainpoolP384r1, BrainpoolP512r1, secp256k1), EdDSA (ed25519 , edición 448 [c] )
Cifrar
3DES , IDEA (para compatibilidad con versiones anteriores), CAST5 , Blowfish , Twofish , AES-128, AES-192, AES-256 , Camellia-128, -192 y -256
Picadillo
MD5 , SHA-1 , RIPEMD-160 , SHA-256, SHA-384, SHA-512, SHA-224
Compresión
Sin comprimir, ZIP , ZLIB , BZIP2

Historia

GnuPG fue desarrollado inicialmente por Werner Koch . [11] [12] La primera versión de producción, la versión 1.0.0, fue lanzada el 7 de septiembre de 1999, casi dos años después del primer lanzamiento de GnuPG (versión 0.0.0). [13] [11] El Ministerio Federal Alemán de Economía y Tecnología financió la documentación y la adaptación a Microsoft Windows en 2000. [12]

GnuPG es un sistema compatible con el estándar OpenPGP, por lo que la historia de OpenPGP es importante; fue diseñado para interoperar con PGP , un programa de cifrado de correo electrónico diseñado y desarrollado inicialmente por Phil Zimmermann . [14] [15]

El 7 de febrero de 2014 se cerró un esfuerzo de financiación colectiva de GnuPG, que recaudó 36.732 € para un nuevo sitio web y mejoras de infraestructura. [16]

Sucursales

Desde el lanzamiento de un GnuPG 2.3 estable, a partir de la versión 2.3.3 en octubre de 2021, se mantienen activamente tres ramas estables de GnuPG: [17]

Antes de GnuPG 2.3, se mantenían activamente dos ramas estables de GnuPG:

No se pueden instalar diferentes versiones de GnuPG 2.x (por ejemplo, de las ramas 2.2 y 2.0) al mismo tiempo. Sin embargo, es posible instalar una versión "clásica" de GnuPG (es decir, de la rama 1.4) junto con cualquier versión de GnuPG 2.x. [10]

Antes del lanzamiento de GnuPG 2.2 ("moderno"), se recomendaba para uso general la ahora obsoleta rama "estable" (2.0), lanzada inicialmente el 13 de noviembre de 2006. [20] Esta rama alcanzó su fin de vida en diciembre 31, 2017; [21] Su última versión es la 2.0.31, lanzada el 29 de diciembre de 2017. [22]

Antes del lanzamiento de GnuPG 2.0, todas las versiones estables se originaban en una única rama; es decir, antes del 13 de noviembre de 2006, no se mantenían múltiples ramas de versión en paralelo. Estas ramas de versiones anteriores, secuencialmente sucesivas (hasta 1.4), fueron:

(Tenga en cuenta que antes del lanzamiento de GnuPG 2.3.0, las ramas con un número de versión menor impar (por ejemplo, 2.1, 1.9, 1.3) eran ramas de desarrollo que conducían a una rama de versión estable con un número de versión "+ 0.1" superior (por ejemplo, 2.2, 2.0). , 1.4); por lo tanto, las ramas 2.2 y 2.1 pertenecen a la serie "moderna", 2.0 y 1.9 a la serie "estable", mientras que las ramas 1.4 y 1.3 pertenecen a la serie "clásica".

Con el lanzamiento de GnuPG 2.3.0, esta nomenclatura se modificó para estar compuesta por una rama "estable" y "LTS" de la serie "moderna", más 1.4 como la última rama "clásica" mantenida. También tenga en cuenta que los números de versiones menores pares o impares ya no indican una rama de versión estable o de desarrollo).

Plataformas

Ejemplo de uso de GnuPG: Como clave de firma de repositorio de software para openSUSE (con ZYpp )

Aunque el programa GnuPG básico tiene una interfaz de línea de comandos , existen varias interfaces que le proporcionan una interfaz gráfica de usuario . Por ejemplo, el soporte de cifrado GnuPG se ha integrado en KMail y Evolution , los clientes de correo electrónico gráficos que se encuentran en KDE y GNOME , los escritorios Linux más populares . También hay interfaces gráficas GnuPG, por ejemplo Seahorse para GNOME y KGPG y Kleopatra para KDE.

GPGTools proporciona una serie de interfaces para la integración del cifrado y la administración de claves en el sistema operativo , así como instalaciones de GnuPG a través de paquetes de instalación [26] para macOS . GPG Suite [26] instala todas las aplicaciones OpenPGP relacionadas (GPG Keychain), complementos ( GPG Mail ) y dependencias (MacGPG), junto con los servicios GPG (integración en el menú de servicios de macOS) para usar el cifrado basado en GnuPG.

Las aplicaciones de mensajería instantánea como Psi y Fire pueden proteger mensajes automáticamente cuando GnuPG está instalado y configurado. El software basado en web como Horde también lo utiliza. La extensión multiplataforma Enigmail proporciona soporte GnuPG para Mozilla Thunderbird y SeaMonkey . De manera similar, Enigform proporciona soporte GnuPG para Mozilla Firefox . FireGPG se suspendió el 7 de junio de 2010. [27]

En 2005, g10 Code GmbH e Intevation GmbH lanzaron Gpg4win , un paquete de software que incluye GnuPG para Windows, GNU Privacy Assistant y complementos GnuPG para Windows Explorer y Outlook . Estas herramientas están incluidas en un instalador estándar de Windows, lo que facilita la instalación y el uso de GnuPG en sistemas Windows. [28]

Vulnerabilidades

El estándar OpenPGP especifica varios métodos para firmar mensajes digitalmente . En 2003, debido a un error en un cambio en GnuPG destinado a hacer uno de esos métodos más eficiente, se introdujo una vulnerabilidad de seguridad. [29] Afectó sólo a un método de firma digital de mensajes, sólo para algunas versiones de GnuPG (1.0.2 a 1.2.3), y había menos de 1000 claves de este tipo enumeradas en los servidores de claves. [30] La mayoría de las personas no utilizaron este método y, en cualquier caso, se les disuadió de hacerlo, por lo que el daño causado (si lo hubo, ya que ninguno se ha informado públicamente) parece haber sido mínimo. La compatibilidad con este método se eliminó de las versiones de GnuPG publicadas después de este descubrimiento (1.2.4 y posteriores).

A principios de 2006 se descubrieron dos vulnerabilidades más; el primero es que los usos programados de GnuPG para la verificación de firmas pueden dar lugar a falsos positivos , [31] el segundo es que los mensajes no MIME eran vulnerables a la inyección de datos que, si bien no estaban cubiertos por la firma digital, se informarían como parte de el mensaje firmado. [32] En ambos casos, se pusieron a disposición versiones actualizadas de GnuPG en el momento del anuncio.

En junio de 2017, Bernstein, Breitner y otros descubrieron una vulnerabilidad (CVE-2017-7526) dentro de Libgcrypt : una biblioteca utilizada por GnuPG, que permitía una recuperación completa de la clave para RSA-1024 y aproximadamente más de 1/8 de RSA- 2048 llaves. Este ataque de canal lateral aprovecha el hecho de que Libgcrypt utilizó un método de ventanas deslizantes para la exponenciación, lo que conduce a la fuga de bits exponenciales y a la recuperación completa de la clave. [33] [34] Nuevamente, una versión actualizada de GnuPG estuvo disponible en el momento del anuncio.

En octubre de 2017, se anunció la vulnerabilidad ROCA que afecta a las claves RSA generadas por los tokens YubiKey 4, que a menudo se utilizan con PGP/GPG. Se descubrió que muchas claves PGP publicadas eran susceptibles. [35]

Alrededor de junio de 2018 se anunciaron los ataques de SigSpoof . Esto permitió a un atacante falsificar firmas digitales de manera convincente. [36] [37]

En enero de 2021, se lanzó Libgcrypt 1.9.0, que contenía un error grave que era fácil de explotar. Se publicó una solución 10 días después en Libgcrypt 1.9.1. [38]

Ver también

Notas

  1. ^ GPL-3.0 o posterior desde 2007-07-04 para 2.x y 2007-10-23 para 1.x.
  2. ^ GPL-2.0 o posterior desde el 18 de noviembre de 1997 hasta el 4 de julio de 2007 para 2.x y el 23 de octubre de 2007 para 1.x.
  3. ^ ab solo disponible en 2.3

Referencias

  1. ^ Werner Koch (12 de marzo de 2024). "[Anuncio] Lanzamiento de GnuPG 2.4.5". Archivado desde el original el 12 de marzo de 2024 . Consultado el 12 de marzo de 2024 .
  2. ^ "Cambios notables en la versión 2.2.43". 16 de abril de 2024 . Consultado el 27 de mayo de 2024 .
  3. ^ "GnuPG 2.5.0 lanzado para pruebas públicas". 8 de julio de 2024. Archivado desde el original el 9 de julio de 2024 . Consultado el 9 de julio de 2024 .
  4. ^ "Guardia de privacidad de Gnu". GnuPG.org. Archivado desde el original el 29 de abril de 2015 . Consultado el 26 de mayo de 2015 .
  5. ^ "Un cisma en el mundo OpenPGP". Noticias semanales de Linux . Consultado el 9 de diciembre de 2023 .
  6. ^ "Bundesregierung fördert Código abierto" (en alemán). Heise en línea. 1999-11-15. Archivado desde el original el 12 de octubre de 2013 . Consultado el 24 de julio de 2013 .
  7. ^ "[Anuncio] La beta quizás final de GnuPG 2.1". Archivado desde el original el 2 de mayo de 2019 . Consultado el 28 de marzo de 2019 .
  8. ^ "Características de GnuPG". Archivado desde el original el 4 de octubre de 2009 . Consultado el 1 de octubre de 2009 .
  9. ^ Koch, Werner (21 de diciembre de 2012). "Lanzado GnuPG 1.4.13" (Lista de correo). usuarios de gnupg. Archivado desde el original el 12 de febrero de 2013 . Consultado el 19 de mayo de 2013 .
  10. ^ abc Koch, Werner (6 de noviembre de 2014). "[Anuncio] Lanzamiento de GnuPG 2.1.0" moderno "". gnupg.org. Archivado desde el original el 6 de noviembre de 2014 . Consultado el 6 de noviembre de 2014 .
  11. ^ ab Angwin, Julia (5 de febrero de 2015). "El software de cifrado de correo electrónico del mundo depende de un tipo que se está arruinando". ProPública . Archivado desde el original el 6 de febrero de 2015 . Consultado el 6 de febrero de 2015 .
  12. ^ ab Wayner, Peter (19 de noviembre de 1999). "Subvención de premios de Alemania para el cifrado". Los New York Times . Archivado desde el original el 25 de agosto de 2014 . Consultado el 8 de agosto de 2014 .
  13. ^ ab "Notas de la versión". GnuPG. Archivado desde el original el 9 de febrero de 2014 . Consultado el 30 de enero de 2014 .
  14. ^ "Guardia de privacidad de Gnu". OpenPGP.org. Archivado desde el original el 27 de febrero de 2014 . Consultado el 26 de febrero de 2014 .
  15. ^ "Dónde conseguir PGP". Philzimmermann.com. Archivado desde el original el 26 de febrero de 2014 . Consultado el 26 de febrero de 2014 .
  16. ^ "GnuPG: nuevo sitio web e infraestructura". goteo.org. Archivado desde el original el 30 de marzo de 2014 . Consultado el 9 de marzo de 2014 .
  17. ^ "Lanzamiento de GnuPG 2.3.3".
  18. ^ Koch, Werner (28 de agosto de 2017). "[Anuncio] Lanzamiento de GnuPG 2.2.0". gnupg-announce (lista de correo). Archivado desde el original el 29 de agosto de 2017 . Consultado el 21 de septiembre de 2017 .
  19. ^ Koch, Werner (16 de diciembre de 2004). "[Anuncio] Lanzamiento de GnuPG estable 1.4". gnupg.org. Archivado desde el original el 3 de enero de 2005 . Consultado el 16 de diciembre de 2004 .
  20. ^ Koch, Werner (13 de noviembre de 2006). "[Anuncio] Lanzamiento de GnuPG 2.0". gnupg.org. Archivado desde el original el 14 de febrero de 2014 . Consultado el 30 de enero de 2014 .
  21. ^ Koch, Werner (23 de enero de 2017). "[Anuncio] Lanzamiento de GnuPG 2.1.18". gnupg.org. Archivado desde el original el 11 de febrero de 2017 . Consultado el 4 de febrero de 2017 .
  22. ^ "GnuPG 2.0.31". 2017-12-29 . Consultado el 30 de diciembre de 2017 .
  23. ^ Koch, Werner (6 de septiembre de 2002). "[Anuncio] Lanzamiento de GnuPG 1.2". gnupg.org. Archivado desde el original el 17 de junio de 2014 . Consultado el 6 de noviembre de 2014 .
  24. ^ Koch, Werner (26 de agosto de 2004). "[Anuncio] Lanzamiento de GnuPG 1.2.6". gnupg.org. Archivado desde el original el 17 de junio de 2014 . Consultado el 6 de noviembre de 2014 .
  25. ^ Koch, Werner (30 de abril de 2002). "[Anuncio] Lanzamiento de GnuPG 1.0.7". gnupg.org. Archivado desde el original el 17 de junio de 2014 . Consultado el 6 de noviembre de 2014 .
  26. ^ ab "Suite GPG". GPGHerramientas . Consultado el 24 de diciembre de 2017 .
  27. ^ "Blog de desarrolladores de FireGPG". 7 de junio de 2010. Archivado desde el original el 27 de julio de 2013 . Consultado el 24 de julio de 2013 .
  28. ^ "Gpg4win - Acerca de Gpg4win". gpg4win.org . Consultado el 23 de marzo de 2021 .
  29. ^ Nguyen, Phong Q. "¿Podemos confiar en el software criptográfico? Defectos criptográficos en GNU Privacy Guard v1.2.3". EUROCRIPTA 2004: 555–570. Archivado desde el original el 4 de diciembre de 2017 . Consultado el 23 de agosto de 2019 .
  30. ^ Koch, Werner (27 de noviembre de 2003). "Las claves de firma ElGamal de GnuPG están comprometidas". Archivado desde el original el 18 de marzo de 2004 . Consultado el 14 de mayo de 2004 .
  31. ^ Koch, Werner (15 de febrero de 2006). "Verificación de firmas falso positivo en GnuPG". Archivado desde el original el 17 de junio de 2006 . Consultado el 23 de mayo de 2006 .
  32. ^ Koch, Werner (9 de marzo de 2006). "GnuPG no detecta la inyección de datos sin firmar". Archivado desde el original el 5 de mayo de 2006 . Consultado el 23 de mayo de 2006 .
  33. ^ Edge, Jake (5 de julio de 2017). "Romper Libgcrypt RSA a través de un canal lateral". LWN.net . Archivado desde el original el 28 de julio de 2017 . Consultado el 28 de julio de 2017 .
  34. ^ "Deslizándose hacia la derecha hacia el desastre: las ventanas corredizas de izquierda a derecha tienen fugas" (PDF) . Archivado (PDF) desde el original el 30 de junio de 2017 . Consultado el 30 de junio de 2017 .
  35. ^ El regreso del ataque del calderero: factorización práctica de módulos RSA ampliamente utilizados Archivado el 12 de noviembre de 2017 en Wayback Machine , Matus Nemec, Marek Sys, Petr Svenda, Dusan Klinec, Vashek Matyas, noviembre de 2017
  36. ^ "Un error de PGP de décadas de antigüedad permitió a los piratas informáticos falsificar la firma de cualquier persona". 14 de junio de 2018. Archivado desde el original el 7 de septiembre de 2018 . Consultado el 7 de septiembre de 2018 .
  37. ^ "Pass falla: Simple Password Store sufre un error de suplantación de identidad de GnuPG". El Registro . Archivado desde el original el 30 de junio de 2018 . Consultado el 7 de septiembre de 2018 .
  38. ^ "Un error grave en Libgcrypt, utilizado por GPG y otros, es un montón de problemas y provoca una confusión de parches". Archivado desde el original el 21 de febrero de 2021.

Enlaces externos