证书可信任

https://zhuanlan.zhihu.com/p/25587986

1.浏览器如何验证您的证书是有效的?

主要分为下面几个流程:

  • 1.client hello阶段,此时用户会在浏览器地址栏输入一个地址,然后浏览器会解析输入的域名对应到其相对应的IP地址上面,接着浏览器和解析得到的IP地址所对应机器的443端口进行通话(当然如果你转到了其它端口的话,那么就会使用其它端口)。这步也叫做TLS协议的握手请求。

  • 2.server hello阶段,服务器收到客户端在TLS协议的握手请求后,会根据客户端的host在自己机器上面寻找对应的证书文件,然后将证书等信息再返回给客户端。

  • 3.客户端在收到需要访问网站的证书信息后,会验证证书是否有效。验证步骤主要分为下面几个:验证证书有效期;验证证书域名(和浏览器地址栏域名是否相同);验证证书吊销状态;验证证书颁发机构;如果颁发机构是中间证书的话,接着验证中间证书的有效期,一直验证到最后最后一层证书,如果最后一层证书是在操作系统或浏览器内置的话,那么证书就是可信的,否则就是自签名的HTTPS证书;

  • 4.这个时候证书验证基本就结束了,如果验证通过的话那么浏览器就显示正常;验证不通过浏览器会进行相应提示。