HTTP协议 和 HTTPS协议的区别(4点) && HTTPS的缺点 && HTTP如何使用SSL/TLS协议加密过程 && CA证书干啥的

这篇具有很好参考价值的文章主要介绍了HTTP协议 和 HTTPS协议的区别(4点) && HTTPS的缺点 && HTTP如何使用SSL/TLS协议加密过程 && CA证书干啥的。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

(一)HTTP协议 和 HTTPS协议的区别(4点):

 

1. HTTP协议的端口号是80, HTTPS协议的端口号是443

2. HTTP协议使用的URL是以 http:// 开头,HTTPS协议使用的URL是以https://开头

3. HTTP协议和HTTPS协议最主要的区别是:

HTTP协议所生成的HTTP请求报文被TCP协议 以明文形式透明传输,同时 客户端与服务器之间无法核验对方的身份(不晓得对方是真的baidu.com 还是一个假冒钓鱼网站)

HTTPS协议则是 在 TCP协议基础上,又增加了TLS协议,即, HTTPS 是运行在 SSL/TLS 之上的 HTTP 协议,SSL/TLS 运行在 TCP 之上。(具体来说就是:先通过TCP三次握手建立可靠的通信,而后通过TLS4次握手来交换证书、秘钥等,而后再继续通信传输数据)。HTTPS上所有传输的内容都经过加密,加密采用对称加密,但对称加密的密钥 通过 CA证书 进行了非对称加密传递给 客户端。

总结来说,HTTP 安全性没有 HTTPS 高,但是 HTTPS 比 HTTP 耗费更多服务器资源。HTTPS是现行架构下最安全的解决方案,虽然不是绝对安全,但它大幅增加了中间人攻击的成本。
 

4. 最后一点就是:对于搜索引擎来说,更偏好HTTPS 协议下的网站,因为 HTTPS 能够提供更高的安全性和用户隐私保护。使用 HTTPS 协议的网站在搜索结果中可能会被优先显示,从而对 搜索引擎的展示结果排序产生影响。

(@)HTTPS的缺点:

虽然HTTPS有很多优势,也是应用最广泛、现行最安全的协议:

他同样有缺点:
1、HTTPS协议握手阶段比较费时,会使页面的加载时间延长近50%,增加10%到20%的耗电;
2、HTTPS连接缓存不如HTTP高效,会增加数据开销和功耗,甚至已有的安全措施也会因此而受到影响;
3、SSL证书需要钱,功能越强大的证书费用越高,个人网站、小网站没有必要一般不会用。
4、SSL证书通常需要绑定IP,不能在同一IP上绑定多个域名,IPv4资源不可能支撑这个消耗。
5、HTTPS协议的加密范围也比较有限,在黑客攻击、拒绝服务攻击、服务器劫持等方面几乎起不到什么作用。最关键的,SSL证书的信用链体系并不安全,特别是在某些国家可以控制CA根证书的情况下,中间人攻击一样可行。

【就像我们LVS是4层协议,因此只转发请求,但是Nginx是7层负载均衡协议,因此,在这一步,需要给虚拟服务器绑定好证书,方便在进行三次握手的时候】


(二)什么是非对称加密,什么是对称加密?

1. 非对称加密:

需要公钥和私钥2个秘钥 :在通信时,私钥仅由解密者保存,公钥由任何一个想与解密者通信的发送者(加密者)所知

HTTP协议 和 HTTPS协议的区别(4点) && HTTPS的缺点 && HTTP如何使用SSL/TLS协议加密过程 && CA证书干啥的,http,https,ssl

 2. 对称加密:

只需要一个秘钥,通信双方可以通过这个密钥加密发送数据,解密收到的数据

HTTP协议 和 HTTPS协议的区别(4点) && HTTPS的缺点 && HTTP如何使用SSL/TLS协议加密过程 && CA证书干啥的,http,https,ssl

(三)SSL\TLS协议采用的加密通信方式是什么?

SSL\TLS协议采用的加密通信方式是:通信过程中采用对称加密,而对称加密的秘钥通过非对称加密来传输

这样,复杂的非对称加密传输只实现了一次,交换对称加密的密钥;在之后的信息通信中,使用绝对安全的密钥,对信息进行对称加密,即可保证传输消息的保密性

(四)为啥使用非对称加密来传输对称加密的秘钥 ?SSL\TL引入CA证书的通信流程是 什么?

1. 使用非对称加密来传输对称加密的秘钥 是为了避免如下场景:

客户端 C 和服务器 S 想要使用 SSL/TLS 通信,由上述 SSL/TLS 通信原理,C 需要先知道 S 的公钥,而 S 公钥的唯一获取途径,就是把 S 公钥在网络信道中传输。

但是网络信道通信中有几个前提:

  1. 任何人都可以捕获通信包
  2. 通信包的保密性由发送者设计
  3. 保密算法设计方案默认为公开,而(解密)密钥默认是安全的

因此,假设 S 公钥不做加密,在信道中传输,那么很有可能存在一个攻击者 A,发送给 C 一个诈包,假装是 S 公钥,其实是诱饵服务器 AS 的公钥。当 C 收获了 AS 的公钥(却以为是 S 的公钥),C 后续就会使用 AS 公钥对数据进行加密,并在公开信道传输,那么 A 将捕获这些加密包,用 AS 的私钥解密,就截获了 C 本要给 S 发送的内容,而 C 和 S 二人全然不知。

同样的,S 公钥即使做加密,也难以避免这种信任性问题

2、引入CA的作用是啥?引入CA后客户端和服务器的通信流程为:

因此,需要引入第三方平台 :证书颁发机构(CA,Certificate Authority)。

CA 默认是受信任的第三方。CA 会给各个服务器颁发证书,证书存储在服务器上,并附有 CA 的电子签名电子签名可以防止证书被伪造)。

那么,现在的通信流程变为:

当客户端(浏览器)向服务器发送 HTTPS 请求时,一定要先获取目标服务器的证书,并根据证书上的信息,检验证书的合法性。一旦客户端检测到证书非法,就会发生错误。

客户端获取了服务器的证书并验证合法后,由于 证书上包含着服务器的公钥信息,客户端就可以放心的信任证书上的公钥就是目标服务器的公钥。

客户端获得公钥,于是放宽心进行 数据的对称加密解密 通信

【总结下】CA就是在提供一个 非对称的加密传输对称秘钥  和  验证服务器安全 的功能:

CA用自己的秘钥对服务器证书加密,客户端用存在自己系统中的CA发布的公钥对收到的证书进行解密,匹配客户端自己系统中存放的签名和发来的证书上的签名是否一致,一致说明访问的服务器合法,同时也获得了  能 与该合法的服务器 通信的 对称公钥文章来源地址https://www.toymoban.com/news/detail-627531.html

到了这里,关于HTTP协议 和 HTTPS协议的区别(4点) && HTTPS的缺点 && HTTP如何使用SSL/TLS协议加密过程 && CA证书干啥的的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 常见网络通信协议(http、https、ws)及安全协议(SSL、TLS、XTLS)

    文章内容删除了一大半不合适的内容,发不出来,你懂得。🥰 HTTP和HTTPS都属于 应用层协议 ,它们都是用于从万维网(WWW)服务器传输超文本到本地浏览器的传送协议。它们都是 基于 TCP/IP 协议 来传递数据的,支持 客户端-服务器模式 的通信。 HTTP和HTTPS的区别主要在于HTT

    2024年02月10日
    浏览(24)
  • HTTPS、对称/非对称加密、SSL/TLS

    问题描述:HTTP的请求和响应都是明文传输,有安全隐患 HTTPS :HTTPS并不是一个单独的协议,是在 TCP 和 HTTP 之间加入了 SSL/TLS 安全协议,使得报文能够加密传输,SSL是TLS的前身,现在使用的大多都是TLS。 对称加密 :发送方和接收方约定一个同样的规则也就是同一个密钥来对

    2024年04月10日
    浏览(28)
  • 配置SSL/TLS以启用HTTPS加密通信

    简介 在本教学文章中,我们将学习如何配置Nginx以支持安全套接字层(SSL/TLS),从而启用HTTPS并提供加密通信。SSL/TLS是一种安全协议,用于确保在网络上进行的通信的保密性和完整性。本教程将介绍如何生成SSL证书,配置Nginx以使用SSL/TLS,并启用HTTPS。 前提条件 在开始本教

    2024年02月15日
    浏览(37)
  • 用WireShark看HTTPS的SSL/TLS协议

    HTTPS目前是网站标配,否则浏览器会提示链接不安全,同HTTP相比比,HTTPS提供安全通信,具体原因是多了个“S”层,或者说SSL层[Secure Sockets Layer],现在一般都是TLS[Transport Layer Security],它是HTTP 明文 通信变成安全 加密通信 的基础,SSL/TLS介于应用层和TCP层之间,从应用层数据

    2023年04月08日
    浏览(23)
  • HTTP和SSL/TLS协议的关系

    HTTP(Hypertext Transfer Protocol)和SSL/TLS(Secure Sockets Layer/Transport Layer Security)协议是两个独立的协议,但它们在安全通信方面密切相关。 HTTP协议是一种用于在网络上传输超文本的协议,它负责定义客户端和服务器之间的通信规则。HTTP协议本身不提供加密和身份验证功能,数据

    2024年02月10日
    浏览(21)
  • HTTP/HTTPS、SSL/TLS、WS/WSS 都是什么?

    有同学问我, HTTP/HTTPS 、 SSL/TLS 、 WS/WSS 这都是些什么?那我们就先从概念说起: HTTP 是超文本传输协议,信息是通过明文传输。 HTTPS 是在 HTTP 的基础上信息通过加密后再传输。 SSL 是实现 HTTPS 信息传输加密的算法。 TLS 是 SSL 的经过更新迭代后更安全的版本。 上诉概念可以

    2024年02月05日
    浏览(24)
  • 关于网络通信安全协议的一些知识(ssl,tls,CA,https)

    首先了解一下http协议的变迁。 http1.0默认短连接,1.1默认长连接并且可以管道传输,但是存在队头阻塞问题; https就是在tcp和http之间加了SSL/TLS层。 http2也是安全的,改进是hpack二进制和编码压缩减小体积,stream没有队头阻塞了(TCP层还有),以及服务器主动推送功能; http

    2024年02月15日
    浏览(33)
  • SpringBoot + Vue2项目打包部署到服务器后,使用Nginx配置SSL证书,配置访问HTTP协议转HTTPS协议

    配置nginx.conf文件,这个文件一般在/etc/nginx/...中,由于每个人的体质不一样,也有可能在别的路径里,自己找找... 证书存放位置,可自定义存放位置 两个文件 后端配置 把.pfx拷贝到resource下,然后配置一下yml

    2024年02月02日
    浏览(37)
  • 使用Netty实现SSL和TLS加密通信

            Netty支持使用SSL和TLS协议进行加密通信,可以在保证通信安全的同时,保证数据传输的完整性和可靠性。下面我们将演示如何使用Netty实现SSL和TLS加密通信。 首先,我们需要生成一个SSL证书,用于进行加密通信。可以使用OpenSSL等工具生成证书,也可以使用Netty提供

    2024年02月13日
    浏览(25)
  • 【Netty】使用 SSL/TLS 加密 Netty 程序(二十)

    回顾Netty系列文章: Netty 概述(一) Netty 架构设计(二) Netty Channel 概述(三) Netty ChannelHandler(四) ChannelPipeline源码分析(五) 字节缓冲区 ByteBuf (六)(上) 字节缓冲区 ByteBuf(七)(下) Netty 如何实现零拷贝(八) Netty 程序引导类(九) Reactor 模型(十) 工作原理

    2024年02月07日
    浏览(20)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包