计网之HTTPS的安全机制

这篇具有很好参考价值的文章主要介绍了计网之HTTPS的安全机制。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一. 什么是HTTPS?

在网络传输过程中, 存在着运营商劫持和一些黑客入侵这样的危险, 在之前只有HTTP的明文传输数据环境下, 这样的问题是有些泛滥的, 这种情况下就不清楚在中间传输过程中就被哪一服务器将数据篡改了, 所以在后来就引入了HTTPS.

HTTPS (全称: Hyper Text Transfer Protocol over Secure Socket Layer), 就是 HTTP + 安全层(SSL), 是以安全为目标的 HTTP 通道, 简单讲就是 HTT P的安全版本, 即 HTTP 下加入 SSL 层, HTTPS 的安全基础是 SSL.

HTTPS 和 HTTP 一样, 都是应用层协议, HTTPS 相比于 HTTP 多了一个加密的功能, 就是在 HTTP 基础上引入了SSL/TLS 加密机制, 该功能作用不是防止数据被窥察, 而是为了防止数据被篡改, HTTP 是明文传输, HTTPS 是密文传输, HTTPS 可以更好地保护数据的传输.

如何理解这里的安全?

我们要知道安全这个概念只是相对而言, 要知道 “道高一尺, 魔高一丈”, 不管安全措施如何完善, 相信总是有更厉害的大佬有针对攻击办法, 但我们认为, 网络传输中, 只要黑客解密的成本超过了数据本身的价值, 就认为是安全的了.

这里有几个专有名词需要了解一下

明文: 传输的原始数据.
密文: 原始数据被加密后的数据.
密钥: 可以将明文转换成密文, 也可以将密文转换为明文的 “钥匙”.

二. HTTPS中的加密机制(SSL/TLS)

HTTPS 引入的加密层, 称为 SSL 或 TLS, 在 SSL 中加密的机制主要有两种:

  1. 对称加密
  2. 非对称加密

但 SSL/TLS 部分其实并不是只在 HTTPS 中使用, 在其他的场景中也会用到(比如 SSH 协议, JDBC 等).

1. HTTP的安全问题

HTTP 是明文传输的, 当有黑客或者运营商从中作梗, 就可以直接篡改客户端和服务器之间传输的数据, 此时就没有什么安全性可言, 客户端和服务器拿到什么样的数据完全就是黑客说了算了.

计网之HTTPS的安全机制

也就是说, 只要网络上的数据是明文传输的, 都是存在被劫持, 被篡改的风险的, 所以为了能够改善这种问题, 就引入了加密, HTTPS 就应运而生了.

2. 对称加密

对称加密就是客户端和服务器使用相同的密钥对密文进行加密与解密, 密钥就可以认为是一串数字/字符串, 加密就是把明文 (HTTPS 中就是针对 HTTP 的各种 header 和 body) 和密钥字符串进行一系列的数学变换.

a(明文) + key = b(密文), 这是加密的过程

b(密文) + key = a(明文), 这是解密的过程

计网之HTTPS的安全机制

要注意, 这里密文传输安全的前提是黑客并不知道密钥是什么, 这就要求不同的客户端使用的是不同的密钥才行, 因为如果不同客户端使用的是相同的密钥, 那么黑客只需要自己启动一个客户端就能拿到密钥, 成本不高, 就没什么安全可言了.

所以, 不同的客户端需要有不同的密钥, 这个密钥要么由服务器生成, 要么由客户端生成, 假设我们这里是由客户端生成密钥, 客户端生成密钥后就需要在传输数据之前需要先将密钥发送给服务器, 即如下过程:
计网之HTTPS的安全机制

这样不同的客户端就使用了不同的对称密钥来对数据进行加密, 那么当客户端生成对称密钥后, 先将对称密钥传输到服务器, 服务器拿到密钥后再进行业务数据的传输, 之后就使用从客户端拿到的密钥进行数据的加密和解密了.
但此时还是有问题的, 一开始密钥传输的安全问题如何得到保障呢? 在此时的场景下, 密钥刚刚生成, 也就是服务器还不知道密钥是什么, 所以这次密钥的传输还是只能使用明文传输, 很容易就被黑客拦截获取了, 这样的加密也就形同虚设了, 所以就引入了下面的 “非对称加密”.

3. 非对称加密

为了让密钥安全的传输到服务器, 就需要对密钥也进行加密.

对于非对称加密, 它拥有两个密钥, 一个公钥和一个私钥, 其中公钥 “人人” 都能获取到, 而私钥是构造私钥的 “人” 才知道.

相当于我们现实生活中的锁与钥匙, 而这个锁就相当于公钥, 钥匙就相当于私钥.

其中公钥是用来加密的, 而私钥是用来解密的.

明文 + 公钥 = 密文

密文 + 私钥 = 明文
此时, 就可以使用非对称加密了, 首先客户端会向服务器询问服务器的公钥是什么, 然后服务器会向客户端发送一个公钥, 客户端收到公钥后会使用这个公钥对客户端构造的对称密钥进行加密, 然后会把加密后的对称密钥传输给服务器, 服务器使用私钥解密得到客户端的对称密钥, 之后的业务数据就可以使用这个对称密钥进行加密和解密了(对称加密).

计网之HTTPS的安全机制

要注意, 非对称加密只是用来传输对称密钥的, 一旦对称密钥到达服务器之后, 后序的传输都是使用对称密钥来加密和解密了.

有的小伙伴可能有疑问, 为什么有了非对称加密, 还要继续使用对称加密呢?

这是因为使用对称加密传输速度是比较快的, 而非对称加密速度就慢很多了, 实际场景会要求尽可能提高整体的速度, 使用对称加密显然更合适.

4. 中间人问题

有了上面的非对称加密, 数据传输的安全其实还是存在问题的, 可能会存在 “中间人” 问题, 这个中间人对于服务器会伪装成 "客户端"的身份, 对于客户端, 中间人就会伪装成 “服务器”;

当服务器发送自己的公钥给客户端时, 中间人也会生成一对公钥与私钥, 中间人就把服务器的公钥换成自己的公钥, 然后客户端使用中间人的公钥加密对称密钥, 然后发送给服务器, 此时中间人就可以再次拦截, 使用自己的私钥获得对称密钥, 获得密钥后中间人会将密钥使用服务器的公钥再加密发送给服务器.

此时的数据传输就又成了 “透明” 的了, 在之后的对称加密传输过程中, 中间人已经知道了对称密钥, 就可以将客户端请求/服务器响应的密文数据解密得到原始数据, 中间人就可以针对原始数据进行篡改, 然后再加密发送, 这样这位中间人就神不知鬼不觉就拿到到了客户端和服务器之间传输的数据, 可以进行查看和篡改.
计网之HTTPS的安全机制

5. 证书

中间人问题的解决方案是引入一个第三方工信机构, 现在的服务器 (网站) 一般在设立之初, 就需要去专门的认证机构, 申请证书, 服务器先提供资质证明给工信机构, 工信机构通过审核后, 会给服务器发送一个证书, 该证书不是普通的证书, 里面含有一些校验机制 (校验的过程类似 TCP/UDP 的校验和), 然后服务器会把自己的公钥放入证书中, 客户端也不再询问公钥, 而是询问服务器证书, 得到证书后会去查该证书是否合法, 如果合法才会使用服务器证书中的公钥去进行对密文请求与密钥的加密, 并发送给服务器, 如果不合法浏览器就会弹窗警告.

计网之HTTPS的安全机制

这个过程就类似于我们使用的身份证来证明身份, 派出所就是第三方的认证机构, 身份证是无法被其他地方生成或者篡改的, 其他人就可以通过身份证来辨识我们的身份.

计网之HTTPS的安全机制

那么客户端是如何对证书进行验证的呢?
实际上, 操作系统是会内置一些工信机构的信息(包含工信机构的公钥)的.

首先我们需要知道证书上面会有一个特定的字段, 叫做证书的签名, 这个签名是一个被加密的字符串, 是通过对证书中所有的属性, 计算出来的一个校验和(签名), 再由颁布证书的工信机构使用它的私钥对这个签名进行加密.

证书中是由很多字段构成的(明文的), 比如:

字段1: 证书的过期时间

字段2: 颁布证书的机构名

字段3: 服务器的url

字段4: 服务器自己的公钥

字段5: 加密后的签名

还有很多字段: …

客户端对证书的校验过程如下:

  1. 判断证书的有效期是否过期
  2. 判定证书的发布机构是否受信任(操作系统已经内置了受信任的证书发布机构)
  3. 得到初始的签名, 客户端使用系统中内置的工信机构的公钥, 针对证书中的加密签名进行解密得到了初始签名(这个签名是权威机构算出来的, 设为sum1).
  4. 计算现在的签名, 客户端使用同样的签名计算算法, 基于证书中的属性重新计算, 得到sum2.
  5. 比较两个签名是否相同, 如果相同(sum1 == sum2), 说明证书中的数据都是未被篡改的原始数据, 如果签名不同(sum1 != sum2), 说明证书的数据被篡改过, 客户端的浏览器就会弹框报错.

此时, 黑客即使把证书中服务器的公钥篡改替换成自己的公钥, 然后黑客再针对证书中的各个属性, 重新计算签名, 下一步, 黑客就需要把签名重新加密, 这里黑客就无能为力了, 因为想要加密, 黑客就必须知道工信机构的私钥, 显然, 黑客是无法知道的, 证书的关键, 不是让黑客 “看不到”, 而是让黑客 “改不了”.

所以, 此时来看加入证书后的加密过程, 其实是涉及到5把🔐的, 即工信机构的公钥和私钥, 服务器自己的公钥和私钥, 还有对称密钥.文章来源地址https://www.toymoban.com/news/detail-468940.html

到了这里,关于计网之HTTPS的安全机制的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • HTTPS安全防窃听、防冒充、防篡改三大机制原理

            本文内容主要对以下两篇文章内容整理过滤,用最直观的角度了解到HTTPS的保护机制,当然啦,如果想要深入了解HTTPS,本文是远远不够的,可以针对以下第一个链接中的文章拓展板块进行学习,希望大家通过本文能够对HTTPS有一个初步的认识, 你真的了解HTTPS吗?

    2024年01月20日
    浏览(68)
  • 计网 - 深入理解HTTPS:加密技术的背后

    PKI - 数字签名与数字证书 PKI - 借助Nginx 实现Https 服务端单向认证、服务端客户端双向认证 HTTP(超文本传输协议)的发展历史 : HTTP的起源可以追溯到1990年代早期,由蒂姆·伯纳斯-李(Tim Berners-Lee)在CERN(欧洲核子研究组织)开发出来,最初被用于在客户端和服务器之间传

    2024年02月22日
    浏览(39)
  • HTTP与HTTPS:深度解析两种网络协议的工作原理、安全机制、性能影响与现代Web应用中的重要角色

    HTTP (HyperText Transfer Protocol) 和 HTTPS (Hypertext Transfer Protocol Secure) 是互联网通信中不可或缺的两种协议,它们共同支撑了全球范围内的Web内容传输与交互。本文将深度解析HTTP与HTTPS的工作原理、安全机制、性能影响,并探讨它们在现代Web应用中的核心角色。 HTTP 是一种应用层协议

    2024年04月11日
    浏览(61)
  • 【计网】TCP协议安全与风险:深入探讨网络通信的基石

       🍎 个人博客: 个人主页 🏆 个人专栏: Linux ⛳️   功不唐捐,玉汝于成 目录 🌐前言 🔒正文 TCP (Transmission Control Protocol): UDP (User Datagram Protocol): HTTP (Hypertext Transfer Protocol): HTTPS (Hypertext Transfer Protocol Secure): 🌐结语  我的其他博客 TCP(传输控制协议)是计算机网络中最

    2024年03月10日
    浏览(56)
  • Android 之 http/https原理和机制

    http---HyperTextTransfer Protocol 超文本传输协议         超文本-文本、HTML http的工作方式 c/b结构 如浏览器访问到服务器。 即发送请求-相应。 Url-Http报文 http://www.baidu.com/path 协议类型:http or https or websocket 服务器地址 BaseUrl 路径:/path 请求方式: Get 、 POST 、Put、Delete 等 报文

    2024年02月14日
    浏览(30)
  • 打穿内网之Vulntarget-a靶场实战记录

    通达OA未授权上传+文件包含RCE Redis未授权写马 ms17-010永恒之蓝 代理转发内网跳板 CVE-2020-1472 域控杀器Zerologon wmiexec/smbexec横向移动 cobalt strike与msf的shell传递 靶场地址:https://github.com/crow821/vulntarget 攻击机 kali ip:192.168.1.11 web服务器(WIN7) 内网ip:10.0.20.98 外网ip:192.168.1.7 w

    2024年02月06日
    浏览(29)
  • 《红蓝攻防对抗实战》二.内网探测协议出网之TCP/UDP协议探测出网

      目录 一.TCP/UDP协议探测出网 1.NC工具探测TCP协议出网 2.Telnet命令探测TCP协议出网 3.UDP协议探测出网 当红队人员在进行内网渗透时,经常会遇到目标主机不出网的场景,而主机不出网的原因有很多,常见的原因例如目标主机未设置网关,被防火墙或者其他防护设备拦截设置了

    2024年02月08日
    浏览(42)
  • 为什么说HTTPS比HTTP安全? HTTPS是如何保证安全的?

    在上篇文章中,我们了解到 HTTP 在通信过程中,存在以下问题: 通信使用明文(不加密),内容可能被窃听 不验证通信方的身份,因此有可能遭遇伪装 而 HTTPS 的出现正是解决这些问题, HTTPS 是建立在 SSL 之上,其安全性由 SSL 来保证 在采用 SSL 后, HTTP 就拥有了 HTTPS 的加密

    2024年03月19日
    浏览(52)
  • [HTTPS] 免费获取安全证书并配置HTTPS

    目录 前言 一、HTTPS是什么? 二、配置步骤 三、配置过程 1.获取证书     FreeSSL首页 - FreeSSL.cn一个提供免费HTTPS证书申请的网站 2.安装证书 (I).安装 SSL 证书的具体步骤因所使用的服务器和操作系统而异,一般而言需要进行以下步骤 (II).将 keystore.p12 文件配置到 Nginx 和

    2024年02月04日
    浏览(38)
  • 什么是https?https为什么安全?

    随着互联网的发展,HTTPS 协议在互联网通信中的应用越来越广泛,被越来越多的网站采用。相比于 HTTP 协议,HTTPS 协议的安全性更高,使得网络通信更加安全。那么,为什么 HTTPS 协议能够保证通信安全呢? 本文将从以下几个方面进行探讨:HTTPS 协议的基本原理,HTTPS 协议与

    2023年04月09日
    浏览(46)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包