¿openssl pkcs12 sigue eliminando la frase de contraseña PEM de la entrada del almacén de claves?

¿openssl pkcs12 sigue eliminando la frase de contraseña PEM de la entrada del almacén de claves?

OpenSSL 1.0.1e 11 de febrero de 2013

Generando un certificado autofirmado:

openssl req -x509 -newkey rsa:1024 -keyout key.pem -out cert.pem -days 365

Durante el proceso unfrase de contraseña PEMse solicita:

Ingrese la frase de contraseña de PEM:
Verificando: Ingrese la frase de contraseña de PEM:

Hay 2 archivos resultantes después de completarse exitosamente enPEMformato:

clave.pem, certificado.pem

La clave privada (clave.pem) es enPKCS#8formato y la línea de inicio dice:

-----COMENZAR LA CLAVE PRIVADA CIFRADA-----

Ahora estoy intentando combinar el certificado, así como la clave privada relacionada, en unPKCS#12almacén de claves y protegerlo con uncontraseña. Nota: según tengo entendido, esto debería exigir de manera efectiva la solicitud de unacontraseñadurante el acceso de lectura, así como unfrase de contraseñapara la clave privada de la entrada correspondiente:

openssl pkcs12 -exportar -inkey key.pem -in cert.pem -out keystore.p12

Al momento de la ejecución me preguntan lo siguiente:

Ingrese la frase de contraseña para key.pem:
Ingrese la contraseña de exportación:
Verificando - Ingrese la contraseña de exportación:

Sin embargo, tengo entendido que elfrase de contraseñadebe permanecer intacto durante elllave privadaque ahora está almacenado en elalmacén de claves.p12archivo. Así es como intento leer el contenido del almacén de claves:

openssl pkcs12 -nodos -info -en keystore.p12

El resultado que obtengo (solo relacionado con la protección del almacén de claves con uncontraseña):

Ingrese la contraseña de importación:

Y enumera el certificado, así como la clave privada, en formato PEM sin solicitar elfrase de contraseñapara despues. Ese es básicamente el problema. Elfrase de contraseña PEMya no está ahí para elllave privada. ¿Qué estoy haciendo mal o cómo puedo solucionarlo? Gracias.

Respuesta1

No hay nada malo. Así es como funciona PKCS12. PKCS12 es un formato para transportar de forma segura cadenas de certificados y claves privadas entre tokens. La protección/cifrado de la clave privada se realiza mediante la frase de contraseña que ingresó cuando se le solicitó "Ingresar contraseña de exportación". Nada como claves dos veces cifradas.

EDITAR: Omitir -nodesopción. Eso desactiva el cifrado de clave privada.

información relacionada