SSLv3和TLS(v1,v1.1或v1.2)可以一起工作
问题描述:
我试图用不同的协议设置客户端和服务器,并在它们之间发送一些字节。SSLv3和TLS(v1,v1.1或v1.2)可以一起工作
看来他们工作得很好。有人可以给我一些关于当他们意识到差异时发生的事情的链接吗?像协议谈判一样?自降级?
答
一旦协议版本已经确定,它们就不能互操作,但是在握手开始时有一种协商版本的机制。实质上,客户端在启动握手时发布它支持的最高版本,并且服务器返回其支持的最高版本,该版本低于或等于客户端支持的版本。当然,服务器也可以根据需要禁用这些较低版本(在这种情况下,连接将不会建立)。
的TLS specification有这样说的Server Hello
消息server_version
:
server_version This field will contain the lower of that suggested by the client in the client hello and the highest supported by the server. For this version of the specification, the version is 3.3. (See Appendix E for details about backward compatibility.)
Appendix E.1也应该给你进一步的解释。