亚欧色一区w666天堂,色情一区二区三区免费看,少妇特黄A片一区二区三区,亚洲人成网站999久久久综合,国产av熟女一区二区三区

  • 發布文章
  • 消息中心
點贊
收藏
評論
分享
原創

tls client hello報文解析

2024-06-25 09:46:52
406
0

完整的TLS流

先經過3次TCP握手,然后發tls client hello報文,開始tls握手。

client hello 包:client主動向server打招呼:這個是handshake握手包,版本是1.0,這個包的長度是2019字節;

核心的handshake protocol,字段較多

前面3個:handshake type類型、length長度、version版本。

random:client隨機生成一個32字節的數發給server。作用有幾個:1)防止重放攻擊  2)后續用于完整性校驗   3)生成encrypt-key,開始加密應用層數據。

session ID:服務器生成session id,存放本次session協商好的對稱密鑰。下次通信時,客戶端帶上session id,server就知道用哪個對稱密鑰繼續加密數據。不過session id有些缺陷,已被session ticket替代。

cipher suites:client列舉自己支持的加密套件。前面是非對稱加密算法,協商對稱算法密鑰的;后面都是加密應用數據的對稱算法。后續server會根據自己的情況選擇合適的加密套件。

extension:有好多分項,都有不同的含義,先看server name,這里訪問的是webide。

supported groups:由于安全性和效率問題,tls1.3已經不再使用RSA,而是橢圓曲線。不同的橢圓曲線對應不同的曲線形狀,會產生不同的公鑰;不同的基點也會導致產生不同的公鑰,所以這里有5種不同的橢圓曲線參數供client選擇。

session ticket:作用和session id類似,這里還是client hello階段,這個字段暫時沒有值;保留字段,帶上空值,也可以向服務器標明client支持session ticket功能。

application layer protocol negotiation:協商tls上層的應用層協議,這里采用的是http1.1協議

key share:client列舉出了自己支持的加密套件,并把所有的非對稱加密算法的公鑰都一并帶上,server收到后可以直接根據接受的ECDHE和client的公鑰生成自己的公鑰和對稱密鑰。

psk key exchange models:psk_dhe_ke=1,這里雙方約定用非對稱加密方法ECDHE協商一個對稱密鑰

supported version:支持的tls版本,tls1.2、tls1.3

pre-shared key:psk本質也是一串ID,這里有113字節,最早是server和client通過tls成功握手后把key和其他一些信息通過HMAC轉換后發給client;client后續訪問可以直接帶上這個PSK,就不用再做密鑰協商,節約時間。

其中4個extension是必須的:psk_key_exchange_modes、pre_shared_key、key_share、supported_versions。

0條評論
作者已關閉評論
a****k
16文章數
0粉絲數
a****k
16 文章 | 0 粉絲
原創

tls client hello報文解析

2024-06-25 09:46:52
406
0

完整的TLS流

先經過3次TCP握手,然后發tls client hello報文,開始tls握手。

client hello 包:client主動向server打招呼:這個是handshake握手包,版本是1.0,這個包的長度是2019字節;

核心的handshake protocol,字段較多

前面3個:handshake type類型、length長度、version版本。

random:client隨機生成一個32字節的數發給server。作用有幾個:1)防止重放攻擊  2)后續用于完整性校驗   3)生成encrypt-key,開始加密應用層數據。

session ID:服務器生成session id,存放本次session協商好的對稱密鑰。下次通信時,客戶端帶上session id,server就知道用哪個對稱密鑰繼續加密數據。不過session id有些缺陷,已被session ticket替代。

cipher suites:client列舉自己支持的加密套件。前面是非對稱加密算法,協商對稱算法密鑰的;后面都是加密應用數據的對稱算法。后續server會根據自己的情況選擇合適的加密套件。

extension:有好多分項,都有不同的含義,先看server name,這里訪問的是webide。

supported groups:由于安全性和效率問題,tls1.3已經不再使用RSA,而是橢圓曲線。不同的橢圓曲線對應不同的曲線形狀,會產生不同的公鑰;不同的基點也會導致產生不同的公鑰,所以這里有5種不同的橢圓曲線參數供client選擇。

session ticket:作用和session id類似,這里還是client hello階段,這個字段暫時沒有值;保留字段,帶上空值,也可以向服務器標明client支持session ticket功能。

application layer protocol negotiation:協商tls上層的應用層協議,這里采用的是http1.1協議

key share:client列舉出了自己支持的加密套件,并把所有的非對稱加密算法的公鑰都一并帶上,server收到后可以直接根據接受的ECDHE和client的公鑰生成自己的公鑰和對稱密鑰。

psk key exchange models:psk_dhe_ke=1,這里雙方約定用非對稱加密方法ECDHE協商一個對稱密鑰

supported version:支持的tls版本,tls1.2、tls1.3

pre-shared key:psk本質也是一串ID,這里有113字節,最早是server和client通過tls成功握手后把key和其他一些信息通過HMAC轉換后發給client;client后續訪問可以直接帶上這個PSK,就不用再做密鑰協商,節約時間。

其中4個extension是必須的:psk_key_exchange_modes、pre_shared_key、key_share、supported_versions。

文章來自個人專欄
文章 | 訂閱
0條評論
作者已關閉評論
作者已關閉評論
0
0