Windows XP不支持TLSv1.2

时间:2017-01-02 07:47:39

标签: ssl visual-studio-2012 openssl tls1.2 sslv3

目前我正在开发一些需要我的客户端在Windows XP环境中使用TLSv1.2连接到主机服务器的东西。我已经使用openssl静态库构建了我的应用程序DLL,并使用相同的openssl dll来调用我的客户端示例应用程序。我正在使用visual studio 2012进行构建。 dll与windows 7环境完美配合,但它不能与windows xp一起使用。以下是我迄今为止尝试和探索过的事情。

1)在visual studio,项目属性中,我们可以选择我们想要构建的环境。我为windows xp选择了相同的。 visual studio properties for windows xp build

2)我正在使用openssl v1.0.2j,它支持TLS v1.2来构建我的应用程序DLL。

3)在我的dll代码中,我做了更改,将ctx初始化为tlsv1_2_method()。

4)我的客户端应用程序调用使用visual studio构建的应用程序dll在windows xp上运行。主机服务器使用TLSv1.2协议进行通信。所以我的客户端应用程序应该使用TLSv1.2进行通信,这就是问题所在。如果我使用sslv3,它的工作正常。

如果我在我的代码中使用了sslv3_method()并使用相同的设置进行构建,我可以从xp中的示例应用程序调用我的dll并且其工作正常。但是当我使用tlsv1_2_method()时,它无法正常发出错误,找不到my.dll。

我添加了所有必需的受支持库,并使用依赖walker软件进行检查。没有依赖的dll缺失。

我用google搜索上述问题,发现windows xp不支持TLSv1.1,TLSv1.2。但我也发现如果我们不使用Windows协议通信机制和我们自己的通信应用程序,那么它就可以完成。但我没有资源,也没有必要的深入知识。

是否有任何方法或步骤单独为windows xp构建openssl库?

如果有人能告诉我是否有办法可以做到这一点,那将是非常有帮助的。我是否需要以其他方式为windows xp构建openssl库,或者是否有任何我缺少的设置。以下是我在这个问题上获取信息的链接。

support-for-ssltls-protocols-on-windows

请指导我如何让tlsv1.2在windows xp上运行。

0 个答案:

没有答案