我的 C# 程序使用什么版本的 TLS?

What version of TLS does my C# program use?

我在 Visual Studio 2013 年开发了一个与 SOAP 网络服务通信的 C# 程序。我如何知道我的程序使用哪个版本的 TLS?

.NET 4.5 中添加了 TLS 1.2。最早受支持的 .NET 版本是 4.5.2,因此如果您使用受支持的版本,就不会有任何问题。

.NET 4.6 默认使用 TLS 1.2。早期版本需要这一行来启用它:

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | 
                                       SecurityProtocolType.Tls11;

TLS 1.0 正在逐步淘汰,SSL v3 被认为已损坏,因此不应添加它们。

另一个检查的好方法是安装 WireShark (https://www.wireshark.org/download.html)

并在 运行 您的应用程序中使用它。 在 TLS 数据包中,您将能够看到版本等:

Example for Wireshark View Of TLS traffic...

我通过指示我的程序向 https://www.howsmyssl.com/a/check 发出请求得到了答案。