HTTP通讯过程
HTTP包封装解封装过程
HTTPS对比HTTP封装
SSL or TLS 握手过程
上述过程用了证书,证书里面包含最主要的东西就是服务器公钥。
当不用证书的时候,客户端发起请求,黑客可以伪造成你要访问的服务器,把黑客自己服务器的公钥给客户端。这样客户端就登录到了黑客的指定服务器,而不是原有服务器。如果黑客伪造了银行的服务器,此时客户输入的一切信息都暴露在了黑客的服务器之下。后果很严重。
证书就是一个专门的机构把你公司的信息,服务器的公钥等信息包在了一个证书中。下次你例如访问www.icbc.com如果此时黑客拦截了,给你发了一个黑客自己的证书(黑客自己绝无可能伪造出域名是www.icbc.com的证书),客户端收到之后一查这证书内容和我要访问的服务器地址不同啊。于是就认为这个连接不安全,我们经常看到的https有时候会有灰色一个红线的情况。所以使用证书就避免的中间人的攻击。
上述的HTTPS协商加密过程简单理解就是客户端和服务端用非对称加密来计算出一个两边都一致的一把密钥,之后就用这把密钥进行对称加密通讯。非对称与对称相结合。