PKIと認証局(CA)・証明書失効(CRL/OCSP)入門

公開鍵の正しさを保証するPKIとCA、X.509証明書、失効確認のCRLとOCSPの違いを整理する。

編集・検証: 情報セキュリティマネジメントスタディ編集部 公式情報: IPA 情報セキュリティマネジメント試験公式ページ 制作・検証方針

今回は、公開鍵が「本物」だと保証する仕組みであるPKIと認証局(CA)、そして証明書を無効化するCRLとOCSPを学ぶわ。

紺野 アキ(普段) 紺野 アキ

デジタル署名で公開鍵で検証するのは分かったけど、その公開鍵が本物かどうかは誰が保証するの?

銀城 ナディア 先生(笑顔) 銀城 ナディア 先生

すごくいい疑問ね。
それを解決するのがPKI(公開鍵基盤)よ。
信頼できる第三者機関である認証局(CA)が、公開鍵の持ち主を保証してくれるの。

灰原 さや(普段) 灰原 さや

CAが発行するのがデジタル証明書ですよね。

銀城 ナディア 先生(普段) 銀城 ナディア 先生

そう。
デジタル証明書(公開鍵証明書)には、所有者の情報と公開鍵が入っていて、それにCAがデジタル署名を付けているの。
フォーマットはX.509という規格が使われるわ。

薔薇崎 ねむ(普段) 薔薇崎 ねむ

CAの署名が付いてるってことは…CAの公開鍵で証明書を検証するんですかぁ?

銀城 ナディア 先生(笑顔) 銀城 ナディア 先生

そのとおり。
上位のCAがさらに上位のCAに保証され…とたどっていくと、最上位のルート認証局(ルートCA)に行き着くの。
この連鎖を証明書チェーンと呼ぶわ。

紺野 アキ(びっくり) 紺野 アキ

じゃあルートCAは誰が保証するの? 無限に続くの?

銀城 ナディア 先生(普段) 銀城 ナディア 先生

ルートCAは自分で自分に署名した自己署名証明書を使うの。
ルートCAは『無条件に信頼する』前提で、あらかじめOSやブラウザに組み込まれているのよ。

灰原 さや(普段) 灰原 さや

証明書には有効期限がありますが、期限内でも無効にしたい場合はどうするのですか?

銀城 ナディア 先生(普段) 銀城 ナディア 先生

秘密鍵が漏えいした時などね。
その場合CAは証明書を失効させるの。
失効した証明書の一覧がCRL(証明書失効リスト)よ。

薔薇崎 ねむ(普段) 薔薇崎 ねむ

リストをダウンロードして、その中にあったら使わない…ってことですねぇ。

銀城 ナディア 先生(笑顔) 銀城 ナディア 先生

そう。
でもCRLは全件のリストだから、増えると大きくなって効率が悪いの。
そこで、1件ずつリアルタイムに問い合わせるOCSPという仕組みが使われるわ。

灰原 さや(普段) 灰原 さや

OCSPは、その証明書が『有効・失効・不明』のどれかをオンラインで即座に確認できるのですね。

銀城 ナディア 先生(普段) 銀城 ナディア 先生

ええ。
CRLは一覧をまとめて取得、OCSPは1件ずつオンライン照会、という違いを押さえてね。
どちらも『その証明書がまだ有効か』を確認するための仕組みよ。

紺野 アキ(笑い) 紺野 アキ

証明書のおかげで、公開鍵がなりすましされてないって安心できるんだね!

確認クイズ

OCSP(Online Certificate Status Protocol)の説明として、最も適切なものはどれか。

  1. 認証局が発行するデジタル証明書のフォーマットを定めた規格である。
  2. 失効したデジタル証明書の一覧をまとめて配布する仕組みである。
  3. デジタル証明書が失効していないかを、オンラインでリアルタイムに問い合わせる仕組みである。
  4. 利用者の公開鍵と秘密鍵のペアを生成し、鍵を配送する仕組みである。
こたえを見る

正解: 3. デジタル証明書が失効していないかを、オンラインでリアルタイムに問い合わせる仕組みである。

OCSPは証明書の有効性(失効していないか)をオンラインで1件ずつリアルタイムに問い合わせるプロトコルで、ウが正解。アはX.509の説明。イはCRL(証明書失効リスト)の説明で、まとめて配布する点がOCSPと異なる。エは鍵管理・鍵配送の話であり、OCSPの役割ではない。

銀城ナディア先生、灰原さや、薔薇崎ねむ、紺野アキがキャンプでカレー作りを楽しむ様子

🔖 この記事の関連書籍

Amazonアソシエイトリンクを含みます。他分野は おすすめ書籍ページ へ。