2014-02-06 61 views
1

我試圖理解一個SSL客戶端Hello數據包,但我卡在最後一個視圖字節上。ssl client_hello,身份不明的數據

0000 16 03 00 00 58 01 00 00 54 03 03 52 f3 8a b2 f6 ....X...T..R....
0010 35 b8 08 39 25 5f 61 73 d5 b6 af 4d 3c 1a 2d 70 5..9%_as...M<.-p
0020 58 2e be 8a 89 b6 5c e1 9a 3f 81 00 00 18 00 35 X.....\..?.....5
0030 00 2f 00 0a 00 05 00 04 00 38 00 32 00 13 00 66 ./.......8.2...f
0040 00 39 00 33 00 16 01 00 00 13 ff 01 00 01 00 00 .9.3............
0050 0d 00 0a 00 08 04 02 04 01 02 01 02 02 .............

我走到這一步:
16:味精型
03 00:SSL版本 00 58:記錄長度
01:握手類型 - CLIENT_HELLO
00 00 54:消息長度
03 03:客戶端優選的版本
52 F3 8A B2 F6 35 ... 5C E1 9A 3F 81:隨機數據/時間戳
00:會話ID長度0
00 18:Ciphersuit長度 00 35 00 .. 16:密碼套件
01:壓縮方法長度
00:壓縮方法
00 13 FF 01 00 01 00 00 0D 0A 00 00 08 04 02 04 01 02 01 02 02:這是什麼?
起初認爲它是挑戰數據,但它似乎在所有包中都是不變的。

我的用於解密分組主引導是:http://www.ntu.edu.sg/home/ehchua/programming/webprogramming/HTTP_SSL.html(下CLIENT_HELLO)

(抱歉壞格式化)

回答

1

壓縮方法後的字節是TLS擴展(見RFC 5246, section 7.4.1.2 Client Hello)。

0x13 0x00 length of extensions 

的第一個是renegotiation_info延伸(見RFC 5746, Section 3.2 Extension Definition):

0xff 0x01 renegotiation_info 
0x00 0x01 length 
0x00   0x00 for inital handshakes 

另一種是signature_algorithms延伸(RFC 5246, section 7.4.1.4.1):

0x00 0x0d signature_algorithm 
0x00 0x0a length 
0x00 0x08 HashAlgorithm: none, SignatureAlgorithm: 0x08 
0x04 0x02 HashAlgorithm: sha-256, SignatureAlgorithm: dsa 
0x04 0x01 HashAlgorithm: sha-256, SignatureAlgorithm: rsa 
0x02 0x01 HashAlgorithm: sha-1, SignatureAlgorithm: rsa 
0x02 0x02 HashAlgorithm: sha-1, SignatureAlgorithm: dsa