# CRLite是什么？定义、例子与常见误区

> CRLite 是 Mozilla 为 Firefox 打造的压缩吊销数据集，浏览器无需联系 CA，就能在本地判断公开记录的证书是否已被吊销。

Source: https://ssl.sh/zh/glossary/crlite/
Last updated: 2026-11-10

CRLite 是 Mozilla 基于 2017 年一项学术研究为 Firefox 实现的吊销检查方案。它把参与 CA 在 [证书透明度](https://ssl.sh/zh/glossary/certificate-transparency/)日志中证书的吊销状态压缩成一组紧凑的过滤器：Mozilla 的服务器收集各 CA 发布的 CRL，结合 CT 数据计算后定期推送给 Firefox，浏览器在本地就能回答“这张证书吊销了吗”。由于过滤器是针对全部已知证书构建的，对覆盖范围内的证书可以给出确定的答案。

## 为什么重要
传统吊销检查有两难：实时查询 [OCSP](https://ssl.sh/zh/glossary/ocsp/) 会泄露浏览记录，而且通常是软失败；下载完整的 [CRL](https://ssl.sh/zh/glossary/crl/) 对浏览器来说又太重。CRLite 两头都避开了：CA 看不到用户访问了哪个站点，握手不增加延迟，攻击者也无法通过屏蔽响应服务器来绕过检查。它依赖 CA 发布完整的 CRL 并向根证书计划披露，而 SC-063 投票把 CRL 改为强制，正好保证了这一数据来源。Chrome 走的是另一条路：CRLSets，只覆盖经过筛选的一部分吊销记录。

## 例子
假设 example.com 的私钥泄露，CA 吊销了它的证书：序列号出现在 CA 下一版 CRL 中，Mozilla 的处理流程把它纳入下一次 CRLite 更新，此后 Firefox 用户访问 example.com 就会看到证书已被吊销的错误（SEC_ERROR_REVOKED_CERTIFICATE）。即使攻击者拦截了所有发往 CA 的流量，这个结果也不受影响。

## 常见误区
- **CRLite 就是提前下载好的 CRL。** 它是从多家 CA 的 CRL 推导出的压缩数据，体积远小于原始 CRL。
- **类似布隆过滤器的结构必然有误报。** CRLite 的过滤器针对全部已记录的证书构建，对覆盖范围内的证书给出精确结果。
- **Chrome 也用 CRLite。** Chrome 用的是自家的 CRLSets，CRLite 是 Mozilla 的机制。

## 相关术语

- [CRL](https://ssl.sh/zh/glossary/crl/): CRL 是由 CA 签名并定期重新发布的证书吊销列表，列出它在证书到期前就已吊销的证书序列号。
- [证书吊销](https://ssl.sh/zh/glossary/revocation/): 证书吊销是 CA 在证书到期前宣布其作废的操作，通过 CRL 或 OCSP 对外公布，使客户端不再信任这张证书。
- [OCSP](https://ssl.sh/zh/glossary/ocsp/): OCSP 是 RFC 6960 定义的在线证书状态协议，客户端可以向 CA 的响应服务器查询某一张证书当前是有效、已吊销还是未知。
- [证书透明度](https://ssl.sh/zh/glossary/certificate-transparency/): 证书透明度（CT）是一套公开、只可追加的日志系统，记录所有公开信任的 TLS 证书，让任何人都能审计 CA 签发了什么。
- [CT 日志](https://ssl.sh/zh/glossary/ct-log/): CT 日志是由独立运营方维护、可公开审计且只可追加的服务器，用 Merkle 树记录证书，并签发承诺收录的时间戳。
- [短期证书](https://ssl.sh/zh/glossary/short-lived-certificate/): 短期证书是有效期只有几天的 TLS 证书，靠快速过期而不是吊销来限制被盗证书可被滥用的时间。
