2012-06-12 22 views
13

Actualmente tengo un archivo .PEM que contiene solo una clave privada. Necesito convertir este archivo en un archivo .PKCS12. Actualmente estoy tratando de usar openssl para lograr esto y estoy teniendo algunos problemas.Openssl convert .PEM que solo contiene clave privada RSA para .PKCS12

archivo La .PEM que estoy usando es de la forma:

----- BEGIN RSA PRIVATE KEY -----

Algunos clave

--- --end la clave privada RSA -----

utilizo el siguiente comando OpenSSL para intentar convertir este archivo en un .PEM .PKCS12:

openssl pkcs12 -export -inkey file.pem salida privado file.p12

La consola entonces cuelga con el mensaje:

Loading 'pantalla' en estado aleatorio -done

¿Qué estoy haciendo mal?

Cualquier ayuda se apruebe.

+0

Hasta ahora solo has aceptado una respuesta a tus preguntas, ¡y esa fue tu respuesta! –

+0

El archivo pkcs12 generalmente contiene una cadena de certificados más la clave privada para el certificado de hoja de la cadena. En su forma más simple, contiene un certificado autofirmado más la clave privada asociada. Necesita crear un certificado con su clave pública, y ese certificado debe contener los campos que espera su aplicación de consumo. –

Respuesta

25

Me encontré con este problema y lo resolví agregando la opción -nocerts después de la exportación. Mi suposición con respecto a la causa de la "congelación" es que openssl probablemente está tratando de leer información adicional de la consola.

openssl pkcs12 -export -nocerts -inkey your.private.key.pem -out your.private.key.p12 
+0

@ sliq..¿Podrías echarle un vistazo a mi pregunta? http://stackoverflow.com/questions/41149979/pem-key-generation-format-encoding-errors –

3

Yo creo que hay que proporcionar el certificado, así, no sólo la clave privada:

openssl pkcs12 -export -inkey privatekey.pem -en certificate.cer salida privado bothAsPKCS12.p12

+0

Es cierto. En mi experiencia, '-in' (por ejemplo, .cer/.crt) y' -inkey' (por ejemplo, tecla) se deben proporcionar. – aff

Cuestiones relacionadas