从服务器获取支持的 TLS 版本
Getting supported TLS version from server
我有一个应用程序,我想在其中设置 TLS 版本,但这取决于服务器。我想设置服务器支持的 TLS 版本,不同的服务器可能不同,所以有没有 API 和方法来获取 java 或 [=14= 中任何服务器支持的 TLS 版本]?
如有任何帮助,我将不胜感激。
不需要预先知道服务器支持哪个版本。
在 SSL/TLS 中,客户端将开始握手,宣布它愿意支持的最高版本,服务器将只回复它可以支持的最好版本,并且不高于客户端版本。
您唯一需要此类知识的情况是您正在处理无法正确处理未知版本的损坏服务器。在这种情况下,浏览器会使用较低版本重试(即使用 TLS 1.0 而不是 TLS 1.2 重试),希望这会起作用。如果这有效,他们会记得服务器已损坏,需要使用较低版本进行处理以备将来连接。但是这种回退主要是在浏览器中完成的,其他应用程序只是在损坏的服务器上放弃。
我有一个应用程序,我想在其中设置 TLS 版本,但这取决于服务器。我想设置服务器支持的 TLS 版本,不同的服务器可能不同,所以有没有 API 和方法来获取 java 或 [=14= 中任何服务器支持的 TLS 版本]?
如有任何帮助,我将不胜感激。
不需要预先知道服务器支持哪个版本。 在 SSL/TLS 中,客户端将开始握手,宣布它愿意支持的最高版本,服务器将只回复它可以支持的最好版本,并且不高于客户端版本。
您唯一需要此类知识的情况是您正在处理无法正确处理未知版本的损坏服务器。在这种情况下,浏览器会使用较低版本重试(即使用 TLS 1.0 而不是 TLS 1.2 重试),希望这会起作用。如果这有效,他们会记得服务器已损坏,需要使用较低版本进行处理以备将来连接。但是这种回退主要是在浏览器中完成的,其他应用程序只是在损坏的服务器上放弃。