RFC中的HTTPS交互過程如下:


抓包分析
Client Hello

客戶端支持的TLS最高版本號
客戶端生成的隨機數(shù)
客戶端支持的加密套件
主機名server_name

cipher suite怎么理解
名字為 ECDH-ECDSA-AES128-SHA256 的CipherSuite
使用 ECDH做密鑰交換, 使用ECDSA做認證, 使用AES-128做加密算法, 使用SHA256做MAC算法。 客戶端能支持的加密套件即瀏覽器能支持的加密算法

協(xié)商后的TLS/SSL版本號
服務端生成的隨機數(shù)
協(xié)商后的加密套件

服務端提供證書信息給客戶端驗證,包括證書有效期等

密鑰交換用到的服務器方的信息,有公鑰信息
Server Hello Done

客戶端與服務端的SSL握手過程結束
Cerficate(Client–>Hello)*
雙向校驗,服務端要求驗證客戶端的證書信息
Client Key Exchange(Client–>Server)

Change Cipher Spec(Client–>Server)

通知服務端,接下來的數(shù)據(jù)采用session Key對稱加密的方式
Encrypted Handshake Message(Client–>Server)

客戶端隨后發(fā)送一個經(jīng)過加密的數(shù)據(jù),服務端可以根據(jù)生成的session Key來進行解密,這個加密的消息解密后有固定的格式,符合這個格式,或者滿足一些字符匹配才是合法的。
Change Cipher Spec(Server–>Hello)

通知客戶端接下來的數(shù)據(jù)采用被sessionKey加密的對稱加密方式
Encrypted Handshake Message(Server–>Client)

服務端立刻發(fā)送一個經(jīng)過加密的消息,讓客戶端進行驗證
正常的數(shù)據(jù)交互
至此之后,服務端和客戶端之間通過協(xié)商的sessionKey進行數(shù)據(jù)交互
服務端支持的TLS版本提高至1.3,客戶端與服務端通信抓包實踐

會直接RST連接,無法建立連接
改寫nginx配置文章來源:http://www.zghlxwxcb.cn/news/detail-670889.html
#ssl_protocols TLSv1.2; ?ssl_protocols TLSv1.3;文章來源地址http://www.zghlxwxcb.cn/news/detail-670889.html
到了這里,關于HTTPS】HTTPS過程詳解,tcpdump抓包 全過程分析的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!