返回顶部
首页 > 资讯 > 前端开发 > JavaScript >怎么理解HTTPS
  • 216
分享到

怎么理解HTTPS

2024-04-02 19:04:59 216人浏览 薄情痞子
摘要

这篇文章主要介绍“怎么理解https”,在日常操作中,相信很多人在怎么理解HttpS问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么理解HTTPS”的疑惑有所帮助!接下来,

这篇文章主要介绍“怎么理解https”,在日常操作中,相信很多人在怎么理解HttpS问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么理解HTTPS”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

1.从加密算法说起

非对称加密:

简单说一句话:公钥加密的密文只能用私钥解密,私钥加密的密文只能用公钥解密。

私钥可以生成公钥,但是公钥几乎无法反推出公钥。

怎么理解HTTPS

举个例子:

任意想一个3位数,并把这个数和91相乘,然后告诉我积的最后三位数,我就可以猜出对方想的是什么数字!

比如123,计算出123 * 91等于11193,并把结果的末三位193告诉我。

这时候我只需要把对应的结果再乘以11,乘积的末三位就是刚开始想的数了。可以验证一下,193 * 11 = 2123 =》 123

原理非常简单,91乘以11等于1001,而任何一个三位数乘以1001后,末三位都不变。(当然随便你用2001、3001 只要你可以因式分解开)

根据这个原理,我们可以构造一个加密数值更大的加密解密系统。比方说,任意一个数乘以10000000001后,后10位都不会变,然后用计算机对10000000001进行因式分解,一个十位不对称加密系统就构造好了。

对称加密

加密、解密使用的相同的密钥,常见对称加密DES、AES等

小结

对称加密相比非对称加密算法来说,加解密的效率要高得多、加密速度快。但是缺陷在于对于密钥的管理和分发上比较困难,不是非常安全,密钥容易被丢失或者窃取。相对来说非对称加密只公开公钥,自己保管私钥会更加安全。

2.HTTPS原理

HTTP协议的缺点

  • 明文通信-内容会被监听

  • 不验证通信方身份-可能会遭遇伪装

  • 不验证内容的完整性-内容被篡改

HTTPS 简介

HTTPS 协议(HyperText Transfer Protocol over Seure Socket Layer)可以理解为 HTTPS = HTTP + SSL/TLS,通过SSL/TLS来增加HTTP的安全性。

怎么理解HTTPS

SSL(TLS)

SSL(Secure Socket Layer,安全套接字层):1994年为 Netscape 所研发,SSL 协议位于 tcp/IP 协议与各种应用层协议之间,为数据通讯提供安全支持。

TLS(Transport  Layer Security,传输层安全):其前身是 SSL,它最初的几个版本(SSL 1.0、SSL 2.0、SSL  3.0)由网景公司开发,1999年从 3.1 开始被 IETF 标准化并改名,发展至今已经有 TLS 1.0、TLS 1.1、TLS 1.2  三个版本。SSL3.0和TLS1.0由于存在安全漏洞,已经很少被使用到。TLS 1.3 改动会比较大,目前还在草案阶段,目前使用最广泛的是TLS  1.1、TLS 1.2。

证书

为什么需要第三方颁发证书?

服务端向客户端发送的公钥依旧会被劫持,传输内容依旧会被解密。劫持者可以用自己的私钥生成一把新的公钥,修改内容后用自己的私钥进行加密,再把修改后的内容以及自己生成的公钥发送给客户端。所以需要引入第三方机构颁发证书。

怎么理解HTTPS

3.一次完整的HTTPS通信

一句话概括

通过数字证书和非对称加密建立SSL连接,生成并传递对称加密所使用的的密钥。后续的HTTP通信就使用对称加密来保护内容。保证安全的同时也提高了效率。

  1. 客户端第一次向服务端进行请求建立SSL连接。

  2. 服务端返回CA颁发的数字证书,其中也包含了非对称加密的密钥。

  3. 与服务端建立连接以后,客户端会发送一个随机密码串称为Pre-master secret(用公钥加密) - 此时该密码串只有服务端可以解密

  4. 服务端通过私钥解密出Pre-master secret,并通过一定算法计算出对称加密(一般是AES算法)的密钥master (客户端也会用同样的算法计算这个master)

  5. SSL连接建立成功,进行HTTP通信,并使用AES 对称算法对内容进行加解密。

怎么理解HTTPS

4.HTTPS一定安全吗

HTTPS 的数据是加密的,常规下抓包工具代理请求后抓到的包内容是加密状态,无法直接查看。

但是,只要客户端授权的情况下,便可以组建中间人网络,而抓包工具便是作为中间人的代理。

通常  HTTPS  抓包工具(Charles)的使用方法是会生成一个证书,用户需要手动把证书安装到客户端中,然后终端发起的所有请求通过该证书完成与抓包工具的交互,然后抓包工具再转发请求到服务器,最后把服务器返回的结果在控制台输出后再返回给终端,从而完成整个请求的闭环。

HTTPS 可以防止用户在不知情的情况下通信链路被监听,对于主动授信的抓包操作是不提供防护的,因为这个场景用户是已经对风险知情。要防止被抓包,需要采用应用级的安全防护,例如采用私有的对称加密,同时做好移动端的防反编译加固,防止本地算法被破解。

到此,关于“怎么理解HTTPS”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: 怎么理解HTTPS

本文链接: https://lsjlt.com/news/84951.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 怎么理解HTTPS
    这篇文章主要介绍“怎么理解HTTPS”,在日常操作中,相信很多人在怎么理解HTTPS问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么理解HTTPS”的疑惑有所帮助!接下来,...
    99+
    2024-04-02
  • 怎样理解HTTPS工作原理
    怎样理解HTTPS工作原理,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。当你打开浏览器,访问某个网站,如果网址旁有个小锁,代表访问的网址是安全的,反之不安全。当我们没有看到...
    99+
    2023-06-17
  • CDN怎么处理HTTPS请求
    CDN(内容分发网络)是一种用来加速网站内容传输的网络服务,通常通过在全球各地分布的服务器来缓存网站的静态资源,从而减少用户访问网站...
    99+
    2024-04-24
    CDN
  • https加载慢怎么解决
    https加载慢的解决方法首先,在计算机中打开浏览器;进入到浏览器页面后,在浏览器右上角点击“设置”;在弹出的下拉选项中,选择“工具”选项,并进入“internet选项”;进入到internet选项对话框后,在对话框中切换到“高级”选项卡;...
    99+
    2024-04-02
  • HTTPS 的加解密原理
    这篇文章主要介绍“HTTPS 的加解密原理”,在日常操作中,相信很多人在HTTPS 的加解密原理问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”HTTPS 的加解密原理”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-06-17
  • 如何理解https与抓包
    这篇文章主要介绍“如何理解https与抓包”,在日常操作中,相信很多人在如何理解https与抓包问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何理解https与抓包”的疑惑...
    99+
    2024-04-02
  • 怎么启用HTTPS
    怎么启用HTTPS,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。 如何启用HTTPS一、准备工作服务器一台(可以购买阿里云轻量应用服务器,比较便宜)SSL证书 (...
    99+
    2023-06-17
  • 如何理解HTTPS加密算法
    本篇文章为大家展示了如何理解HTTPS加密算法,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。前言我们将会详细介绍RSA和ECDHE算法的原理以及在HTTPS密钥交换中的应用。非对称秘钥交换1RSA算...
    99+
    2023-06-03
  • 搜索栏不支持https怎么解决
    这篇文章主要介绍“搜索栏不支持https怎么解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“搜索栏不支持https怎么解决”文章能帮助大家解决问题。   第一种...
    99+
    2024-04-02
  • 电脑无法访问https怎么解决
    电脑无法访问https的解决方法首先,在电脑中打开IE浏览器;IE浏览器打开后,在浏览器右上角点击菜单,并在下拉中选择“Internet选项”;进入到Internet选项后,在页面中切换到“高级”选项卡;切换到高级选项卡后,在页面中勾选“S...
    99+
    2024-04-02
  • AndroidOKHttp源码解析Https安全处理
    目录Https加密知识秘钥对称加密非对称加密Https的方案TSL握手随机数计算OkHttp的设计涉及的类OkHttpClient配置阶段单独配置SSLSocketFactory同时...
    99+
    2022-12-08
    Android OKHttp Https安全处理 Https安全处理
  • HTTPS的优缺点和原理解析
    这篇文章主要讲解了“HTTPS的优缺点和原理解析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“HTTPS的优缺点和原理解析”吧!HTTPS是什么:HTTPS(全称:Hyper Text Tr...
    99+
    2023-06-10
  • js怎么辨别https
    使用JavaScript对https进行判断,具体方法如下:var ishttps = 'https:' == document.location.protocol true: false;if(ishttps){alert("这是一个h...
    99+
    2024-04-02
  • iis怎么强制https
    在iis中设置强制https的方法首先,在计算机中打开iis管理控制台,进入iis操作端;进入到iis后,在管理控制台中双击“服务器证书”选项;在弹出的窗口中,点击右上角“导入”选项;进入到导入证书页面后,在页面中填写ssl证书的路径和密码...
    99+
    2024-04-02
  • Springboot怎么整合https
    本篇内容介绍了“Springboot怎么整合https”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1 简介HTTP是不安全的,我们需要给它...
    99+
    2023-06-08
  • NGINX怎么开启HTTPS
    本篇内容介绍了“NGINX怎么开启HTTPS”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!免费SSL证书申请要开启HTTPS,必然要申请SS...
    99+
    2023-06-26
  • golang怎么改造https
    在互联网时代的今天,网络安全问题已经成为了许多企业和开发者必须面对的挑战。其中,安全协议HTTPS的应用更是得到了广泛的关注和使用。然而,为了充分利用HTTPS协议的优势,我们需要遵循一些标准和最佳实践,同时充分利用golang的特点,对H...
    99+
    2023-05-14
  • HTTPS原理分析
    这篇文章主要介绍“HTTPS原理分析”,在日常操作中,相信很多人在HTTPS原理分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”HTTPS原理分析”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!HTTPS...
    99+
    2023-06-17
  • HTTPS代理的工作原理是什么
    这篇文章将为大家详细讲解有关HTTPS代理的工作原理是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。HTTPS是在HTTP上建立SSL加密层,并对传输数据进行加密,是HTTP协议的安全版。主要工作流程...
    99+
    2023-06-15
  • 详解HTTPS 的原理和 NodeJS 的实现
    基本原理 HTTP协议采用明文传输数据,当涉及敏感信息的传送时,极有可能会受到窃听或者中间人的攻击。HTTPS是HTTP与SSL/TLS的组合,即使用加密通讯以及网络服务器的身份鉴定来进行信息的安全传输。...
    99+
    2022-06-04
    详解 原理 HTTPS
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作