显式SSL / TLS版本选择

时间:2018-01-04 10:40:35

标签: c# .net wcf ssl tls1.2

我知道何时我们应该使用C#& amp;显式地通过ServicePointManager.SecurityProtocol属性设置支持的TLS版本。 .NET。

但我不知道为什么我们应该这样做?

  

根据MSDN:此属性选择安全套接字的版本   用于新的层(SSL)或传输层安全性(TLS)协议   使用安全超文本传输​​协议(HTTPS)的连接   方案;现有连接不会更改。

据我所知,客户端和服务器之间的SSL / TLS版本协议是在TLS握手时达成的。

问题:有人可以解释一下显式版本选择的相关性吗? 为什么我们应该在TLS握手阶段进行此类协商时提及受支持的TLS版本?

1 个答案:

答案 0 :(得分:0)

  

Steffen Ullrich回答(SE

这不用于选择特定协议版本,而是用于设置允许的协议版本列表。通常,您希望拥有TLS 1.2及更高版本,可能出于兼容性原因而不是TLS 1.1和TLS 1.0,但您不希望允许SSLv3或更低版本。通过使用此API,您可以调整以下TLS握手中允许的协议。