PEMをCRTに変換

PEMテキスト証明書をCRTバイナリ証明書に変換すると、ApacheサーバーやWindowsシステムでWebセキュリティ認証情報を正しく読み取れるようになります。

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

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

または貼り付け Ctrl+V

ファイルを待つ間、Code Rainで遊べます

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

フォーマットの比較と技術仕様

仕様PEMCRT
MIMEタイプapplication/x-pem-fileapplication/x-x509-ca-cert
タイプBase64 ASCII証明書コンテナX.509公開証明書
圧縮なし(Base64アーマー化)なし
標準仕様IETF RFC 7468ITU-T X.509 / RFC 5280
マジックバイトヘッダー2D 2D 2D 2D 2D 42 45 47 49 4E (-----BEGIN CERTIFICATE / RSA PRIVATE KEY)30 82 (DER SEQUENCE) or -----BEGIN CERTIFICATE----- (PEM text)

フォーマットの概要と用途

セキュリティ証明書は、ユーザーとサーバー間のトラフィックを暗号化してウェブサイトを保護します。PEM形式はBase64 ASCIIテキストを使用しているため、基本的なテキストエディタで簡単に開いたり、メールメッセージにコピーアンドペーストしたりできます。しかし、多くのサーバー環境、ハードウェアファイアウォール、および特定のオペレーティングシステムではテキスト形式が拒否されます。代わりにCRT形式が必要となります。 管理者は、ApacheウェブサーバーからWindowsのインターネットインフォメーションサービス環境やネットワークアプライアンスにセキュリティ証明書を移行する際、この不一致によく直面します。Windowsマシンやハードウェアロードバランサーは、ファイルがバイナリ構造を使用することを想定しています。ファイル形式を変更することで、これらのシステムはセキュリティキーを適切に読み取り、訪問者にエラーをスローすることなく安全なHTTPS接続を確立できるようになります。

技術仕様とコーデックの詳細

PEM形式はMIMEタイプapplication/x-pem-fileを使用し、特定のヘッダー行とフッター行の間にラップされたBase64 ASCIIエンコーディングに依存しています。これらの境界線は -----BEGIN CERTIFICATE----- および -----END CERTIFICATE----- と記述されます。CRT形式はMIMEタイプapplication/x-x509-ca-certを使用し、まったく同じ暗号公開鍵データをDistinguished Encoding Rulesとして知られるバイナリ構造で保存します。どちらの形式も圧縮を使用しないため、両方のファイルには圧縮オーバーヘッドが一切ありません。変換プロセスは完全にロスレスです。これは、基盤となる暗号公開鍵データの1ビットも変更することなく、テキストエンコードされたBase64バイトを生のバイナリバイトに単に翻訳しているためです。

OSとブラウザの互換性

証明書の拡張子から、内容がDER形式かPEM形式かは判断できません。Linuxのサーバーソフトウェアは一般にPEMを受け付けますが、Windowsの証明書ツールや機器ではDERなど別のコンテナが必要な場合があります。製品が指定する入力形式を確認してください。ブラウザーは信頼ストアを使うため、サーバー証明書ファイルをページの内容として開くわけではありません。

役立つ情報

証明書を本番ウェブサーバーに適用する前に、OpenSSLコマンドを使用してモジュラス値を確認し、秘密鍵が新しく変換されたCRTファイルに一致していることを常に検証してください。

よくある質問

品質を落とさずにPEM証明書をCRT証明書に変換するにはどうすればよいですか?

変換は完全にロスレスです。両方のファイル形式には、まったく同じX.509暗号公開鍵データが保存されます。ファイルの変換により、基盤となるセキュリティキーを変更することなく、コンテナのエンコーディングがBase64 ASCIIテキストからバイナリバイトに変更されるだけです。

PEM証明書とCRT証明書の違いは何ですか?

PEMファイルは、Base64エンコーディングと人間が読めるヘッダー行を使用するテキストベースのコンテナです。CRTファイルは、特定のオペレーティングシステムやサーバーハードウェアで必要とされる生バイト形式でまったく同じ証明書データを保持するバイナリコンテナです。