デジタル証明書の有効期限が残っていても、その証明書が「無効」になるケースがあることをご存知でしょうか。秘密鍵の漏洩や、組織の解散、あるいは証明書の誤発行などがその代表例です。
前回の「認証局(CA)」の記事で、認証局の重要な役割として「失効管理」を紹介しました。今回は、ブラウザがどのようにして「この証明書は今この瞬間も本当に有効か」をリアルタイムに検証しているのか、その2つの主要な仕組みであるCRLとOCSPについて詳しく解説します。
なぜ有効期限内の「失効確認」が重要なのか?
デジタル証明書には、通常1年程度の「有効期間」が定められています。しかし、以下のような事態が発生した場合、その証明書は直ちに信頼できないものとなります。
- 秘密鍵の漏洩: サーバー管理者の不注意やサイバー攻撃によって、暗号化の要である秘密鍵が流出した場合。
- ドメイン所有権の変更: 会社が解散したり、ドメインを手放したりした際、旧所有者の証明書が残っている場合。
- CAによる誤発行: 認証局の審査ミスにより、不適切な相手に証明書を発行してしまった場合。
一度発行され、外部に渡された証明書データを、認証局が直接消去することはできません。そのため、「この証明書はもう無効です」という情報を外部から参照できる仕組みが必要になるのです。
CRL(証明書失効リスト)の仕組みと運用課題
CRL(Certificate Revocation List)は、最も古くから利用されている伝統的な失効確認の方法です。
CRLの動作フロー
認証局(CA)は、失効させた証明書のシリアル番号を一覧にした「ブラックリスト」を作成し、誰でもダウンロードできる場所に公開します。ブラウザなどのクライアントは、Webサイトにアクセスする際、以下の手順を踏みます。
- 証明書に記載されている「CRL配布点(CDP)」のURLを確認する。
- そのURLから巨大なリスト(CRL)をダウンロードする。
- 今見ている証明書のシリアル番号が、リスト内に載っていないかを照合する。
実務上の課題
CRLには「データの肥大化」という深刻な問題があります。
- 通信負荷: 失効した証明書が増えるほどリストは重くなり、数MBに達することもあります。これをアクセスするたびに取得(またはキャッシュ)するのは、Webサイトの表示速度を著しく低下させます。
- 即時性の不足: CRLは数時間〜数日おきに更新されるため、失効してからリストに反映されるまでに「空白の時間」が生じるリスクがあります。
OCSP(Online Certificate Status Protocol)による高速化
CRLの弱点を克服するために登場したのが、OCSPです。
OCSPの動作フロー
ブラウザはリスト全体をダウンロードする代わりに、「OCSPレスポンダ」と呼ばれる専用サーバーに対してピンポイントで問い合わせを行います。
- ブラウザが「このシリアル番号の証明書は有効か?」とリクエストを送る。
- OCSPレスポンダが「有効(Good)」「失効(Revoked)」「不明(Unknown)」のいずれかで即答する。
メリットと新たな課題
OCSPはデータ量が極めて少なく、非常に高速です。しかし、新たな懸念も生まれました。
- プライバシー問題: 「どのユーザーがどのサイトを見ようとしているか」という情報が、問い合わせ先の認証局に伝わってしまいます。
- 可用性の依存: もし認証局のOCSPレスポンダがダウンすると、証明書の検証ができなくなり、サイトにアクセスできなくなる(あるいは警告が出る)可能性があります。
最新の標準:OCSPステープリング(Stapling)
プライバシーと速度の問題を同時に解決する決定打として、現在広く普及しているのが「OCSPステープリング」です。
これは、Webサーバー自身が、あらかじめ認証局から「この証明書は有効です」という署名付きの回答を取得しておき、SSL/TLSハンドシェイクの際に証明書と一緒にユーザーへ提示する仕組みです。
- メリット1: ユーザーが認証局に直接問い合わせる必要がないため、プライバシーが守られる。
- メリット2: 検証プロセスがSSL通信の一部に含まれるため、体感速度が最も速い。
まとめと試験(FE/AP)対策のポイント
情報処理技術者試験(FE/AP)では、CRLとOCSPの「仕組みの違い」と「負荷の差」がよく問われます。
| 特徴 | CRL | OCSP |
| 確認方法 | リスト(ブラックリスト)のダウンロード | 個別サーバーへのリアルタイム問い合わせ |
| データ量 | 大きい(失効数に比例して増える) | 極めて小さい(固定サイズ) |
| 検証場所 | クライアント側(ブラウザ) | サーバ側(OCSPレスポンダ) |
| 即時性 | 更新間隔に依存するため、やや遅い | 非常に高い(リアルタイム) |
実務におけるサーバー構築時には、単に証明書を貼るだけでなく、「OCSPステープリング」を有効にすることが、SEO対策(表示速度)とセキュリティの両面で最善の選択となります。
これら失効管理の仕組みを含め、信頼を支えるすべての要素を統合した枠組みを「PKI(公開鍵基盤)」と呼びます。


コメント