https 的证书验证

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

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

posted @ 2020-02-19 22:39  SKY_VIEW  阅读(597)  评论(0编辑  收藏  举报