¿Por qué hay un "des-ede3-cbc" en mi clave privada rsa?

6

He creado una solicitud de certificado y clave privada RSA OpenSSL con 4096 bits con el siguiente comando:

openssl req -newkey 4096

Cuando veo la clave privada con

openssl asn1parse -in privkey

Obtengo el siguiente resultado:

    0:d=0  hl=4 l=2446 cons: SEQUENCE          
    4:d=1  hl=2 l=  64 cons: SEQUENCE          
    6:d=2  hl=2 l=   9 prim: OBJECT            :PBES2
    17:d=2  hl=2 l=  51 cons: SEQUENCE          
    19:d=3  hl=2 l=  27 cons: SEQUENCE          
    21:d=4  hl=2 l=   9 prim: OBJECT            :PBKDF2
    32:d=4  hl=2 l=  14 cons: SEQUENCE          
    34:d=5  hl=2 l=   8 prim: OCTET STRING      [HEX DUMP]:XXXXXXXXX
    44:d=5  hl=2 l=   2 prim: INTEGER           :0800
    48:d=3  hl=2 l=  20 cons: SEQUENCE          
    50:d=4  hl=2 l=   8 prim: OBJECT            :des-ede3-cbc

Lo que me molesta es la parte con des-ede3-cbc. ¿Por qué hay des-ede3-cbc en mi clave privada RSA? Que yo sepa, "DES" es un estándar de cifrado de los años setenta y se considera roto.

    
pregunta rosix 28.06.2015 - 18:12
fuente

2 respuestas

8
  

¿Por qué hay des-ede3-cbs en mi clave privada rsa?

Porque tu clave privada está encriptada con eso.

  

Por lo que sé, "DES" es un estándar de cifrado de los años setenta y se considera roto.

Sí. Bastante mucho Considere volver a cifrarlo con AES de la siguiente manera:

$ openssl rsa -in desencryptedprivkey.pem -out aesencryptedprivkey.pem -aes128

EDITAR 2015-06-29: lo suficientemente bueno después de todo
Leyendo la respuesta de Bruno, me doy cuenta de que en realidad aún son 112 bits de seguridad en el modo predeterminado. Y eso es bastante bueno.
(Lo que me hizo dudar de esto es que puedes ejecutar triple-DES con 1, 2 o 3 teclas. Y no estaba seguro de que esta fuera realmente la versión de 3 teclas. Pero resulta que en realidad lo es). - Vea los comentarios en la respuesta de Bruno Rohée para más detalles.

EDICIÓN 2015-07-03: algunos términos y condiciones pueden aplicarse
Como se discutió en el hilo de comentarios con @ dave_thompson_085 no está tan claro.

Si bien es cierto que AES de 128 bits es preferible a Triple-DES de 112 bits (aunque solo sea por velocidad y no por seguridad práctica), ambos encriptados sufren de un estiramiento de clave débil. - Al menos en la forma en que se implementa en OpenSSL.

Esto significa que el mecanismo por el cual la contraseña de cifrado se convierte en una clave AES de 128 bits o en tres claves DES de 56 bits no es lo último.

Lo que extensión de clave es SIGNIFICATIVO hacer es convertir una contraseña relativamente débil como Asdf123! en una clave de cifrado segura. Sin embargo, OpenSSL utiliza un estiramiento de teclas débil.

Y AFAIK no hay forma de pasar parámetros de estiramiento clave más fuertes.

Entonces, la recomendación más práctica, como lo sugiere Dave, en este momento es: considera que la extensión de la clave es prácticamente inexistente y utiliza una contraseña muy fuerte .

    
respondido por el StackzOfZtuff 28.06.2015 - 18:26
fuente
11

Su clave privada se cifra con Triple DES . Si bien DES se rompe fácilmente, Triple DES es seguro por ahora, especialmente en este contexto. AES fue hecho para reemplazar a Triple DES no tanto porque Triple DES estaba roto, sino porque era demasiado lento. En el contexto del cifrado de clave privada, no es un problema.

    
respondido por el Bruno Rohée 29.06.2015 - 03:27
fuente

Lea otras preguntas en las etiquetas