http和https

一:http的不安全性

  1. http是超文本传输协议,使用的是明文传输,有可能被中途拦截窃听
  2. 可能被第三方恶意拦截篡改,替换发送报文或者返回异常报文(http劫持)
  3. 无法验证通信双方身份,有可能被伪装(dns劫持)

二:https如何解决上述问题

1.明文传输问题(加密)

  加密算法:对称性加密和非对称性加密,其中对称性加密性能好于非对称性加密。

对称加密:使用公钥加密,使用公钥解密

非对称加密:使用公钥加密,只有私钥能解密(使用私钥加密,所有公钥都能解密)

(1):使用对称加密,公开公钥

(2):使用对称加密,协商公钥,但是协商过程是明文的

(3)使用非对称加密,协商公钥一样会出问题,会发生http劫持

(4)引入一个第三方来证明我的公钥就是我的公钥(公钥的正确性)

对服务器公钥加密

数字证书:第三方机构对申请方公钥加密后的数据

        :里面还明文保存了第三方机构是谁

第三方机构:也采用非对称加密,用私钥给申请方的公钥加密

           然后把自己的公钥内置的浏览器里面,可以解密

           申请方的加密后的公钥,在用公钥通信

上述流程有一个问题:不能辨别证书来自真正的服务器和黑客

(5)在引入第三方的前提下,如何让客户端识别证书的真伪,需要引入证书编号

证书包含内容:明文:server公钥,CN(域名), 国家, 省份,邮箱,组织,签名算法等....,私钥加密(通过签名算法(证书内容))= 证书编号

证书编号/证书序列号:经第三方机构私钥加密(证书内容的签名(md5))

流程图如下所示:

客户端浏览器如何识别证书的真伪

在上述场景下,黑客可以篡改服务器公钥信息吗?

黑客能获取的信息有CA公钥,服务器公钥,服务器信息的签名

但是拿不到CA的私钥,修改了公钥后,无法通过CA私钥重新加密签名

因此黑客无法篡改,除非浏览器内置了有问题的CA机构或者CA机构出问题了

解决了证书验证及服务器公钥被篡改的问题

(6)浏览器获取到服务器公钥,如何如服务器协商对称秘钥(因为对称加密的性能远远好于非对称加密)

 

参考文章链接:HTTPS协议详解(四):TLS/SSL握手过程_hherima的博客-CSDN博客_ssl握手

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值