HTTPS是怎么建⽴连接的(通俗易懂版)

首先了解HTTPS的构造,如下图所示:


SSL/TLS 协议基本流程:

  • 客户端向服务器索要并验证服务器的公钥。
  • 双⽅协商⽣产「会话秘钥」。
  • 双⽅采⽤「会话秘钥」进⾏加密通信。

HTTPS建立连接的具体流程如下:

  1. ⾸先,客户端向服务器端发送加密通信请求,也就是 ClientHello 请求,请求与服务端建⽴连接。
  2. 服务端产⽣⼀对公私钥,然后将⾃⼰的公钥发送给CA机构,CA机构也有⼀对公私钥,然后CA机构使⽤⾃⼰的 私钥将服务端发送过来的公钥进⾏加密,产⽣⼀个CA数字证书。
  3. 服务端响应客户端的请求,也就是 SeverHello , 将CA机构⽣成的数字证书发送给客户端。
  4. 客户端将服务端发送过来的数字证书进⾏解析(因为浏览器产商跟CA机构有合作,所以浏览器中已经保存了⼤部分CA机构的密钥,⽤于对服务端发送过来的数字证书进⾏解密),验证这个CA数字证书是否合法,如果不合法,会发送⼀个警告。如果合法,从数字证书中取出服务端⽣成的公钥。
  5. 客户端取出公钥并⽣成⼀个随机码key(其实就是对称加密中的密钥)
  6. 客户端将加密后的随机码key发送给服务端,作为接下来的对称加密的密钥
  7. 服务端接收到随机码key后,使⽤⾃⼰的私钥对它进⾏解密,然后获得到随机码key。
  8. 服务端使⽤随机码key对传输的数据进⾏加密,在传输加密后的内容给客户端
  9. 客户端使⽤⾃⼰⽣成的随机码key解密服务端发送过来的数据,之后,客户端和服务端通过对称加密传输数据,随机码Key作为传输的密钥

其中的证书信任链

证书信任链( Certificate Trust Chain )是数字证书的验证过程中的⼀部分,确保数字证书是由可信的证书颁发机 构(CA )签发的,并最终连接到根证书,形成⼀条链条。

  1. 根证书 :信任链的顶端是根证书( Root Certificate ),也称为根 CA 证书。根证书是数字证书体系中的根基, 它由操作系统或浏览器内置,作为信任的起点。
  2. 中间证书颁发机构( Intermediate CA :在信任链中,根证书下⽅可能有⼀个或多个中间 CA ,也称为中间 证书颁发机构。这些中间CA 的数字证书由根 CA 签发,它们作为信任链中的中继,⽤于签发其他证书。
  3. 服务器证书 :在最底层是服务器的数字证书,它是由中间 CA 签发的,包含了服务器的公钥和相关信息。服务 器证书需要在客户端验证的过程中被验证。
    证书验证过程中,客户端会依次验证服务器证书、中间 CA 的证书、根 CA 的证书。如果整个链条中的所有证书都可以被成功验证,那么数字证书被视为合法和可信的。相反,如果任何⼀个证书⽆法验证,整个信任链就会被打断, 数字证书将被视为不合法或不可信的。
相关推荐
黄筱筱筱筱筱筱筱43 分钟前
LINUX-防火墙
linux·服务器·网络
сокол1 小时前
【网安-Web渗透测试-靶场系列】AWD-Platform(ctf-hub)
linux·服务器·ubuntu·网络安全·docker
utf8mb4安全女神2 小时前
Linux系统服务相关命令【定时任务设置】【任务进程管理】【防火墙区域应用】
linux·运维·服务器
L、2184 小时前
昇腾NPU性能调优Checklist——从“能跑“到“跑得快“的20步
服务器·人工智能·深度学习
liulilittle5 小时前
TCP UCP 卡尔曼滤波器
网络·网络协议·tcp/ip·通信
不吃土豆的马铃薯5 小时前
Spdlog 进阶:日志基本控制、日志格式控制、异步记录器
linux·服务器·开发语言·前端·c++
疯狂成瘾者5 小时前
常见的 Linux 版本
linux·运维·服务器
GOTXX5 小时前
SenseNova U1 实战体验:API 调用 + OpenClaw 接入全流程
服务器·网络·人工智能·语言模型
xingyuzhisuan6 小时前
GPU服务器集群搭建指南——选型、部署、优化+避坑全解析
运维·服务器·人工智能·gpu算力
2601_955256476 小时前
云服务器采购避坑指南:如何通过官方渠道获得更低折扣与更快服务
运维·服务器