証明書失効リスト
証明書の失効日時は、CRLには含まれないこともある。期限切れの証明書は全て無効であると見なせるが、期限が切れていない証明書が必ずしも有効とは限らない。実際の運用において証明書や鍵の管理に間違いがありうるため、CRLや他の証明書の有効性検証技術はPKIに必須である。注目すべき事例として、マイクロソフトの証明書が誤ってある個人に発行されたことがある。その人物は ActiveX Publisher Certificate システムを管理しているCA(ベリサイン)にマイクロソフトを装ってアクセスすることに成功した。マイクロソフトは暗号サブシステムにパッチを当て、その証明書が使われる前に状態をチェックする必要があると判断した。短期的修正として、関連するマイクロソフトのソフトウェア(主に Windows)にパッチが発行され、問題の2つの証明書が必ず「失効」とされるようにした。
CRLが用意される証明書は、X.509/公開鍵証明書であることが多い(最も多く使われているPKI手法であるため)。
証明書失効リスト(しょうめいしょしっこうリスト、英: Certificate Revocation List, CRL)は、公開鍵基盤 (PKI) における失効した(信頼できない)公開鍵証明書のリスト(正確には、証明書のシリアル番号のリスト)である。
RFC 5280 で定義されている証明書の失効理由は、以下の 2 つに大別できる。
有効な状態に戻すことができる。例えば、ユーザーが秘密鍵を紛失したか盗まれた可能性があると考えたときに一時的に証明書を停止させ、後日それが間違いで誰もその間秘密鍵にアクセスできなかったことが判れば、再度証明書を有効にできる。その場合、その証明書のシリアル番号はCRLから削除されることがある。
CRLは定期的に生成され、公開される。また、証明書が失効となった場合、即座にCRLを公開することもできる。CRLはCAが適切な証明書付きで発行する。たいていのCRLには次回発行予定日時がある。この日時は発行日時から 24 時間以内であることが多い。CRLはPKIを使ったアプリケーションが証明書の有効性を検証するのに使われる。
DNS偽装やDoS攻撃を防ぐため、CRLには発行者のデジタル署名が付与されている。たいていのCRLの発行者とCAは同一で、同じ鍵を共有するが、それぞれ別々で違う鍵を使うこともできる。CRLを使う前にその有効性を検証するためには、CRL発行者の証明書が必要であり、それは通常公共のディレクトリ・サービスにある。