前端学习之HTTP 和 HTTPS

本文介绍了HTTP和HTTPS的基本概念,强调了HTTPS的安全性和HTTP的无安全性。HTTPS通过SSL层提供加密传输和身份认证,但其握手过程较慢,可能增加页面加载时间和能耗。此外,还探讨了HTTPS的工作流程,包括客户端与服务器的交互以及证书的使用。最后,提到了HTTP请求的跨域问题和CORS解决方案。
摘要由CSDN通过智能技术生成

1.http 和 https 的基本概念

  • HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。
  • HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。

2.http 和 https 的区别及优缺点?

  • HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全,为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。简单来说,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输(可防止数据在传输过程中被窃取、改变,确保数据的完整性)、身份认证的网络协议,要比http协议安全。

  • http 协议的默认端口为 80,https 的默认端口为 443。

  • http 的连接很简单,是无状态的。https 握手阶段比较费时,会使页面加载时间延长 50%,增加 10%~20%的耗电。

  • https 缓存不如 http 高效,会增加数据开销。

  • Https 协议需要 ca 证书,费用较高,功能越强大的证书费用越高。

  • SSL 证书需要绑定 IP,不能再同一个 IP 上绑定多个域名,IPV4 资源支持不了这种消耗。

3.https 协议的工作原理

客户端在使用 HTTPS 方式与 Web 服务器通信时有以下几个步骤:

  • 客户端使用 https url 访问服务器,则要求 web 服务器建立 ssl 链接。
  • web 服务器接收到客户端的请求之后,会将网站的证书(证书中包含了公钥),传输给客户端。
  • 客户端和 web 服务器端开始协商 SSL 链接的安全等级,也就是加密等级。
  • 客户端浏览器通过双方协商一致的安全等级,建立会话密钥,然后通过网站的公钥来加密会话密钥,并传送给网站。
  • web 服务器通过自己的私钥解密出会话密钥。
  • web 服务器通过会话密钥加密与客户端之间的通信。

4.HTTP 请求跨域问题

  • 跨域:CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sharing)
  • 它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。浏览器不能执行其他网站的脚本,由浏览器的同源策略造成。同源策略是浏览器对 JavaScript 实施的安全限制,只要协议、域名、端口有任何一个不同,都被当作是不同的域。
  • 跨域原理,即是通过各种方式,避开浏览器的安全限制。
    (参考文章: https://juejin.cn/post/6844903521163182088)

学习文章:https://juejin.cn/post/7016593221815910408

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值