Search code examples
ssl-certificatepfx

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


is there a way to convert from a .key file to a .pfx file? thank you.

EDIT: I only have the .key file but my hosting provider says that I could convert it to .pfx with just that file.


Solution

  • 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.