技術と日常。

日々の気が付いたこと・気になったことを残しておきます。

[公開鍵認証]拡張子の意味を徹底解説

世の中の、公開鍵認証に使われるファイルにはいろいろな拡張子があり、どの拡張子が、どういう意味と中身なのかが、わかりにくいのでまとめました。
ポイントとして、 拡張子が、中身のエンコードの種類を指すか、証明書の種類を指すかを把握する ことが重要です。

サマリ

エンコードの種類を示すタイプ

拡張子 データ構造/エンコード
der ASN.1/バイナリ
pem ASN.1/Base64

証明書の種類を示すタイプ

拡張子 一般的な中身 エンコード
crt/cer/cert/ca 証明書
(公開鍵 + 発行認証局の情報)
der/pem
key 秘密鍵 + 公開鍵 der/pem
pfx/p12 秘密鍵 + 証明書
(パスワードによる暗号化がかかる)
PKCS#12

エンコードの種類を表すタイプ

der/pem

中身の種類を表すタイプ

crt系

  • crt/cer/cert/ca証明書 です
    • つまり、 公開鍵 + 発行者名 + 発行認証局の情報(CAの公開鍵で復号) が含まれます
    • csr認証局(CA: Certification Authority)へ申請すると返ってきます
    • エンコードder/pemのいずれかです

key

  • keyは一般的な発行だと 秘密鍵 + 公開鍵 が含まれます
    • 一般的な証明書発行フローだと、まずこれを作って、これからcsrを作ることが多いと思います
    • エンコードder/pemのいずれかです

pfx/p12

  • pfx/p12は、一般的には 秘密鍵と、それに対応する公開鍵証明書のペア を、パスワードで保護・暗号化しています。
  • エンコードPKCS#12です

参考