JKJS
“客户端完成的消息是对所有握手消息的加密”。
但目前尚不清楚:
1)它是否仅包含客户端发送的握手消息?
2)它是否仅包含从服务器收到的握手消息?
3)或者它是否包含以上两者?
4)握手消息是否包含“更改密码规范”消息?
请帮帮我。
JKJS
答案 0 :(得分:2)
完成的消息将包含从服务器和客户端发送的握手消息。它不包含Change Cipher Spec Message,因为它不被视为握手消息的一部分。
RFC 2246中的以下段落解释得很好:
服务器发送的已完成消息中包含的哈希包含Sender.server;客户发送的内容包含Sender.client。值handshake_messages包括从客户端问候开始的所有握手消息,但不包括此完成的消息。这可能与7.4.8节中的handshake_messages不同,因为它将包括证书验证消息(如果已发送)。此外,客户端发送的已完成消息的handshake_messages将与服务器发送的已完成消息的handshake_messages不同,因为第二次发送的消息将包含前一个消息。
注意:更改密码规范消息,警报和任何其他记录类型不是握手消息,并且不包含在哈希计算中。此外,握手哈希值中省略了Hello Request消息。