PKCS12ファイルから秘密鍵と証明書を取り出す

秘密鍵取り出し

openssl pkcs12 -in CEDS123456789.pfx -nocerts -nodes -out example.com.key -passin pass:pa22w0rd
オプションの意味
  • CEDS123456789.pfx PKCS12ファイル名
  • example.com.key 取り出した秘密鍵のファイル名を指定
  • pa22w0rd PKCS12ファイルに設定されているパスワード

pass:pa22w0rd
こういった記述で書く。


以下コマンドだとプロンプトが表示されるのでそこでパスワードを打つことも可能

[root@tsunokawa tmp]# openssl pkcs12 -in CEDS123456789.pfx -nocerts -nodes -out example.com.key
Enter Import Password:
MAC verified OK
[root@tsunokawa tmp]#


取り出した秘密鍵ファイルにはヘッダ部分に余計なものが記載されているため以下部分を削る。

Bag Attributes
    localKeyID: BG EF 5C 5D D6 2D BB DC CC 14 2D 1A 05 84 32 95 3B B6 7B 77
Key Attributes: <No Attributes>


証明書取り出し

[root@tsunokawa tmp]# openssl pkcs12 -in CEDS123456789.pfx -clcerts -nokeys -out example.com.crt
Enter Import Password:
MAC verified OK
[root@tsunokawa tmp]#


取り出した証明書ファイルにはヘッダ部分に余計なものが記載されているため以下部分を削る。

Bag Attributes
    localKeyID: BG EF 5C 5D D6 2D BB DC CC 14 2D 1A 05 84 32 95 3B B6 7B 77
subject=/C=JP/OU=Domain Control Validated/CN=example.com
issuer=/C=BE/O=GlobalSign nv-sa/CN=GlobalSign Domain Validation CA - SHA256 - G2


中間証明書・ルート証明書取り出し

openssl pkcs12 -in CEDS123456789.pfx -cacerts -nokeys -out example.com.chukan -passin pass:pa22w0rd

・中間証明書
ルート証明書
の順で出力される。

取り出した中間証明書・ルート証明書ファイルにはヘッダ部分に余計なものが記載されているため以下部分を削る。

Bag Attributes: <No Attributes>
subject=/C=BE/O=GlobalSign nv-sa/CN=GlobalSign Domain Validation CA - SHA256 - G2
issuer=/C=BE/O=GlobalSign nv-sa/OU=Root CA/CN=GlobalSign Root CA
Bag Attributes: <No Attributes>
subject=/C=BE/O=GlobalSign nv-sa/OU=Root CA/CN=GlobalSign Root CA
issuer=/C=BE/O=GlobalSign nv-sa/OU=Root CA/CN=GlobalSign Root CA