[OpenSSL]pfx ファイルから crt ファイルと key ファイルを取り出す

SSL 証明書による認証が必要なシステムの API を実行するのに crt ファイルと key ファイルをセットして API を実行しないといけなかったんですが、もらったファイルは pfx ファイルだったので、自分で pfx ファイルから crt ファイルと key ファイルを作成する必要がありました。
Windows 環境だったりすると pfx ファイルなんですよね・・・。
なので、今回は pfx ファイルから crt ファイルと key ファイルを作成する方法を説明していきます。

OpenSSL とは

OpenSSL については下記サイトが参考になると思います。

pfx ファイルとは

pfx ファイルについては下記の説明を見てもらえればと思います。

RFC 7292 参照。パスワードに基づく鍵(暗号)により保護された秘密鍵と、それに関連する公開鍵証明書を保管するために一般に利用されるファイルフォーマットの定義。PFXは PKCS#12 の旧称である。
これは、複数の組み込みオブジェクト、例えば複数の証明書を格納できるコンテナフォーマットである。通常、パスワードにより保護/暗号化される。

Java の鍵ストアのフォーマットとして利用できる。Tomcat では利用できるが Apache では利用できない。

引用元:Wikipedia

pfx ファイルから crt ファイルを作成する

下記コマンドを実行し pfx ファイルから crt ファイルを作成します。

$ openssl pkcs12 -in sample.pfx -clcerts -nokeys -out sample.crt

pfx ファイルから key ファイルを作成する

下記コマンドを実行し pfx ファイルから key ファイルを作成します。

$ openssl pkcs12 -in sample.pfx -nocerts -nodes -out sample.key

最後に

お客さんの環境は Windows であることが多く、 pfx ファイルで SSL 証明書をもらうことがあると思いますが、その時もあせることなく、今回のコマンドを利用して Apache などの Web サーバーに設定可能な証明書を作成できるようになりたいですね。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です