本文へスキップ

証明書デコーダー

Certificate Decoder

PEMやDERの証明書・CSRを解いて、サブジェクト・SAN・有効期間・鍵用途とチェーンの手がかりを示します。

X.509の証明書——PEMのブロック、`.crt`や`.cer`のファイル、あるいはチェーン全体——を読み解き、サブジェクト、発行者、有効期間、鍵、フィンガープリント、そしてブラウザが受け入れるかどうかを実際に左右する拡張を表示します。

🔒 ブラウザの中だけで動きますcertificatex509tlsdecode

証明書は、このページ自身の ASN.1 リーダーがこのタブの中でデコードします。アップロードはありません。そこが要点です。CSR も、社内の CA も、うっかり貼り付けた鍵も、他人のサーバーに送って読ませてよいものではありません。

証明書・束・CSR・公開鍵を置いてください

PEM でも DER でも — .pem、.crt、.cer、.der、.csr、または authorized_keys の一行。下に貼り付けても構いません。

この道具がしないこと

  • 署名を検証しません。上の「発行者」は名前の一致であって証明ではありません。自分で作った証明書には、どんな発行者名でも書けます。
  • どの認証局を信頼しているかは知りません。それは OS とブラウザの中にあり、ウェブページからは読めません。
  • 失効を確認しません。ご自分で確かめられるよう OCSP と CRL のアドレスは表示しますが、そこへ問い合わせるのは、この道具があえて行わないネットワーク通信です。

実際のサーバーが何を返しているか — チェーンの順序、プロトコルの版、期限 — を見るには、そのサーバーへの接続が要ります。SSL 点検ツールがその問いに答えます。

使い方

  1. PEMを貼り付けるか、ファイルをドロップします

    `-----BEGIN CERTIFICATE-----`のブロック1つでも、チェーンとして複数でも、DERのバイト列でも構いません。パースはこのタブの中で行われます。

  2. 日付と名前を確かめます

    有効期間は手元の時計に対して判定します。効いてくる名前はSubject Alternative Nameの拡張にあるもので、Common Nameではありません。2017年以降、CNを見ているブラウザはありません。

  3. フィンガープリントを見比べます

    SHA-256のフィンガープリントは、ピン留めの設定や、電話口の同僚が読み上げてくる値です。証明書全体に対して計算されるので、どこが変わっても違う値になります。

よくある質問

その証明書が信頼されているかどうかも確かめてくれますか

確かめません。証明書が自分について何と言っているかを読むだけです。信頼とは、システムがすでに持っているルートへ鎖がつながること、加えて失効の確認、加えて接続した相手のホスト名との一致であり、そのどれもデコーダー単体ではできません。

ブラウザは名前が一致しないと言うのに、CNは正しく見えます

2017年のChrome 58以降、ホスト名の照合でCommon Nameは無視されているからです。ホスト名はSubject Alternative Nameの拡張に入っていなければなりません。CNしか持たない証明書は、現代的な環境ではどこでも失敗します。

証明書をここに貼り付けても大丈夫ですか

証明書は、設計として公開されるものです。接続してくるすべてのクライアントにサーバーが手渡すものだからです。秘密鍵はそうではありませんし、このページは秘密鍵を必要としません。PEMのブロックに`PRIVATE KEY`と書いてあるなら、それはそもそもウェブページに入れるものではありません。

ここから渡せます

次の一手

このツールが出したものをそのまま受け取れる道具です。