C++复习之路:网络相关基础知识1

HTTP和HTTPS的区别,以及HTTPS有什么缺点?

区别:

1)HTTP协议是以明文的方式在网络中传输数据,而HTTPS协议传输的数据则是经过TLS加密后的,HTTPS具有更高的安全性

2)HTTPS在TCP三次握手阶段之后,还需要进行SSL (Secure Sockets Layer安全套接字协议)的握手,协商加密使用的对称加密密钥

3)HTTPS协议需要服务端申请证书,浏览器端安装对应的根证书(既然对称加密,那么客户端/浏览器就需要和服务端对应上)

4)HTTP协议端口是80,HTTPS协议端口是443

HTTPS的优点:

HTTPS传输数据过程中使用密钥进行加密,所以安全性更高

HTTPS协议可以认证用户和服务器,确保数据发送到正确的用户和服务器

HTTPS的缺点:

HTTPS握手阶段延时较高:由于在进行HTTP会话之前还需要进行SSL握手,因此HTTPS协议握手阶段延时增加

HTTPS部署成本高:一方面HTTPS协议需要使用证书来验证自身的安全性,所以需要购买CA证书;另一方面由于采用HTTPS协议需要进行加解密的计算,占用CPU资源较多,需要的服务器配置或数目高

HTTPS的实现原理:

大家可能都听说过 HTTPS 协议之所以是安全的是因为 HTTPS 协议会对传输的数据进行加密,而加密过程是使用了非对称加密实现。

但其实,HTTPS 在内容传输的加密上使用的是对称加密,非对称加密只作用在证书验证阶段。

HTTPS 的整体过程分为证书验证和数据传输阶段,具体的交互过程如下:

证书验证阶段:

  • 浏览器发起 HTTPS 请求。

  • 服务端返回 HTTPS 证书。

  • 客户端验证证书是否合法,如果不合法则提示告警。

数据传输阶段:

  • 当证书验证合法后,在本地生成随机数。

  • 通过公钥加密随机数,并把加密后的随机数传输到服务端。

  • 服务端通过私钥对随机数进行解密。

  • 服务端通过客户端传入的随机数构造对称加密算法,对返回结果内容进行加密后传输。

http升级成https需要:网站安装SSL证书之后就可以从http升级为https,进行加密传输,保护网站数据安全了。

HTTPS的实现原理部分的作者:程序员追风
链接:https://www.jianshu.com/p/8307b5cc073c
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

溯夜流云

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

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

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

打赏作者

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

抵扣说明:

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

余额充值