目录
0.SSL握手
1.SSL握手流程
2.WireShark抓包分析
2.1握手数据包总览
2.2数据包解析
2.2.1.392:客户端发送Client Hello,
2.2.2.403:服务端发送Server Hello ,
2.2.3.406:Certificate 发送服务端的证书及其根证书,
2.2.4.411:Server Key Exchange ,
2.2.5.412: Server Hello Done hello结束通知
2.2.6.417:Client Key Exchange 交换客户端的加密密钥
2.2.7.418:Application Data 应用数据
总结
0.SSL握手
类似与TCP的3次握手建立TCP连接,SSL握手是用于建立SSL(Security Socket Layer)层的连接。SSL握手的场景很多,比如最常见的HTTPS,访问https://www.baidu.com 时,在进行HTTPS的应用数据传递之前,需要建立SSL的连接!!
1.SSL握手流程
Client Hello 协商ssl/tls协议版本、加密算法套件
Server Hello
Certificate
Server Key Exchange
Server Hello Done
Client Key Exchange
Application Data Protocol: http-over-tls 业务数据安全传输
2.WireShark抓包分析
2.1握手数据包总览
3次握手TCP建立连接完成后,开始会话层的建立会话,
图中ip尾号为242的是客户端,121的是服务端
2.2数据包解析
每一个数据包的解析如下
2.2.1 客户端发送Client Hello,图中392号报文
主要是协商协议版本、加密算法套件(此处发送了17个套件)
通过一下的包,可以发现 主要时发送客户端SSL/TLS版本、随机数Random、计算算法套件Cipher Suites
2.2.2 服务端发送Server Hello ,403号
选择算法套件TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
2.2.3 Certificate 发送服务端的证书及其根证书,406
由于访问的是https://www.baidu.com/,所以需要传输Subject是baidu.com的公钥证书,以供客户端认证服务端的身份。
2.2.4 Server Key Exchange ,411
服务端交换通信密钥,如图发送了服务端加密公钥和签名算法
2.2.5 Server Hello Done hello结束通知 412:
2.2.6.417:Client Key Exchange 交换客户端的加密密钥
2.2.7 Application Data 应用数据 418号
业务数据加密后安全传输
注意:
1、服务端的公钥和私钥是一对,客户端会生成随机数,作为解密,公钥加密。同时公钥加密后,服务端通过私钥加密后,就获取到了解密的随机数。之后就用客户端生成的随机数,做对称加密,解密;文章来源:https://www.toymoban.com/news/detail-770516.html
2、服务端的数字证书是权威的CA认证,可防止被恶意拦截,数字证书通过MD5验证,通过才可以进行数据交互。文章来源地址https://www.toymoban.com/news/detail-770516.html
到了这里,关于SSL加密的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!