なぜ PEM を DER に変換するのですか?
一部のプラットフォームやツールは、バイナリの DER ファイルのみを受け入れます。Java の keytool、古い Windows API、および特定のハードウェアセキュリティモジュール(HSM)は DER を想定しています。ソフトウェアが .pem を拒否する場合、通常はこの変換が解決策となります。
PEM から DER への変換方法
OpenSSL FREE
証明書の場合は openssl x509 -in cert.pem -outform der -out cert.der を、秘密鍵の場合は openssl pkey -in key.pem -outform der -out key.der を実行します。OpenSSL は無料で、Windows、macOS、Linux で動作します。
certutil FREE
コマンドプロンプトを開き、certutil -decode cert.pem cert.der を実行して Base64 ヘッダーを削除し、バイナリ DER ファイルを生成します。certutil はすべての Windows インストールに組み込まれています。
これらの形式について
PEM ファイルは、暗号化データのテキストコンテナです。多くの場合、SSL/TLS 証明書、秘密鍵、またはその両方が含まれます。任意のテキストエディタで開き、«BEGIN» 行の内容を確認してから、OpenSSL を使用して検査または変換してください。ファイルに «PRIVATE…
.PEM の詳細を開く →.DER ファイルは、web ファイルである DER encoded internet security certificate に関連付けられています。
.DER の詳細を開く →品質と注意点
- PEM と DER は同じ ASN.1 暗号化データを保持しています。DER は PEM が Base64 として保存している内容をそのままバイナリエンコードしたものであり、情報の追加や削除はありません。
- 証明書チェーンを含むマルチブロックの
.pemを単一の.derに変換することはできません。DER は1ファイルにつき1つのオブジェクトを保持するため、先にブロックを分割してください。 - DER エンコードされた証明書は、一般に
.cerまたは.crtとしても保存されます。拡張子に関わらず内容は同一です。
よくある質問
PEM から DER に変換する際に情報の損失はありますか?
秘密鍵を PEM から DER に変換できますか?
openssl pkey -in key.pem -outform der -out key.der で可能です。ただし、DER 形式の鍵にはパスワード保護がないため、元の PEM と同様に安全に保管してください。DER 出力が正しいか確認するにはどうすればよいですか?
openssl x509 -in cert.der -inform der -text -noout を実行してください。証明書の詳細が表示されれば、変換は成功しています。DER を PEM に戻すにはどうすればよいですか?
openssl x509 -in cert.der -inform der -outform pem -out cert.pem を実行してください。