ssl client_hello,未识别的数据

时间:2014-02-06 17:11:54

标签: ssl

我正在尝试理解SSL客户端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:msg类型
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:密码长度 00 35 .. 00 16:密码套件
01:压缩方法长度
00:压缩方法
00 13 ff 01 00 01 00 00 0d 00 0a 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 个答案:

答案 0 :(得分: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