JKJS

谁能告诉下面一行是seq_num吗?

HMAC_hash(MAC_write_secret, seq_num + TLSCompressed.type + TLSCompressed.version + TLSCompressed.length + TLSCompressed.fragment));


RFC 2246定义如下:

seq_num
   The sequence number for this record.


但是TLS记录中的序列号在哪里?这些数字在哪里生成并分配给记录?

JKJS
哈迪克

最佳答案

对于完成的记录,这些序列号将为零,从那时起,对于每个记录,这些序列号将递增。

这些不随记录一起发送,但应由实现维护并用于每个记录的HMAC生成。如果TLS记录不按顺序到达,则MAC验证将失败,因为在对等方用于MAC生成的序列号与自身所期望的序列号将不同。

关于openssl - TLS 1.0版中的已完成消息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13642354/

10-13 02:23