2012-05-03 47 views
2

在SSL 3.0以下服務器問候消息未指定字節

16 03 00 00 51 02 00 
00 4d 03 00 4f a1 c1 
eb e3 fb 00 a9 c8 25 
25 48 6f 89 27 ec bb 
80 f3 8c 5d db f7 6c 
94 56 d8 34 7a b5 9d 
02 20 54 ab 20 ea 05 
a6 38 6f ee 55 40 ae 
af e2 5d ae 2a 4d c1 
c6 f4 09 a7 08 b1 c5 
49 39 87 82 d3 f7 00 
39 00 00 05 ff 01 00 
01 00 

我理解這種反應如下握手服務器響應:

Content-type: 22 (Handshake protocol) 
Version: 3.0 
Length: a1 (81 bytes) 

Content-type: 02 (ServerHello) 
Length: 4d (77 bytes) 
Version: 3.0 
Random: 4f a1 c1 eb e3 fb 00 a9 
     c8 25 25 48 6f 89 27 ec 
     bb 80 f3 8c 5d db f7 6c 
     94 56 d8 34 7a b5 9d 02 
SessionID Length: 20 (32 bytes) 
SessionID: 54 ab 20 ea 05 a6 38 6f 
      ee 55 40 ae af e2 5d ae 
      2a 4d c1 c6 f4 09 a7 08 
      b1 c5 49 39 87 82 d3 f7 
Cipher Suite: 00 39 
Compression method: 00 

但我不能明白是怎麼過去的應解釋7個字節:00 05 ff 01 00 01 00

回答

0

這將是renegotiation_info擴展名,如RFC 5746中所定義:

o If this is the initial handshake for a connection, then the 
    "renegotiated_connection" field is of zero length in both the 
    ClientHello and the ServerHello. Thus, the entire encoding of the 
    extension is ff 01 00 01 00. The first two octets represent the 
    extension type, the third and fourth octets the length of the 
    extension itself, and the final octet the zero length byte for the 
    "renegotiated_connection" field. 
+0

哦,謝謝。你能否指定在05(renegotiated_connection length)之前的第一個00字節的含義? – Lisio

+0

'00 05'是['Extension server_hello_extension_list <0..2^16-1>'list](http://tools.ietf.org/html/rfc4366#section-2.2)的長度(請參見[XDR notation](http:// tools。 ietf.org/html/rfc4506#section-4.13)),以2字節爲單位,因爲高達'2^16-1'。 – Bruno

+0

再次感謝!必須閱讀RFC 3456. – Lisio