浏览器如何验证证书

时间:2024-10-17 12:38:15

1、验证证书是否在有效期内 证书中会包含证书的有效期的起始时间和结束时间,取一个时间点去比较就好了。关键问题是如何保证取到的时间点是可信的。

2、验证证书是否被吊销了 被吊销的证书是无效的。验证吊销有CRL和OCSP两种方法。 CRL即证书吊销列表。证书被吊销后会被记录在CRL中,CA会定期发布CRL。应用程序可以依靠CRL来检查证书是否被吊销了。CRL有两个缺点,一是有可能会很大,下载很麻烦。针对这种情况有增量CRL这种方案。二是有滞后性,就算证书被吊销了,应用也只能等到发布最新的CRL后才能知道。增量CRL也能解决一部分问题。 OCSP是在线证书状态检查协议。应用按照标准发送一个请求,对某张证书进行查询,之后服务器返回证书状态。OCSP可以认为是即时的(实际实现中可能会有一定延迟),所以没有CRL的缺点。不过对于一般的应用来说,实现OCSP还是有些难度的。

3、验证证书是否是上级CA签发 每一张证书都是由上级CA证书签发的,上级CA证书可能还有上级,最后会找到根证书。根证书即自签证书,自己签自己。 当你验证一张证书是否是由上级CA证书签发的时候,你必须有这张上级CA证书。通常这张证书会内置在浏览器或者是操作系统中,有些场景下应用系统也会保留。

© 手抄报圈