Is it possible to convert an SSL certificate from a .key file to a .pfx?

To check if your .key file has everything you need:

#check if file contains a valid certificate:
openssl x509 -text -in file.key

It should print out certificate details. If it prints an error including the text “unable to load certificate”, then your file is not sufficient.

#check if file contains a valid key:
openssl rsa -text -in file.key
openssl dsa -text -in file.key

One of the above commands should print out valid key details. The other will give an error with the text “expecting an rsa key” or “expecting a dsa key”.

If the error text says “bad decrypt”, you have provided an invalid passphrase, or the file is damaged.

If the error text says “Expecting: ANY PRIVATE KEY”, then your file is not sufficient.

If you got a key, and one certificate which matches the key (and optionally some other certificates), then you have enough to convert the file to a pfx. Then, as ISW said, it’s just a matter of

#convert file containing key and certificate(s) to PKCS#12 pfx file.
openssl pkcs12 -export -out file.pfx -in file.key

and you’re done.

Leave a Comment