1.通道安全
1.参数安全
除了上诉两个问题,其实还有更严重的问的,中间人攻击
2.中间人攻击
3.CA认证
CA本身就是一个非对称加密,CA私钥在服务端生成好,CA的公钥由第三方CA机构托管,内置在浏览器,或者给浏览器提供一个下载的链接
主流生成CA的有两种方式: OpenSSL和JKS
https ca的公钥私钥: 公钥要存在浏览器 私钥存储在服务器 公私钥不传递 避免第三方拦截请求,篡改伪造一个公钥私钥向浏览器和服务器收到恶心的请求和数据 公钥和私钥: 非对称加密 私钥要存在服务器 公钥不在浏览器存储,要发请求服务器通过封装在ca证书中发送过去 即便如此,还是有可能被坏人获取到并且通过ca的公钥解析得到证书中的公钥,然后伪造对称加密数据,这时ca就派上用场了,响应地址不对,服务器不认 那么也会有坏人拿到这个公钥,解析数据的情况,坏人傻了,公钥只能破解服务端发送的数据,服务端有根本不用这个传数据,你有就有呗,啥也不是 对称加密: 这里才是传送数据真正加密的 对称加密的密钥有浏览器生成,传递给服务器 有传递就会有拦截,拦截到咋办?拦截到也没用,这也是非对称加密的作用,你只能获取到非对称加密的公钥,而这个对称加密的密钥是公钥加密的,只能私钥解,私钥从来没在网络传输过,因此这个对称加密的密钥保证安全了 这三个是循序渐进的: 1. 先处理掉伪造的问题 2. 再处理数据被拦截获取的问题 3. 处理效率问题 这个效率问题表现在,使用ca+非对称加密+非对称加密 完全可以实现安全,但是两个非对称加密效率低,将其中一个用对称加密,依然安全还高效了
ca认证将 ca对称加密,对称加密,非对称加密融合在一起形成了Https