PEM証明書 (.pem)

IETF 標準

Privacy-Enhanced Mail(PEM)は、証明書や秘密鍵などの暗号オブジェクトに広く使われるテキスト形式のエンコードです。Base64データをラベル付きの「-----BEGIN...-----」と「-----END...-----」の境界で囲みます。

CRT を PEM に変換

無料のブラウザ内 CRT から PEM へのコンバーター。お使いのデバイスでファイルを即座に変換します。

調査とメタデータ

オペレーティングシステムやファイル解析ツールは、先頭のバイナリ列を検査してPEMファイルを識別します:

ファイルを選択するか、ここにドロップしてください

プライベート - ファイルがデバイスの外に出ることはありません

または貼り付け Ctrl+V
ネットワーク送信ゼロのプライバシー保証: 外部サーバーへのデータ送信は0バイトです。すべての処理はお使いのブラウザのサンドボックス内でローカルに実行されます。

バイトレベルのヘッダーシグネチャ (マジックバイト)

オペレーティングシステムやファイル解析ツールは、先頭のバイナリ列を検査してPEMファイルを識別します:

16進数シグネチャ(オフセット0):

2D 2D 2D 2D 2D 42 45 47 49 4E

ASCII表現: -----BEGIN

標準化: IETF RFC 7468 / RFC 1421

技術仕様

コンテナアーキテクチャDERバイナリ構造を格納し、'-----BEGIN [LABEL]-----'と'-----END [LABEL]-----'で囲むBase64 ASCIIアーマー形式のコンテナ
圧縮非圧縮テキスト形式
バイトエンディアンASCII / UTF-8テキストストリーム
色空間該当なし(暗号コンテナ)
チャンネルと構造証明書、秘密鍵(RSA/EC/DSA)、CSR、公開鍵、証明書失効リスト
最大寸法テキストストリーム長に上限なし(複数の証明書チェーンに対応)
透過性平文のASCIIアーマー形式エンベロープ
ストリーミングとプログレッシブバナー単位で順次ストリーミング抽出

技術比較表:PEMと競合製品

技術属性PEM (現在)DERP12CRT
テキスト vs バイナリ人間が読める Base64 テキスト生のバイナリバイトのみ暗号化されたバイナリアーカイブ通常は Base64 テキスト
クラウドおよびDevOpsでの利用100% 普遍的な標準 (AWS, K8s)ハードウェアトークン / JavaWindows IIS サーバーのインポートWeb サーバー設定
許可される内容証明書、秘密鍵、チェーン、CSR単一の証明書または鍵バンドルされた証明書 + 暗号化された鍵通常は公開証明書のみ
コピー&ペースト可能はい(テキストエリアに直接貼り付け可能)いいえ(バイナリ)いいえ(バイナリ)はい(PEMエンコードされている場合)

一般的な破損モードと16進数リカバリガイド

OpenSSLエラー: 'PEM_read_bio: no start line'。

根本原因: 「-----BEGIN ...-----」ヘッダーバナーの欠落または破損、あるいはWindowsのCRLF改行の破損。

復旧: File2File.app証明書ツールを使用して、標準の5ダッシュのヘッダーバナーを復元します。

セキュリティ分析とパーサー攻撃ベクトル

PEMファイルには、公開された場合に完全なサーバーアクセスを許可する暗号化されていない秘密鍵(「-----BEGIN RSA PRIVATE KEY-----」)が含まれていることがよくあります。

既知の攻撃ベクター

  • 暗号化されていないPEM秘密鍵をパブリックバージョン管理リポジトリにコミットすること。
  • ローカルファイルインクルージョン (LFI) を介したサーバーPEMキーの読み取りを伴うパストラバーサル攻撃。
  • 暗号化された秘密鍵PEMファイルにおける脆弱なパスフレーズ。

防御的ベストプラクティス: 秘密鍵のPEMファイルを厳格なファイルシステム権限(chmod 600)で保護し、gitには絶対にコミットしません。

歴史的背景とマイルストーン

2015IETFがRFC 7468を発行し、PKIX、PKCS、およびCMS構造のテキストエンコーディングを正式化。
1998OpenSSLがPEMを主要フォーマットとして採用し、オープンソースコンピューティングにおける事実上の標準となる。
1993IETFがPrivacy-Enhanced Mail向けにRFC 1421を発行し、ASCIIアーマーフォーマットを導入。

主なメリット

  • 人間が読めてコピー&ペースト可能:Webフォーム、クラウドコンソールの入力(AWS、GCP)、およびメールにコピーできます。
  • OpenSSL、Linuxサービス、Docker、Kubernetes、クラウドシステムなどのツールやプラットフォームでよく使われます。受け付ける形式はコンポーネントによって異なります。
  • マルチ証明書サポート:ブロックを積み重ねることで、単一のテキストファイルに完全な証明書信頼チェーンを保存できます。

技術的な制限とデメリット

  • Base64エンコーディングのオーバーヘッドのため、生のバイナリDERよりも約33%大きい。
  • 偶発的な破損:行ラップの変更やバナー内のダッシュの欠落により、パース障害が発生する可能性があります。
  • 暗号化されていない秘密鍵のPEMファイルは、漏洩した場合に極端なセキュリティリスクをもたらします。

興味深い技術トリビア

  • 普及しなかった暗号化電子メールシステム用に作成されましたが、そのASCIIアーマーは地球上で最も人気のあるセキュリティフォーマットになりました。
  • すべての有効なPEMファイルは5つのダッシュ「-----BEGIN」で始まります。
  • 完全なSSL証明書チェーンは、単一の .pem ファイル内で複数の「BEGIN CERTIFICATE」ブロックを次々と貼り付けるだけで作成できます。

よくある技術的な質問

.pem ファイルとは何ですか?

.pem ファイルは、セキュリティ証明書、秘密鍵、または証明書チェーン全体を、「-----BEGIN...-----」バナーが付いた読み取り可能な Base64 形式で保存するためのテキストベースのフォーマットです。

PEM を P12 または PFX に変換するにはどうすればよいですか?

Webブラウザ上で File2File.app を直接使用すれば、1クリックで PEM 証明書と秘密鍵をパスワードで保護された P12/PFX ファイルに変換できます。

PEM 証明書の有効期限を確認するにはどうすればよいですか?

外部サーバーにデータを送信することなく、.pem ファイルを File2File.app で開いて有効期限、発行者、ドメイン名をデコードできます。