C# .NET Framework 3.5支持TLS 1.2

 

Windows10已经自动支持了,如果你的程序是.net 3.5的版本,那么很简单,只需要调用请求前执行这段代码即可

public const SslProtocols _Tls12 (SslProtocols)0x00000C00;
public const SecurityProtocolType Tls12 (SecurityProtocolType)_Tls12;
ServicePointManager.SecurityProtocol = Tls12

 

如果你的电脑是Windwos7,那么需要安装一个补丁包,我在网上找了很久,最重要的是微软把他们自己官网的文件删除了

微软官网:

https://support.microsoft.com/en-us/topic/support-for-tls-system-default-versions-included-in-the-net-framework-3-5-1-on-windows-7-sp1-and-server-2008-r2-sp1-5ef38dda-8e6c-65dc-c395-62d2df58715a

 

幸运的是我找到了并且下载保存了起来,现在就把链接贴上供各位下载。安装加上上面的代码就可以了。

https://files.cnblogs.com/files/qigao/WIndows_kb3154518.zip?t=1645683641

 

注意:如果你的程序已经是固定的,没有代码,那就需要在安装补丁后更改注册表

  • 在开始中输入regedit
  • 右键单击并以管理员身份运行
  • 导航到注册表项 

[HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ .NETFramework \ v2.0.50727]

[HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ .NETFramework \ v2.0.50727]

  • 右键单击注册表项,然后单击导出。
  • 命名文件并以.reg扩展名保存(将其保留为备份,以备需要恢复时使用)

  • 将条目添加到注册表项
  • 复制保存的文件并重命名
  • 使用文本编辑器打开,然后在每个键中添加以下文本(这适用于64位操作系统)并保存更改(对于32位操作系统,请查看链接中的信息)

[HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ .NETFramework \ v2.0.50727]
" SystemDefaultTlsVersions" = dword:00000001

[HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ .NETFramework \ v2.0.50727]
" SystemDefaultTlsVersions" = dword:00000001

  • 双击文件,然后在窗口上单击"是"以允许更改
posted @ 2022-02-24 14:30  居~  阅读(1149)  评论(1编辑  收藏  举报