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/