回答:
Windowsは、X.509証明書に.cer拡張子を使用します。これらは「バイナリ」(ASN.1 DER)にすることも、Base-64でエンコードしてヘッダーとフッターを適用(PEM)することもできます。Windowsはどちらかを認識します。証明書の整合性を確認するには、発行者の公開鍵を使用して署名を確認する必要があります。これは、別の証明書です。
WindowsはPKCS#12ファイルに.pfxを使用します。このファイルには、証明書、証明書チェーン、ルート認証局の証明書、秘密鍵など、さまざまな暗号化情報を含めることができます。内容を暗号化して(パスワードを使用して)保護し、秘密鍵を秘密に保ち、ルート証明書の整合性を維持できます。
Windowsは、秘密鍵ファイルに.pvkを使用します。Windowsがこれらの標準に従っている場合(ある場合)はわかりません。うまくいけば、それらはPKCS#8でエンコードされたキーです。 Emmanuel Bourgは、これらは独自の形式であると報告しています。いくつかのドキュメントが利用可能です。
秘密鍵は絶対に開示しないでください。これらは.pfxおよび.pvkファイルに含まれています。
通常、証明書(.cer)と中間発行者の証明書(つまり、ルートCAを除くすべてのCAの証明書)のみを他の当事者と交換します。
Windowsプラットフォームでは、これらのファイルタイプは証明書情報に使用されます。通常、SSL証明書と公開キー基盤(X.509)に使用されます。
興味がある人のために、この主題が現在私に関係している限り、私の個人的な超凝縮されたメモはここにあります:
私は実際にそれほど前にこのようなものに遭遇しました... msdnで確認して ください(最初の回答を参照)
要約すれば:
.cer-X.509標準形式で保存された証明書。この証明書には、証明書の所有者に関する情報と、公開鍵および秘密鍵が含まれています。
.pvk-ファイルは、コード署名用の秘密鍵を格納するために使用されます。.pvk秘密鍵ファイルに基づいて証明書を作成することもできます。
.pfx-パーソナルエクスチェンジフォーマットを表します。1つのファイルでパブリックオブジェクトとプライベートオブジェクトを交換するために使用されます。.cerファイルからpfxファイルを作成できます。ソフトウェア発行元証明書の作成にも使用できます。
コメントからの提案に基づいて、ページの情報をまとめました。