.pfx (Personal Information Exchange) ファイルを .cer (セキュリティ証明書) ファイルに変換することはできますか? 私が間違っていない限り、.cer は何らかの形で .pfx 内に埋め込まれていませんか? 可能であれば、それを抽出する方法が欲しいです。
7 に答える
PFXファイルはPKCS#12個人情報交換構文標準バンドルです。X.509証明書と認証局チェーン(証明書の設定)を伴う任意の数の秘密鍵を含めることができます。
クライアント証明書を抽出する場合は、 OpenSSLのPKCS12ツールを使用できます。
openssl pkcs12 -in input.pfx -out mycerts.crt -nokeys -clcerts
上記のコマンドは、証明書をPEM形式で出力します。「.crt」ファイル拡張子は、macOSとWindowの両方で処理されます。
DERでエンコードされたファイルに従来使用されている質問で「.cer」拡張子について言及しました。バイナリエンコーディング。最初に「.crt」ファイルを試してください。受け入れられない場合は、PEMからDERに簡単に変換できます。
openssl x509 -inform pem -in mycerts.crt -outform der -out mycerts.cer
私が信じている簡単な方法は、Windows 管理コンソールの証明書マネージャーを使用して、インポートしてからエクスポートすることです。
PowerShell で作業している場合は、pfx ファイルInputBundle.pfxを指定して、次のようなものを使用して、DER でエンコードされた (バイナリ) 証明書ファイルOutputCert.derを生成できます。
Get-PfxCertificate -FilePath InputBundle.pfx |
Export-Certificate -FilePath OutputCert.der -Type CERT
わかりやすくするために改行が追加されていますが、もちろんこれをすべて 1 行で行うこともできます。
ASCII/Base64 でエンコードされた PEM 形式の証明書が必要な場合は、https ://superuser.com/questions/351548/windows-integrated-utility-to-convert のように、別の場所で文書化されているように追加の手順を実行できます。 -der-to-pem
DER エンコードとは異なる形式にエクスポートする必要がある場合は-Type
、.NET でサポートされているタイプを使用するように Export-Certificate のパラメータを変更できます ( を参照) help Export-Certificate -Detailed
。
-Type <CertType>
Specifies the type of output file for the certificate export as follows.
-- SST: A Microsoft serialized certificate store (.sst) file format which can contain one or more certificates. This is the default value for multiple certificates.
-- CERT: A .cer file format which contains a single DER-encoded certificate. This is the default value for one certificate.
-- P7B: A PKCS#7 file format which can contain one or more certificates.
最も簡単だと思う方法を追加したかったのです。
pfx ファイルを右クリックし、[インストール] をクリックしてウィザードに従い、ストアに追加します (個人ストアに追加しました)。
スタート メニューで certmgr.msc と入力し、CertManager プログラムに移動します。
pfx 証明書を見つけ (上部のタブはさまざまなストアです)、エクスポート ボタンをクリックしてウィザードに従います (.CER としてエクスポートするオプションがあります)。
基本的に、Andrew の回答と同じことを行いますが、Windows 管理コンソールの使用を回避します (インポート/エクスポートに直接進みます)。
openssl rsa -in f.pem -inform PEM -out f.der -outform DER