PEM証明書 (.pem)

IETF 標準

Privacy-Enhanced Mail (PEM) は、暗号化アセットのための汎用的で人間が読めるテキスト規格であり、バイナリDER証明書と秘密鍵を「-----BEGIN...-----」という特徴的なバナーで囲まれたBase64テキストとしてエンコードします。

CRT を PEM に変換

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

調査とメタデータ

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

ここにファイルを選択またはドロップ

100%プライベートなブラウザ内変換 - ファイルがデバイスから外部に出ることはありません

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

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

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

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

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

ASCII表現: -----BEGIN

標準化: IETF RFC 7468 / RFC 1421

技術仕様

コンテナアーキテクチャBase64 ASCII armored container bounded by '-----BEGIN [LABEL]-----' and '-----END [LABEL]-----' encapsulating DER binary structures
圧縮Uncompressed text format
バイトエンディアンASCII / UTF-8 text stream
色空間N/A (Cryptographic Container)
チャンネルと構造Certificates, Private Keys (RSA/EC/DSA), CSRs, Public Keys, and Certificate Revocation Lists
最大寸法Unbounded text stream (supports multiple chained certificates)
透過性Cleartext ASCII armored envelope
ストリーミングとプログレッシブSequential banner-by-banner streaming extraction

技術比較マトリックス: 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証明書ツールを使用して、標準の5ダッシュのヘッダーバナーを復元します。

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

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

既知の攻撃ベクター

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

防御的ベストプラクティス:

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

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 で開いて有効期限、発行者、ドメイン名をデコードできます。

関連するPEM変換ペア

CRT PEM

バイナリ形式のCRTセキュリティ証明書をBase64エンコードのPEMテキスト形式に変換し、Apache、Nginx、および最新のLinuxウェブサーバーと互換性を持たせます。

PEM CRT

PEMテキスト証明書をCRTバイナリ証明書に変換することで、ApacheサーバーやWindowsシステムがウェブセキュリティクレデンシャルを正しく読み取れるようになります。

P12 PEM

PKCS #12バンドルをPEM証明書に変換し、保護されたバイナリアーカイブから公開鍵と秘密鍵を抽出して、ウェブサーバー用のプレーンテキストファイルを作成します。

PEM P12

PEM証明書をPKCS #12バンドルに変換することで、公開証明書と秘密鍵を1つのパスワード保護されたファイルにまとめ、WindowsサーバーやWebブラウザへ簡単にインストールできるようにします。

DER PEM

DERバイナリ証明書をPEM証明書に変換することで、エンコーディングを生のバイナリバイトからBase64 ASCIIテキストに変更し、Webサーバーやテキストエディタで簡単に読み取れるようにします。

CER PEM

バイナリのCERセキュリティ証明書をBase64エンコードされたPEMテキストファイルに変換することで、管理者がセキュリティ鍵を簡単に読み取り、Webサーバーやアプリケーションの設定に貼り付けられるようにします。