- ベストアンサー
PKI(公開鍵基盤)について教えて
- PKI(公開鍵基盤)は、ユーザが電子証明書の正当性をチェックするために、CA(Certificate Authority)と連携する仕組みです。
- CAは階層構造になっており、ユーザは取引先の電子証明書の正当性を近くのCAに照会することができます。
- ルートCAは自己署名を行い、自らの正当性を証明することで、CAになりすましを防止しています。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
まず、「証明書発行の流れ」と「証明書の正当性を検証する」を混同されています。 ● 証明書発行の流れ ルートCAは自らの秘密鍵で自己署名を行い、自己証明書(ルート証明書)を発行します。 中間認証局はCSRを作成し、それをルートCAにルートCAの秘密鍵で署名してもらい、中間認証局証明書として受け取ります。 取引先はCSRを作成し、それを中間認証局に中間認証局の秘密鍵で署名してもらい、個人証明書またはSSLサーバ証明書として受け取ります。 ⇒ 秘密鍵で署名するのはそれぞれの証明書発行の時だけです。 ● 証明書の正当性を検証する ユーザが取引先の電子証明書の正当性を検証するには、パソコンの中に入っている証明書で信頼チェーンが構築されるか確認します。 -WindowsでSSLサーバ証明書の場合- Internet Explorer のメニューから、ツール → インターネットオプション → コンテンツ・タブ → 証明書ボタン → 信頼されたルート証明機関 を開いてください。 ここに入っているのが、“なりすまし”では無いと判断されたルートCAの証明書です。 ユーザが取引先のSSLサーバにアクセスすると、取引先のSSLサーバ証明書を受け取ります。 このとき、そのSSLサーバ証明書が上記の信頼されたルート証明機関から直接発行されていれば、その時点でそのSSLサーバ証明書は正当であると判断されます。 ただし、同じく Internet Explorer のメニューから、ツール → インターネットオプション → 詳細設定タブ → セキュリティ・グループ → サーバの証明書失効を確認する にチェックが入っている場合は、CAの証明書の中にある「CRL配付ポイント」から失効リストを読み取り、そのSSLサーバ証明書が失効していないことを確認します。 SSLサーバ証明書が中間認証局から発行されている場合、上記の手順ではルートCAの証明書にはたどり着けません。ですので、中間証明書とルートCAの証明書を(Apacheであれば)SSLCACertificateFile に設定しないといけません。SSLCACertificateFile の中身はSSLサーバ証明書と共にユーザに送られます。 以上が実際の電子証明書の正当性確認です。 ご覧になられているテキストとは、まるで異なると思われるのでは。 とりあえず、理論は理論、実際は実際、別々に理解された方が良いですよ。