HTTPS

一、HTTPS是什么

HTTPS也是一个应用层协议,是在HTTP协议的基础上引入了一个加密层。

由于HTTP协议内容一般都是本文方式明文传输的,这就导致它在传输过程中会出现被篡改的情况。

经典案例就是万恶的“运营商劫持”!

除了运营商可以劫持,一些黑客也可以通过类似的手段进行劫持,从而窃取用户隐私信息,或者篡改内容,为了解决这些问题,于是就引入了HTTPS协议。

HTTPS就是在HTTP的基础上进行加密来保证用户的信息安全。

加密的相关概念

明文:要传输的信息。

密文:对明文进行某些加密算法后产生的文字。

加密:就是把明文通过一系列变换后生成密文。

解密:把密文还原为明文

密钥:在加密或者解密的过程中,往往需要一个或多个中间的数据来辅助进行这个过程,这样的数据被称为密钥。

加密的方式有很多,整体可以分为对称加密和非对称加密。

对称加密:通过一个密钥进行加密和解密,最简单的对称加密方式就是进行异或操作。

非对称加密:通过一个“公钥”和一个“私钥”进行加密和解密。非对称加密虽然更安全,但它最大的缺点是运算速度比较慢。

二、HTTPS的工作过程

1、引入对称加密

引入对称加密后,即使请求被黑客截获,黑客没有密钥,也无法知道请求的真实内容。

但一个服务器要服务很多个客户端,每个客户端的密钥都必须是不同的(如果每个客户端的密钥都一样,那么黑客也就能拿到密钥了) ,这样一来,服务器就需要维护每个客户端和其对应密钥的关联关系,这样做会比较麻烦。

更好的做法是,在客户端和服务器建立连接的时候,双方约定好这次的密钥是什么。

但如果直接明文传输密钥,那么黑客也能拿到密钥,后续的操作也就没有意义了。

因此密钥的传输也需要进行加密,如果一直这样加密下去的话就变成了“先有鸡还是先有蛋”的问题了。

因此就需要引入非对称加密

2、引入非对称加密

非对称加密的公钥是所有人都能拿到的,但是私钥只是服务器才持有的。

通过公钥对明文进行加密得到密文,而只有通过私钥对密文进行解密才能得到明文。

但是道高一尺,魔高一丈,黑客又想出了“中间人攻击”的方式:

黑客相对应客户端来说,把自己伪装成服务器;相对于服务器来说,把自己伪装成客户端,从而获取到每次请求和响应的真实内容并进行篡改。 

3、引入证书

破解“中间人攻击”的方式就是识别出服务器返回的公钥是否是被黑客伪造的公钥,于是就有了“证书”。

在客户端和服务器刚建立连接的时候,服务器返回给客户端一个证书,证书中包含了公钥和网站的身份信息,当客户端获取到证书后,就会对证书进行校验,防止证书是黑客伪造的。

(证书自身有一些校验机制,黑客想要篡改证书,很容易被浏览器识别出来)

浏览器如果发现证书有问题,就会弹窗提示该网站证书不完全,阻止用户继续访问。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

吃点橘子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值