服务器向浏览器发送自己的证书,证书内容包括,域名,签发机构,服务器的公钥等,还附带了一个签名。浏览器用 CA(签发证书的权威机构)的公钥解密这个签名后得到一个 hash 算法和指纹,用这个 hash 算法计算得到证书内容的哈希值,这个值和指纹一致,表明证书没有被篡改过,其他情况表示证书验证失败。

证书验证完成后,浏览器即处于信任对端的服务器的状态,可以继续进行后续通讯,虽然证书验证通过并不必然意味着对端服务器是100%可信的(e.g. 虚假服务器同时盗用了真实服务器的证书和私钥),所以不能认为该验证流程能完全杜绝欺骗和造假,流程被应用是权衡取舍的结果。

版权声明:本文为sky-view原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/sky-view/p/12332241.html