SSL: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 1: | Line 1: | ||
== Split PKCS#12 certificate into CA / Cert / Private key == |
== Split PKCS#12 certificate into CA / Cert / Private key == |
||
Use <code>openssl pkcs12</code> to split a pkcs#12 data into the CA / certificates / private keys component. By default, PKCS#12 produces '''PEM''' files |
Use <code>openssl pkcs12</code> to split a pkcs#12 data into the CA / certificates / private keys component. By default, PKCS#12 produces '''PEM''' files [http://wiki.yobi.be/wiki/CAcert]. |
||
<source lang=bash> |
<source lang=bash> |
Revision as of 14:51, 4 March 2015
Split PKCS#12 certificate into CA / Cert / Private key
Use openssl pkcs12
to split a pkcs#12 data into the CA / certificates / private keys component. By default, PKCS#12 produces PEM files [1].
openssl pkcs12 -in mywindowscert.pfx -nocerts -out mycert.key
openssl pkcs12 -in mywindowscert.pfx -clcerts -nokeys -out mycert.crt.pem
openssl pkcs12 -in mywindowscert.pfx -cacerts -nokeys -out mycert.ca.pem
Checking Certificate Chain with OpenSSL
Checking A Remote Certificate Chain With OpenSSL
Change .p12 / .pfx password
Say you have a private key / certificate file mycert.pfx, and you want to change its password:
# Strangely we cannot pipe output of 1st command into 2nd (error 'No certificate matches private key')
openssl pkcs12 -in mycert.pfx -out mycert.pem -nodes # Don't encrypt private key at all
openssl pkcs12 -export -in mycert.pem -out mycert-new.pfx
rm mycert.pem # DON'T FORGET THIS!
Extract key from .p12/ .pfx
openssl pkcs12
takes a file in pkcs#12 format (.p12/.pfx) and produces a file in PEM format, that is parseable withopenssl rsa
. The PEM may contain either private key, certificates, root certificates or even public keys.
openssl pkcs12 -in mycert.pfx -out mycert.pem -nocerts -nodes # Don't encrypt private key at all, don't output certificates
openssl rsa -noout -modulus -in mycert.pem # To extract the modulus
openssl rsa -noout -text -in mycert.pem # To extract all the fields