https的连接过程

根证书: 内置在操作系统和浏览器中,可手动添加,下级是中间证书或服务器证书,只有当中间证书或服务器证书关联到已存在的根证书时,中间证书或服务器证书才视为有效

中间证书: 位于根证书和服务器证书之间,他们之间也可以没有中间证书,作用是对根证书增加一个下级,方便管理,由根证书签发

服务器证书: 我们在nginx上部署的证书,就是服务器证书,由根证书签发,用于证明服务器的身份

中间证书和服务器证书的签发过程: 这个签发过程包括CA使用其根证书私钥对服务器证书的内容(除了签名部分)进行哈希计算,并将得到的哈希值(也称为摘要或指纹)使用其私钥进行加密,生成签名。然后,这个签名被附加到服务器证书上,并随证书一起发送给客户端(如浏览器)。

打开https网页的验证证书过程: 在请求https时,服务器会先将配置的ssl证书或和中间证书一起,发送给浏览器,由浏览器从服务器证书向上查找中间证书,在到根证书,验证服务器发送的证书是否和浏览器本地的根证书列表的一项相匹配,匹配则继续请求,不匹配则终止请求.它们的匹配过程如下:

  1. 查找根证书:客户端首先会从服务器证书中的颁发者信息开始,逐级向上查找证书链,直到找到根证书。这个根证书通常已经内置在客户端的受信任根证书颁发机构列表中。

  2. 解密签名:客户端使用根证书的公钥来解密服务器证书中的签名部分。解密后,客户端会得到一个哈希值。

  3. 验证哈希值:客户端接着使用与CA相同的哈希算法对服务器证书的内容(除了签名部分)进行哈希计算,得到另一个哈希值。然后,客户端将这两个哈希值进行比较。

  4. 判断证书有效性:如果两个哈希值相同,说明服务器证书的内容在传输过程中没有被篡改,且该证书确实是由根证书所代表的CA签发的。此时,客户端可以认为服务器证书是有效的,并继续后续的HTTPS连接过程。

如果使用Fiddler开启https代理后,浏览器的请求会被转发到Fiddler,这时就需要Fiddler生成根证书并且信任,和临时服务器证书,这时Fiddler相对浏览器就是一个https服务器,相对远程服务器就相当是一个浏览器,来中转请求,实现解密和捕获HTTPS流量.

相关推荐
Ha_To9 分钟前
2025.12.18 NAT地址转换、PAT
linux·服务器·网络
火山引擎开发者社区23 分钟前
火山引擎 Force 大会发布 veRoCE 传输协议!
网络·火山引擎
ShenZhenDingYue1 小时前
吊车近电报警器的配置标准与事故预防策略
网络
yBmZlQzJ1 小时前
财运到免费内网穿透端口转发使用指南:实现TCP_UDP服务高效穿透
网络协议·tcp/ip·udp
爱尔兰极光1 小时前
计算机网络 --物理层
网络·计算机网络
发光小北1 小时前
SG-CANET-210(双通道 CAN 转以太网网关)特点与功能介绍
网络协议
山风wind1 小时前
网络分层模型:OSI和TCP/IP参考模型
服务器·网络·tcp/ip
月光技术杂谈1 小时前
基于Python的网络性能分析实践:从Ping原理到自动化监控
网络·python·性能分析·ping·时延·自动化监控
Bruce_Liuxiaowei3 小时前
全面TCP端口扫描:Nmap高级扫描技术与实战应用
网络·tcp/ip·网络安全·php
sailing-data4 小时前
【SE 网络】无线物联网络如何选
网络