スポンサーリンク

【応用情報技術者試験】CA(認証局)の公開鍵

CA(認証局)の公開鍵は、CAが証明書に付けた署名を検証するための鍵です。CAの秘密鍵で署名を生成し、対応するCAの公開鍵で検証します。サーバの公開鍵とは、持ち主と役割が違います。

CAの鍵とサーバの鍵を区別する

鍵主な役割
CAの秘密鍵発行する証明書へ署名を生成する
CAの公開鍵そのCAの署名を検証する
サーバの公開鍵サーバ証明書に含まれ、サーバの認証などに使う
サーバの秘密鍵サーバが保管し、対応する鍵を持つことを証明する処理などに使う

証明書の署名の検証は、発行元の公開鍵を使います。署名方式を問わず「公開鍵で復号する」と覚えるのではなく、公開鍵で検証すると整理します。

ルート・中間CA・サーバ証明書の関係

ブラウザなどが信頼するルートCAを基点として、中間CAを経由してサーバ証明書へつながる証明書の連鎖を検証します。サーバ証明書を中間CAが発行した場合、その署名は中間CAの公開鍵で確認します。ルートCAの公開鍵だけで、すべてのサーバ証明書の署名を直接検証するわけではありません。

署名が正しいだけでは検証完了ではない

確認する観点例
信頼の連鎖信頼するルートへつながるか
有効期間期限内か
利用条件CAとして発行できるか、鍵の用途は適切か
接続先サーバ証明書の名前が接続先に対応するか
失効失効情報やクライアントの方針を確認する

証明書の署名は、その内容が発行元によって署名されたことを確認するためのものです。それだけで接続先が対応する秘密鍵を持つことの証明まで済むわけではありません。TLSのハンドシェイクでは、秘密鍵の所持を示す処理なども行います。

PKIの中での位置付け

PKI(公開鍵基盤)は、公開鍵を信頼して利用するために、証明書の発行・検証・失効などを組み合わせる仕組みです。CAの公開鍵、証明書、サーバの鍵をそれぞれの役割に分けると、HTTPSの理解にもつながります。

理解を確かめる確認問題

中間CAがサーバ証明書を発行しました。その証明書の署名を直接検証するのは、誰の公開鍵でしょうか?

解答・解説を見る

発行元である中間CAの公開鍵です。さらに中間CAの証明書などを検証し、信頼するルートへつながることや証明書の条件も確認します。

参考:RFC 5280:X.509証明書と検証

コメント