Dell BSAFE , anteriormente conocido como RSA BSAFE , es una biblioteca de criptografía validada por FIPS 140-2 , disponible en C y Java , ofrecida inicialmente por RSA Security , luego transferida a Dell antes de la adquisición de RSA por Symphony Technology Group [1] en 1 de septiembre de 2020. BSAFE era uno de los conjuntos de herramientas de cifrado más comunes antes de que expirara la patente RSA en septiembre de 2000. También contenía implementaciones de los cifrados RC x , siendo el más común RC4 . De 2004 a 2013, el generador de números aleatorios predeterminadoEn la biblioteca había un estándar RNG aprobado por el NIST , ampliamente conocido por ser inseguro desde al menos 2006, retirado en 2014, y se sospechaba que contenía una supuesta puerta trasera cleptográfica de la Agencia Estadounidense de Seguridad Nacional (NSA), como parte de su programa secreto Bullrun . [2]
Desarrollador (es) | Dell , anteriormente RSA Security |
---|---|
Versión inicial | 1996 |
Escrito en | C , ensamblaje , Java |
Sistema operativo | BSD , Linux , macOS , Microsoft Windows , Android , iOS , AIX , Solaris |
Tipo | Biblioteca de criptografía , software comercial |
Licencia | Propiedad |
Sitio web | www |
El 1 de julio de 2020, la línea de productos BSAFE se transfirió a Dell [3] en previsión de que Dell vendiera su negocio RSA a un consorcio. [4]
Cert-J
Lanzamiento estable | 6.2.4 / 21 de febrero de 2018 |
---|---|
Escrito en | Java |
Cert-J es una biblioteca de software API de infraestructura de clave pública , escrita en Java . Contiene el soporte criptográfico necesario para generar solicitudes de certificados, crear y firmar certificados digitales y crear y distribuir listas de revocación de certificados . Cert-J se basa en el motor criptográfico BSAFE Crypto-J.
Cert-J admite múltiples estándares PKCS como PKCS # 7, # 8, # 11, # 12, así como X.509 y CMP .
A partir de Cert-J 6.2.4, toda la API ha quedado obsoleta a favor de una funcionalidad similar proporcionada por la API BSAFE Crypto-J JCE .
Edición Crypto-C Micro
Lanzamiento estable | 4.1.5 (17 de diciembre de 2020 [±] | [5] )
---|---|
Escrito en | C , montaje |
BSAFE Crypto-C Micro Edition (Crypto-C ME) se lanzó inicialmente en junio de 2001 con el nombre "RSA BSAFE Wireless Core 1.0". La versión inicial estaba dirigida a Microsoft Windows , EPOC , Linux , Solaris y Palm OS .
Las características iniciales proporcionaron generación de claves RSA , cifrado y descifrado, y firma y verificación; Tecnología MultiPrime para operaciones rápidas de descifrado y firma RSA; Generación, firma y verificación de claves y parámetros DSA ; Generación de parámetros e intercambio de claves Diffie-Hellman ; Cifrado y descifrado simétrico en los modos ECB, CBC, CFB y OFB para DES , 3DES-EDE , AES , RC2 , RC5 y RC6 ; Cifrado y descifrado utilizando el cifrado de flujo de longitud de clave variable RC4 ; Generación de resumen de mensajes MD2 , MD5 , SHA-1 y SHA-2 ; Generación de números pseudoaleatorios ; Generación HMAC .
El conjunto de herramientas pasó a llamarse "RSA BSAFE Crypto-C Micro Edition" con el lanzamiento de la versión 1.6 en febrero de 2002.
En agosto de 2005, con el lanzamiento de Crypto-C ME 2.0, se agregó al kit de herramientas la criptografía de curva elíptica , junto con otros algoritmos.
Crypto-J
Lanzamiento estable | 6.2.5 (15 de agosto de 2019 [±] | [6] )
---|---|
Escrito en | Java |
En 1997, RSA Data Security obtuvo la licencia de la biblioteca de cifrado Java J / CRYPTO de Baltimore Technologies, con planes de integrarla como parte de su nuevo kit de herramientas de cifrado JSAFE [7] y lanzó la primera versión de JSAFE el mismo año. [8] JSAFE 1.0 apareció en la edición de enero de 1998 de la revista Byte . [9] JSAFE 1.1 fue lanzado en febrero de 1998, siendo el primer lanzamiento que admite código nativo al llamar al kit de herramientas criptográficas BSAFE C. [10] Crypto-J, que proporciona tanto una API patentada (ahora en desuso) como una API JCE , es ahora el proveedor criptográfico de BSAFE SSL-J.
Suite Micro Edition
Lanzamiento estable | 4.6 (17 de diciembre de 2020 [±] | [11] )
---|---|
Escrito en | C , montaje |
BSAFE Micro Edition Suite es un SDK en C que permite agregar TLS , PKI y capacidades de criptografía como CMS en aplicaciones, dispositivos y sistemas. Micro Edition Suite proporciona capacidades y API idénticas a Crypto-C Micro Edition, además de las capacidades TLS, PKI y CMS, y también puede delegar todas las operaciones criptográficas al módulo FIPS Crypto-C Micro Edition .
BSAFE Micro Edition Suite se anunció inicialmente en febrero de 2002 [12] como una oferta combinada de BSAFE SSL-C Micro Edition, BSAFE Cert-C Micro Edition y BSAFE Crypto-C Micro Edition.
Tanto SSL-C Micro Edition como Cert-C Micro Edition llegaron a EOL en septiembre de 2014, mientras que Micro Edition Suite sigue siendo compatible con Crypto-C Micro Edition como su proveedor criptográfico validado por FIPS .
SSL-C
Lanzamiento final | 2.8.9 / 13 de marzo de 2014 |
---|---|
Escrito en | C , montaje |
Sistema operativo | Linux y Microsoft Windows |
La biblioteca SSL-C es un kit de herramientas SSL en la suite BSAFE. Fue escrito originalmente por Eric A. Young y Tim J. Hudson, como una bifurcación de la biblioteca abierta SSLeay , que desarrollaron antes de unirse a RSA. [13] [14] Al igual que SSLeay, SSL-C admitía SSLv2, SSLv3, TLSv 1; mientras que también es compatible con X.509v 1 y X.509v3. [15] SSL-C se lanzó por primera vez en 1999. [16] El algoritmo era uno de varios disponibles en las bibliotecas entre las que los usuarios podían elegir. [17]
SSL-C alcanzó el final de su vida útil en diciembre de 2016.
SSL-J
Lanzamiento estable | 7.0 (13 de abril de 2021 [±] | [18] )
---|---|
Escrito en | Java |
SSL-J es un kit de herramientas de Java que proporciona una API JSSE y una API patentada que permite que las aplicaciones Java implementen TLS . SSL-J fue lanzado como parte de la oferta de producto inicial de RSA JSAFE en 1997. [19] En noviembre de 2001, SSL-J 4.0 agregó soporte para JSSE API. Desde esa versión, tanto la API SSLJ (JSAFE) como la API JSSE han estado disponibles para su uso. A partir de SSL-J 6.2.4, la API JSAFE propiedad de RSA ha quedado obsoleta en favor de JSSE. Crypto-J es el proveedor criptográfico predeterminado de SSL-J.
El 25 de noviembre de 2015, RSA anunció fechas de fin de vida útil (EOL) para BSAFE. [20] El fin del soporte primario (EOPS) debía alcanzarse el 31 de enero de 2017, y el fin del soporte extendido (EOXS) originalmente estaba programado para el 31 de enero de 2019. Esa fecha fue luego extendida por RSA para algunos versiones hasta el 31 de enero de 2022. [21] Durante el soporte extendido, aunque la política de soporte indicaba que solo se repararían los problemas más graves, se lanzaron nuevas versiones que contenían correcciones de errores, correcciones de seguridad y nuevos algoritmos. [22]
El 12 de diciembre de 2020, Dell anunció la revocación de la decisión anterior de RSA, permitiendo el soporte del producto BSAFE más allá de enero de 2022, así como la posibilidad de adquirir nuevas licencias pronto. Dell también anunció que cambiaría el nombre de los kits de herramientas a Dell BSAFE . [23]
Generador de números aleatorios Dual_EC_DRBG
De 2004 a 2013, el generador de números pseudoaleatorios criptográficamente seguro predeterminado (CSPRNG) en BSAFE fue Dual_EC_DRBG , que contenía una supuesta puerta trasera de la NSA , además de ser un CSPRNG lento y sesgado. [24] La comunidad criptográfica sabía que Dual_EC_DRBG era un CSPRNG muy deficiente desde poco después de que se publicara la especificación en 2005, y en 2007 se hizo evidente que el CSPRNG parecía estar diseñado para contener una puerta trasera oculta para la NSA, utilizable únicamente por la NSA a través de una clave secreta. [25] En 2007, Bruce Schneier describió la puerta trasera como "demasiado obvia para engañar a alguien para que la use". [25] La puerta trasera se confirmó en las filtraciones de Snowden en 2013, y se insinuó que la NSA había pagado a RSA Security US $ 10 millones para usar Dual_EC_DRBG de forma predeterminada en 2004, [2] aunque RSA Security negó que supieran sobre la puerta trasera en 2004 El artículo de Reuters que reveló el contrato secreto de $ 10 millones para usar Dual_EC_DRBG describió el trato como "manejado por líderes empresariales en lugar de tecnólogos puros". [2] RSA Security se ha negado en gran medida a explicar su elección de continuar usando Dual_EC_DRBG incluso después de que se descubrieron los defectos y la puerta trasera potencial en 2006 y 2007, y ha negado haber insertado la puerta trasera a sabiendas. [26]
Entonces, ¿por qué RSA elegiría Dual_EC como predeterminado? Me tienes. Dual_EC no solo es hilarantemente lento, lo que tiene implicaciones de rendimiento reales, se demostró que era un generador de números aleatorios simplemente malo en 2006. En 2007, cuando Shumow y Ferguson plantearon la posibilidad de una puerta trasera en la especificación, no criptógrafo sensato se acercaría a la cosa. ¡Y el asesino es que RSA emplea a varios criptógrafos altamente distinguidos! Es poco probable que todos se pierdan las noticias sobre Dual_EC.
- Matthew Green, criptógrafo y profesor de investigación de la Universidad Johns Hopkins, Algunos pensamientos sobre ingeniería criptográfica [24] (Desde después de que se confirmara la puerta trasera, pero antes de que Reuters revelara el acuerdo secreto de $ 10 millones).
Como un generador de números aleatorios criptográficamente seguro es a menudo la base de la criptografía, muchos de los datos cifrados con BSAFE no estaban seguros frente a la NSA. Específicamente, se ha demostrado que la puerta trasera hace que SSL / TLS sea completamente rompible por la parte que tiene la clave privada de la puerta trasera (es decir, NSA). [25] Dado que el gobierno y las empresas estadounidenses también han utilizado el BSAFE vulnerable, la NSA podría haber hecho que los datos estadounidenses fueran menos seguros si se hubiera robado la clave secreta de la puerta trasera de la NSA. También es posible derivar la clave secreta resolviendo una sola instancia del problema de curva elíptica del algoritmo [25] (romper una instancia de criptografía de curva elíptica se considera improbable con las computadoras y algoritmos actuales, pero puede ocurrir un avance).
Cómo RSA abordó Dual_EC_DRBG
En noviembre de 2013, RSA lanzó Crypto-C Micro Edition 4.0.2, Micro Edition Suite 4.0.4 y Crypto-J 6.1.1 anticipándose a una decisión del NIST de recomendar el uso de Dual_EC_DRBG. [27] Estos productos utilizaron HMAC DRBG con SHA-256 como el primero en la lista de posibles CSPRNG predeterminados.
Con el lanzamiento de Crypto-C Micro Edition 4.1.2 (abril de 2016), Micro Edition Suite 4.1.5 (abril de 2016) y Crypto-J 6.2 (marzo de 2015), Dual_EC_DRBG no está implementado ni disponible para su uso. Estas versiones alcanzaron el fin de la vida útil en enero de 2019 [28] y han sido reemplazadas por versiones que tampoco tienen Dual_EC_DRBG implementado o como un algoritmo disponible para el usuario.
Extensión TLS aleatoria extendida
"Extended Random" fue una extensión propuesta para el protocolo Transport Layer Security (TLS), enviado para estandarización al IETF por un empleado de la NSA, [29] aunque nunca se convirtió en un estándar. De lo contrario, la extensión sería inofensiva, pero junto con Dual_EC_DRBG, facilitaría aprovechar la puerta trasera. [30] [31]
Anteriormente, no se sabía que la extensión estuviera habilitada en ninguna implementación, pero en diciembre de 2017, se encontró habilitada en algunos modelos de impresoras Canon , que usan la biblioteca RSA BSAFE, porque el número de extensión entraba en conflicto con una parte de TLS versión 1.3. [31]
- ^ RSA (1 de septiembre de 2020). "RSA emerge como empresa independiente tras la finalización de la adquisición por Symphony Technology Group" . RSA.
- ^ a b c Menn, Joseph (20 de diciembre de 2013). "Exclusivo: contrato secreto vinculado a la NSA y pionero de la industria de la seguridad" . San Francisco. Reuters . Consultado el 11 de mayo de 2021 .
- ^ Dell (4 de agosto de 2020). "Actualización de facturación y soporte BSAFE" . Dell.
- ^ Dell (18 de febrero de 2020). "Symphony Technology Group llega a un acuerdo definitivo con Dell Technologies para adquirir RSA" . Dell.
- ^ "Aviso de lanzamiento de Dell BSAFE Crypto-C Micro Edition 4.1.5 y Micro Edition Suite 4.6" .
- ^ "RSA anuncia el lanzamiento de RSA BSAFE® Crypto-J 6.2.5" .
- ^ "Licencias RSA Baltimore Technologies J / CRYPTO" .
- ^ "El kit de herramientas BSafe de RSA genera una nueva versión de Java" .
- ^ "Hacer el desarrollo de Java JSafe" (PDF) .
- ^ "RSA lanza cifrado JSAFE 1.1 para Java" .
- ^ "Aviso de lanzamiento de Dell BSAFE Crypto-C Micro Edition 4.1.5 y Micro Edition Suite 4.6" .
- ^ RSA presenta tres nuevos productos en su feria ” . IT World. 20 de febrero de 2002.
- ^ Simson Garfinkel, Gene Spafford (2002). Seguridad Web, Privacidad y Comercio . O'Reilly. pag. 114 . ISBN 0596000456.
- ^ Ivan Ristic (2013). Libro de recetas de OpenSSL: una guía de las funciones y comandos de OpenSSL más utilizados . Qualys. pag. 1. ISBN 9781907117053.
- ^ Seguridad de datos RSA (1999). "RSA presenta BSAFE SSL-C para mercados mundiales" . PR Newswire.
- ^ RSA Australia (30 de marzo de 1999). "Licencias de software de Check Point RSA BSAFE ™ SSL-C para su VPN líder en el mercado" . Software Check Point. Archivado desde el original el 1 de diciembre de 2010.
- ^ RSA (2013). "Respuesta de RSA a las afirmaciones de los medios sobre la relación con la NSA" . RSA.
- ^ "Aviso de lanzamiento de Dell BSAFE SSL-J 7.0" .
- ^ "Asegurar los recursos informáticos con certificados digitales y LDAP" .
- ^ RSA (25 de noviembre de 2015). "RSA anuncia fechas de fin de vida útil (EOL) para RSA BSAFE" . RSA . Consultado el 3 de octubre de 2018 .
- ^ RSA (20 de junio de 2018). "RSA anuncia la extensión de soporte para algunos de los paquetes de productos BSAFE®" . RSA . Consultado el 3 de octubre de 2018 .
- ^ RSA (11 de septiembre de 2019). "RSA anuncia el lanzamiento de RSA BSAFE® Micro Edition Suite 4.4" . RSA . Consultado el 11 de septiembre de 2019 .
- ^ Dell (12 de diciembre de 2020). "Los productos Dell BSAFE seguirán siendo compatibles después de enero de 2022, revirtiendo la decisión anterior de RSA de utilizar kits de herramientas BSAFE al final de su vida útil" . Dell.
- ^ a b Matthew Green (20 de septiembre de 2013). "RSA advierte a los desarrolladores que no utilicen productos RSA" . Algunas reflexiones sobre la ingeniería criptográfica .
- ^ a b c d Bruce Schneier. "La extraña historia de Dual_EC_DRBG" .
- ^ "No habilitamos puertas traseras en nuestros productos criptográficos, RSA les dice a los clientes" . Ars Technica.
- ^ "NIST elimina el algoritmo de criptografía de las recomendaciones del generador de números aleatorios" . 21 de abril de 2014 . Consultado el 11 de mayo de 2021 .
- ^ "Ciclo de vida de la versión del producto Dell BSAFE" . Consultado el 11 de mayo de 2021 .
- ^ Eric, Rescorla; Margaret, Salter (2 de marzo de 2009). "Valores aleatorios extendidos para TLS" . Proyecto de norma IETF .
- ^ Menn, Joseph (31 de marzo de 2014). "Exclusivo: NSA se infiltró en la seguridad de RSA más profundamente de lo que se pensaba - stu" . Reuters .
- ^ a b Green, Matthew (19 de diciembre de 2017). "La extraña historia de" Extended Random " " . Blog de Ingeniería Criptográfica .
- Página de soporte BSAFE Cert-J
- Página de soporte de BSAFE Crypto-J
- Página de soporte de BSAFE SSL-J
- Página de soporte de BSAFE Crypto-C Micro Edition
- Página de soporte de BSAFE Micro Edition Suite