# OCSP（在线证书状态协议）是什么？定义、例子与常见误区

> OCSP 是 RFC 6960 定义的在线证书状态协议，客户端可以向 CA 的响应服务器查询某一张证书当前是有效、已吊销还是未知。

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

OCSP 是一种“一问一答”式的吊销查询协议，规范见 [RFC 6960](https://www.rfc-editor.org/rfc/rfc6960)。客户端把证书序列号，以及签发者名称和公钥的哈希，发到证书 [AIA](https://ssl.sh/zh/glossary/aia/) 扩展里写明的响应地址，CA 返回一个带签名的结果：good（有效）、revoked（已吊销）或 unknown（未知）。每个响应都带有 thisUpdate 和 nextUpdate 时间，在过期前可以缓存。

## 为什么重要
OCSP 原本是为了替代体积较大的 [CRL](https://ssl.sh/zh/glossary/crl/)，但缺点同样明显：每次查询都会让 CA 知道用户正在访问哪个网站；首次连接要多等一次网络往返；而且绝大多数客户端采用“软失败”，查不到就直接放行。Chrome 很早就不再对普通证书做实时 OCSP 查询，而是依赖自己推送的吊销列表。CA/B 论坛 SC-063 号投票自 2024-03-15 起把 OCSP 改为可选、CRL 改为强制；Let's Encrypt 也已在 2025-08-06 关闭了 OCSP 响应服务。证书里仍有 OCSP 地址的服务器，应当开启 [OCSP Stapling](https://ssl.sh/zh/glossary/ocsp-stapling/)，由服务器代为获取响应。

## 例子
先取出响应地址，再用 OpenSSL 查询：

```bash
openssl x509 -in cert.pem -noout -ocsp_uri
openssl ocsp -issuer intermediate.pem -cert cert.pem \
  -url http://ocsp.example.com -resp_text
```

返回 `cert.pem: good`，并带有 This Update 和 Next Update 时间，就是正常。第一条命令没有任何输出，说明证书里根本没有 OCSP 地址，这对只发布 CRL 的 CA 来说是正常现象，并不代表证书有问题。

## 常见误区
- **浏览器每次连接都会查 OCSP。** Chrome 对普通证书并不做实时 OCSP 查询；做查询的客户端在响应服务器不可达时一般也会直接放行。
- **每张证书都有 OCSP 地址。** SC-063 之后 CA 可以只发布 CRL，2025-05-07 以后签发的 Let's Encrypt 证书都不再包含 OCSP 地址。
- **unknown 就等于已吊销。** unknown 只表示响应服务器不认识这个序列号，常见原因是查错了签发者证书或响应地址。

## 相关术语

- [OCSP Stapling](https://ssl.sh/zh/glossary/ocsp-stapling/): OCSP Stapling 是 TLS 服务器把 CA 签名、带有效期的 OCSP 响应随握手一起发给客户端的机制，浏览器因此不必再自己去问 CA。
- [OCSP Responder](https://ssl.sh/zh/glossary/ocsp-responder/): OCSP Responder 是 CA 运营的 HTTP 服务，负责对 OCSP 查询返回带签名的有效、已吊销或未知状态。
- [CRL](https://ssl.sh/zh/glossary/crl/): CRL 是由 CA 签名并定期重新发布的证书吊销列表，列出它在证书到期前就已吊销的证书序列号。
- [证书吊销](https://ssl.sh/zh/glossary/revocation/): 证书吊销是 CA 在证书到期前宣布其作废的操作，通过 CRL 或 OCSP 对外公布，使客户端不再信任这张证书。
- [OCSP Must-Staple](https://ssl.sh/zh/glossary/must-staple/): OCSP Must-Staple 是一种证书扩展，要求客户端在服务器没有随握手提供有效 OCSP 响应时直接拒绝该证书。
- [CRLite](https://ssl.sh/zh/glossary/crlite/): CRLite 是 Mozilla 为 Firefox 打造的压缩吊销数据集，浏览器无需联系 CA，就能在本地判断公开记录的证书是否已被吊销。
- [AIA](https://ssl.sh/zh/glossary/aia/): AIA 即颁发机构信息访问，是 X.509 证书扩展，提供签发 CA 证书的下载地址，以及（可选的）该 CA 的 OCSP 服务地址。
