当前位置:网站首页>Wireshark抓包分析SSL握手的过程
Wireshark抓包分析SSL握手的过程
2022-06-21 15:37:00 【清菡】
刚才用图和文字描述讲解了SSL协议的交互过程HTTPS协议--通过SSL协议实现安全保障的过程和原理。
用Wireshark抓包进行详细的讲解。抓的是某机构腾讯课堂的首页。
(因为网页有变动,所以实际抓包抓到的内容与图片不符。但是图片中抓到的包是正确的,讲解的技术也是正确的。)
选择一个TLS的请求,右键--追踪流--TLS。
一、就能看到完整的SSL交互的过程:
上面是TCP三次握手,三次握手之后就进入SSL握手的过程。
二、SSL握手过程
1.第一个SSL握手是客户端向服务器发起的Client Hello消息。
点开这个请求看下内容:
可以看到第四层是TCP协议,源端口是随机的端口,目的端口是443。
SSL协议默认是基于TCP的443端口。HTTP默认是TCP的80端口。所以HTTPS默认是TCP的443端口。
TLS协议在四层之上。TLS协议里面是这样的类型:是一个握手协议,并且是个Client Hello。
支持TLS1.0,TLS1.2。
TLS是SSL协议的一个版本。 SSL协议版本:SSLv3,TLS1.0,TLS1.2
客户端把自己所支持的TLS版本都列在了Client Hello里面。就跟我们的加密套件是一样的。
这个是当前客户端所支持的所有的加密套件
以上就是Client Hello里面所包括的一些重要的消息。
2.Sever开始回复客户端Server Hello了。点开这个请求可以看到:
客户端支持TLS1.0和TLS1.2,服务器从中选了一个共同都支持的版本:TLS1.2。
这是个Server Hello的握手类型。
选一个共同都支持的加密套件:
服务器从客户端发的消息里面,选了版本选了套件。都在Server Hello里面都告诉了客户端。
3.Server Hello之后,服务器发了一个证书。
点开可以看到:
在这个里面主要看的是证书。服务器可能有很多个证书。它会把这些证书都加上都发给客户端。
4.客户端拿到证书去做验证。验证完毕后生成一个本地的随机密码,并且把密码发给服务器。
告诉服务器,我后面的报文开始加密了。点开请求可以看到:
里面可以看到:加密报文类型,会加密密钥。
这个是为了保证数据完整性的一个信息:
从抓包内容来看,客户端发完之后,这个过程完成了。(抓包工具将交互的过程简化了,都放一起了。如果看分开的具体过程就是上篇文章图片画的过程。)
三、握手结束,后面就开始发送HTTP数据包了。
可以看到这个HTTP数据包是加过密的:
http-over-tls意思是:是在tls基础上发的一个HTTP交互报文,是加密的。
边栏推荐
- Uniapp gets the height of the specified element div in the interface
- Implementation of asynchronous request pool
- TypeScript(6)函数
- Typescript (6) function
- Several common implementation methods of mock interface test
- soEasyCheckin
- Distributed monomer brought by microservice architecture
- 关于#sql#的问题:sql中有人知道这些问题大概是怎么解答吗?
- 旭日图有效展示数据的层级和归属关系
- Turn off WordPress auto thumbnail
猜你喜欢
随机推荐
Gold, silver and four are coming soon. What do you need to prepare for looking for a job?
Warning about UUIDs in MySQL master-slave replication
Typescript (6) function
高级性能测试系列《4.性能测试的前提、性能测试工具、性能测试流程》
AGCO AI frontier promotion (2.22)
【深度学习】被PyTorch打爆!谷歌抛弃TensorFlow,押宝JAX
WEB3 安全系列 || 攻击类型和经验教训
Manual instructions for Huawei AGC SMS service
Leetcode: number of good subsets (backtracking + state compression +dfs + pruning)
Three sides of the headline: tostring(), string Valueof, (string) forced rotation. What is the difference
Native JS routing, iframe framework
Daily practice (23): the first character that appears only once
对Integer进行等值比较时踩到的一个坑
目前哪个期货公司开户比较好?请问手续费低、交易又安全?
Score-Based Generative Modeling through Stochastic Differential Equations
Research Report on the overall scale, major manufacturers, major regions, products and applications of high pressure gas supply system in the global market in 2022
PHP code to record the number of visitors
Encryption market "escape": clearing, selling and running
Merge two ordered linked lists
Dentron: ultra fast open source notes in vscode




![[North Asia data recovery] SQLSERVER database encrypted data recovery case sharing](/img/6d/7fc3c563fa1c503cbf09f345a4c042.jpg)
![[pytorch basic tutorial 29] DIN model](/img/13/a180134e149c7ec08ff878f3e3514c.png)



