多くのオンライン SSL ツールは素材をサーバーへ送って処理します——秘密鍵にとって、それは決してマシンの外へ出してはいけない秘密を手渡すことです。このワークベンチはブラウザ内蔵の Web Crypto エンジンですべての解析と検証を行います。素材を運ぶリクエストは一切なく、保存も記録もありません。貼り付け中に network タブを見れば自分で確認できます。
証明書には鍵ペアの公開鍵側が埋め込まれています。証明書の公開鍵パラメータ(RSA の modulus と exponent、EC なら曲線上の座標)が秘密鍵から導出した公開パラメータと一致すれば、同じペアです——これは openssl で modulus のハッシュを見比べる作業そのもので、目視が不要になっただけです。CSR も同様に公開鍵を持つため、証明書がある CSR から発行されたかも判定できます。
ブラウザが信頼するのは少数のルート CA だけです。サーバー証明書は通常、中間証明書によって署名され、中間はルートによって署名されます。サーバーは完全なチェーン(リーフ+中間)を提示しなければ、ブラウザは信頼済みルートまで辿れません。中間が欠けると、証明書自体は正しくてもチェーンエラーになるクライアントがあります。このワークベンチは貼り付けた証明書間の発行署名を一つずつ検証し、リンクが繋がるかを確認します——ルートストアのふりはしません。
このテーマに関するよくある疑問と回答をまとめました。
安全です——すべての処理はブラウザ内の Web Crypto で行われます。素材はアップロード・保存・記録されず、analytics にも送られません。それを運ぶネットワークリクエスト自体が存在せず、貼り付け中に network タブで確認できます。もちろん基本的な衛生は守ってください:信頼できるマシンで操作を。
両方を入力欄に貼り付けてください——ワークベンチが秘密鍵から公開鍵を導出し、証明書の公開鍵パラメータと比較します。openssl x509 -modulus と openssl rsa -modulus のハッシュ比較をブラウザ側で行うのと同等で、16 進数を目視する代わりに明確な合否判定が出ます。
判定には欠けている発行者名が表示されます。CA のダウンロードバンドルには通常、中間証明書が含まれています(chain.pem や ca-bundle と呼ばれることが多い)。ここに貼り付けてリンクが繋がることを確認し、完全なチェーン(fullchain.pem=リーフ+中間)をサーバーに配置してください。
PEM ブロック:証明書(BEGIN CERTIFICATE)、CSR(BEGIN CERTIFICATE REQUEST)、PKCS#8 秘密鍵(BEGIN PRIVATE KEY)、旧式 PKCS#1 RSA 鍵(BEGIN RSA PRIVATE KEY)、公開鍵(BEGIN PUBLIC KEY)に対応。アルゴリズムは RSA と EC(P-256/P-384/P-521)、Ed25519 はブラウザの対応次第です。暗号化秘密鍵と旧式 SEC1 EC 鍵は変換用の openssl コマンドを添えて明示的にお断りします——バイナリ DER ファイルは受け付けないため、先に openssl x509 -inform der で PEM に変換してください。