証明書と秘密鍵の照合ツール
SSL 証明書と秘密鍵が同じペアかどうかを、ブラウザー内でそのまま確認できます。秘密鍵はデバイス上で処理され、アップロードされることはありません。
証明書と秘密鍵はすべてブラウザー内で解析・照合され、アップロードされることはありません。とはいえ、自分で管理していないオンラインツールに本番用の秘密鍵を貼り付けるのは避けてください。
鍵の形式を変換しますか? PPK ↔ PEM コンバーターをお試しください。
証明書と秘密鍵の照合ツール について
この証明書と秘密鍵の照合ツールは、X.509 証明書(または CSR)と秘密鍵が本当に同じペアかどうかを確認します。通常なら2つの openssl コマンドを実行して目視で比較する作業です。片方のボックスに証明書または CSR を、もう片方に秘密鍵を貼り付けると、MATCH か NO MATCH かを表示します。理由を示すために、それぞれの入力から公開鍵を導出し、正規形にシリアライズして、各々の SHA-256 フィンガープリントを表示します。フィンガープリントが同一ならペアは有効で、違いがあれば典型的な modulus の不一致です。RSA 鍵に対応し、暗号化された秘密鍵の任意のパスフレーズを扱い、解析できない PEM には明確なエラーを返します。すべてはブラウザー内で完全に動作するため、秘密鍵はデバイス上で処理され、アップロードされることはありません。
機能
- 証明書と秘密鍵が同じペアかを、明確な MATCH / NO MATCH の判定で確認
- CSR を、それを生成した秘密鍵と照合することも可能
- 各入力について SHA-256 の公開鍵フィンガープリントを表示し、一致・不一致の理由を正確に確認
- 貼り付けたのが証明書か CSR かを検出してラベル表示
- 暗号化された(PEM)秘密鍵の任意のパスフレーズを受け付け
- 不正な形式の PEM に対し、難解な失敗ではなく読みやすいエラーを報告
- PKCS#1 および PKCS#8 PEM 形式の RSA 鍵に対応
- 完全にクライアント側で動作するため、秘密鍵がデバイスから外に出ることはありません
証明書と秘密鍵の照合ツール の使い方
- 左のボックスに X.509 証明書または CSR を貼り付けます。
- 右のボックスに対応する秘密鍵を貼り付けます。
- 鍵が暗号化されている場合は、下のフィールドにパスフレーズを入力します。
- MATCH または NO MATCH の判定を読み、2つの公開鍵フィンガープリントを比較します。
例
入力
# The classic openssl equivalent this tool replaces:
openssl x509 -noout -modulus -in cert.pem | openssl sha256
openssl rsa -noout -modulus -in key.pem | openssl sha256
出力
MATCH
Cert key a1b2c3… (RSA 2048-bit)
Priv key a1b2c3…
Identical fingerprints — the certificate and key belong together.
2つの openssl modulus コマンドを実行してハッシュを比較する代わりに、2つのファイルを貼り付けて判定を読むだけです。
よくあるエラーとトラブルシューティング
- ペアになると思っていたのに NO MATCH と表示される。 — おそらく別々のペアの証明書と鍵を貼り付けたか、証明書を再発行した後に古い鍵を貼り付けています。2つのフィンガープリントを比較し、この証明書または CSR の作成にどの鍵が使われたかを再確認してください。
- 「Could not parse the certificate or CSR」と表示される。 — -----BEGIN CERTIFICATE----- と -----END CERTIFICATE----- の行を含む PEM ブロック全体を貼り付けているか確認してください。DER(.der/.cer)ファイルは先に PEM に変換する必要があります。
- 「Could not decrypt the private key」と表示される。 — パスフレーズ欄に正しいパスフレーズを入力してください。鍵が非対応の暗号を使っている場合は、鍵ツールでパスフレーズを外し、暗号化されていない PEM を貼り付けてください。
- EC 鍵が認識されない。 — 照合は現在、PEM 形式の RSA 秘密鍵に対応しています。EC 鍵の場合は、当面はお使いのツールで公開鍵を比較してください。
よくある質問
- 秘密鍵が証明書と一致するかを確認するにはどうすればよいですか。
- 証明書(または CSR)と秘密鍵を2つのボックスに貼り付けます。ツールはそれぞれから公開鍵を導出し、両方の SHA-256 フィンガープリントを表示して、一致すれば MATCH と報告します。これは openssl modulus のハッシュを比較するのと同じ結果を、コマンドラインなしで得られます。
- modulus の不一致とは何ですか。
- RSA では、証明書とその秘密鍵は同じ modulus を共有するため、同じ公開鍵を生成します。modulus の不一致は、証明書と鍵が別々のペア由来で一緒には機能しないことを意味します。たとえば、証明書の発行後に鍵を再生成した場合などです。
- 秘密鍵はどこかにアップロードされますか。
- いいえ。証明書・CSR・秘密鍵はすべてブラウザー内で解析・比較されます。秘密鍵はデバイス上で処理され、サーバーに送信されることはありません。
- CSR をその秘密鍵と照合できますか。
- はい。証明書の代わりに証明書署名要求(CSR)を貼り付けると、同じ方法で秘密鍵と照合されます。CSR を認証局に提出する前の確認に便利です。
- 暗号化された秘密鍵に対応していますか。
- はい。秘密鍵がパスフレーズで保護されている場合は、鍵ボックスの下のフィールドにパスフレーズを入力すると、ツールがローカルで復号して公開鍵を導出します。
- どの鍵の種類に対応していますか。
- PKCS#1 および PKCS#8 PEM 形式の RSA 秘密鍵に対応し、RSA の証明書や CSR と照合します。EC 鍵への対応は今後追加される可能性があります。
関連ツール
- PPK ↔ PEM 変換 — SSH 秘密鍵を PuTTY .ppk と OpenSSH/PEM(RSA・Ed25519)の間でブラウザ内でローカルに変換します。
- SSH 鍵ジェネレーター — Ed25519、RSA、ECDSA のSSH鍵ペアをブラウザ内で生成しダウンロードします。
- JWT デコーダー — JWTのヘッダーとペイロードをデコードし、exp/iat を確認します(検証なし)。
- ハッシュジェネレーター — Web Crypto API による SHA-256 / SHA-1 / SHA-384 / SHA-512。
- Basic 認証ジェネレーター — ユーザー名とパスワードから HTTP Basic 認証の Authorization ヘッダーを生成・デコードします。
すべての ArrayKit ツール