• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ssl サーバ証明書について)

サーバ証明書とルート証明書のチェック方法について

このQ&Aのポイント
  • SSLサーバ証明書やルート認証局の自己証明書のチェック方法についての解説です。
  • クライアントがSSLサーバから受け取ったサーバ証明書とルート証明書をチェックする方法について説明しています。
  • パソコンには事前にインストールされているルート証明書を使用して、ルート証明書の正当性をチェックし、その後にサーバ証明書の正当性をチェックしています。

質問者が選んだベストアンサー

  • ベストアンサー
  • kadusaya2
  • ベストアンサー率48% (114/235)
回答No.1

ITproの説明が少し間違ってますね。 サーバが送ってくるのは、 「ルート認証局の自己証明書」では無くて、 「ルート認証局の自己証明書+中間認証局の証明書」です。 apacheで言えば、SSLCertificateChainFileに設定した内容です。 (SSLCACertificateFileでは無いですよ) 中間認証局が無ければルート証明書だけになるので、それでカンチガイしているのでしょう。 原則としては、サーバが送ってくる認証局の証明書を正当と見なすことはしません。 サーバが不正を目的としているならば、サーバ証明書も、それを発行した認証局の証明書も信用できません。 なので、サーバが送ってきた「ルート認証局の自己証明書」を正当性チェックしたりしません。 ただし、サーバ証明書の正当性チェックのための参考にはします。 では、どうやって正当性チェックを行っているかと言うと・・・。 (以下、WindowsでIEの場合で説明します) まず、どこかのSSLサイトを開いて、サーバ証明書を表示してください。 「詳細」タブをクリックして、その中の「機関キー識別子」を見てください。 続けてIEのメニューバーから、ツール → インターネットオプション → コンテンツタブ → 証明書ボタン → 信頼されたルート証明機関 を開きます。 ここに表示されているのが、「パソコンの中にもともと入っている証明書」です。 サーバ証明書の機関キー識別子と、信頼されたルート証明機関の中から機関キー識別子が、一致する証明書を探し出します。 ブラウザは、この機関キー識別子が一致した証明書を “サーバ証明書を発行した認証局の証明書” と見なします。 で、その認証局の証明書に入ってる公開鍵を使ってサーバ証明書の署名を確認し、正しければ “正当である” と判断するワケです。 サーバ証明書が中間認証局から発行されている場合、その中間認証局の証明書は 「パソコンの中にもともと入って “いない” 証明書」 ですので、上記のチェックは失敗します。 ここで、先に書いた「ルート認証局の自己証明書+中間認証局の証明書」が必要になってきます。 サーバ証明書と一緒にこれらの証明書を送ることで、ブラウザは サーバ証明書 → 中間認証局 → ルート認証局 にたどり着くことができるワケです。 ただし、正当性チェックはあくまでも「パソコンの中にもともと入っている証明書」で行われ、サーバが送ってきたルート証明書は使用しません。 以上です。

y_mikami19
質問者

補足

kadusaya2・・・様 非常に丁寧なご回答ありがとうございます。 以下 質問をさせてください。 1. その認証局の証明書に入ってる公開鍵を使ってサーバ証明書の署名を確認し・・・ Q1 サーバから送られるルート証明書は、あくまでもキー識別子を確認するためだけに照合され 一致したら、パソコンに入っている公開鍵を用いるのでしょうか? 上記があっているという認識で、もともとパソコンに入っているルート認証局証明書の公開鍵はどのようにとりだすのでしょうか? 2. サーバ証明書と一緒にこれらの証明書を送ることで、ブラウザは サーバ証明書 → 中間認証局 → ルート認証局 にたどり着くことができるワケです。 Q2 ルート認証局の公開鍵を取り出し、それを用いて中間認証局の公開鍵を取り出しさらにサーバ証明書 に含まれている公開鍵を取り出すという順番ではないのでしょうか? 以上 宜しくおねがいいたします。

その他の回答 (1)

  • jjon-com
  • ベストアンサー率61% (1599/2592)
回答No.2

> その確認方法は簡単だ。(中略)一致するかを確認し, > 一致したら受信した証明書は信頼できると判断する。 と,質問文にあったリンク先に書かれています。 何が一致するのか,というと,それはハッシュ値(拇印)でしょう。 http://okwave.jp/qa/q5127755.html の私の過去の回答ANo.1~ANo.3

関連するQ&A