WMW

CSRビューア

Free

PEMエンコードされた証明書署名要求(PKCS#10)をデコードします: Subject、公開鍵、署名アルゴリズム、Subject Alternative Namesを表示し、自己署名が実際に有効かどうかを確認します。

完全にブラウザ内で動作します。署名検証のためであっても、CSRがどこかにアップロードされることはありません。

最近のアクティビティ

全員に公開されています。すべての訪問者による直近20回の使用履歴を新しい順に表示します。

Parsed a CSR and checked its self-signature.

2時間前

Parsed a CSR and checked its self-signature.

2時間前

Parsed a CSR and checked its self-signature.

2時間前

Parsed a CSR and checked its self-signature.

2時間前

Parsed a CSR and checked its self-signature.

2時間前

コメント (0)

このツールは役に立ちましたか?コメントを残したり、コツを共有したり、改善方法を教えてください。

ゲストのコメントは公開前に確認されます。 ログイン すると即座に投稿できます。

まだコメントはありません。最初にご意見をお寄せください!

このツールの機能

CSR Viewerは、PEMエンコードされた証明書署名要求(PKCS#10)をデコードし、Subjectフィールド、公開鍵の詳細、署名アルゴリズム、Subject Alternative Namesを平文で表示し、そのCSRの自己署名が含まれる公開鍵に対して実際に有効かどうかを確認します。

仕組み

CSRはDERエンコードされたASN.1構造をPEM base64で包んだものです。このツールはその構造を1バイトずつデコードします。入れ子になった各TLV(タグ-長さ-値)要素を読み進めて、Subjectの識別名、SubjectPublicKeyInfoブロック(RSAの法と指数、またはEC曲線と点)、Subject Alternative Namesを保持する任意のextensionRequest属性、そして外側の署名アルゴリズムと署名バイトに到達します -- すべてクライアント側で行われ、サーバー側のASN.1ライブラリは一切使用しません。

自己署名を確認するために、このツールはブラウザのWeb Crypto APIを使ってCSR自身の公開鍵を再度インポートし、署名が実際にカバーしているCertificationRequestInfoブロックの正確なバイト列に対して検証するよう依頼します。ECDSA署名の場合、DERエンコードされたr/s値はまずWeb Cryptoが期待する固定長の生形式に変換されます。一致すれば、秘密鍵を保持する本人がこの正確なCSRを本当に作成したことを意味し、不一致であれば署名後に改変または誤って組み立てられたことを意味します。

解決できる問題

よくある質問

›このツールは私の秘密鍵を見ますか?

いいえ。CSRには秘密鍵が含まれることは決してありません -- 公開鍵、本人情報、そして秘密鍵で作成された署名のみが含まれます。このツールは貼り付けられた内容を読み取るだけで、完全にブラウザ内で動作し、サーバーへ何も送信しません。そのため、誤ってCSRを貼り付けたとしても、漏えいする機密情報は何もありません。

›「自己署名が有効」チェックは実際に何を証明するのですか?

これは、CSRが、その中の公開鍵に対応する秘密鍵を管理する本人によって署名されたこと、つまりCSRが生成以降に改ざんまたは破損していないことを証明します。Subjectフィールド(会社名、ドメインなど)が真実であることは証明しません。本人確認は、発行時に認証機関が行う役割であり、CSR単体で証明できるものではありません。

›一部のCSRで「検証できませんでした(このブラウザでは未対応のアルゴリズム)」と表示されるのはなぜですか?

ブラウザは、特定のアルゴリズムの集合しか対応していないWeb Crypto APIを使って署名を検証します。このツールは一般的なもの(SHA-1/256/384/512を使ったRSAおよびECDSA)に対応していますが、その範囲外の珍しい、または古いアルゴリズムで署名されたCSRはクライアント側で検証できません。それ以外のフィールドは通常どおりデコードされます。

›私のCSRにSubject Alternative Namesがないのはなぜですか?

SANはCSRにおいて任意であり、CSRが生成されたときに明示的に要求された場合(例えばopensslの-addext "subjectAltName=..."オプションや、設定ファイルの[alt_names]セクションを通じて)にのみ表示されます。特に古い、あるいは手動で作成された多くのCSRでは、そもそもSANが要求されていません。

›CSRと証明書の違いは何ですか?

CSRは生成して認証機関(CA)に送るリクエストであり、それ自体がサーバーにインストールされることはありません。証明書は、CAが本人確認を行った後に返してくるもので、CSRと同じ公開鍵とSubject情報に加えて、CA自身の署名、有効期間、シリアル番号が含まれています。

関連ツール