什么是证书吊销?

证书吊销是让一张尚未到期的证书提前失效,通常发生在私钥泄露、域名控制权丧失或签发错误时。浏览器通过证书吊销列表或在线查询来确认证书状态,但吊销机制在实际中并不总是可靠。

第 16 期介绍过,TLS 证书有固定的有效期。但证书不必等到过期才失效:当证书对应的私钥泄露、域名控制权易主、或证书被错误签发时,签发机构可以吊销它,让它提前作废。吊销后,浏览器即使看到证书仍在有效期内,也会认定其不可信。

浏览器确认一张证书是否被吊销,主要有两种方式。一是证书吊销列表(CRL):证书签发机构(CA)定期发布被吊销证书的清单,浏览器下载后逐条比对。二是在线证书状态协议(OCSP):浏览器向 CA 的服务器实时查询某张证书的状态,得到"有效、已吊销或未知"的回复。为减轻查询负担,还有 OCSP 装订(OCSP stapling)的做法,由网站服务器替客户端向 CA 查询并附上结果。

吊销机制在现实中并不总是可靠。第 45 期提到过,吊销机制本身的不可靠,是行业推动缩短证书有效期的一个原因:CRL 可能未被及时更新,OCSP 查询失败时浏览器往往选择放行而非阻断。证书一旦被吊销,要让所有客户端立即感知,仍存在时间差。