C++;在Windows上使用SSL确保Winsock TCP数据安全

C++;在Windows上使用SSL确保Winsock TCP数据安全,windows,sockets,security,ssl,tcp,Windows,Sockets,Security,Ssl,Tcp,我们有一个在Windows上开发的C\S应用程序。开发语言为C\C++并使用Winsock(TCP)库。现在基本功能完成了。由于服务器端工作在互联网上,我们必须确保数据的安全性。在互联网上搜索后,我们发现SSL有帮助。还有一篇关于Codeproject:,它展示了如何使用windows Schannel实现MFC CSocket的SSL 我还注意到该工具需要一个证书。对于我们的应用程序,我们没有证书 我们需要申请证书吗?如何申请?或者在本例中实现SSL的任何简单解决方案(我们希望使用Window

我们有一个在Windows上开发的C\S应用程序。开发语言为C\C++并使用Winsock(TCP)库。现在基本功能完成了。由于服务器端工作在互联网上,我们必须确保数据的安全性。在互联网上搜索后,我们发现SSL有帮助。还有一篇关于Codeproject:,它展示了如何使用windows Schannel实现MFC CSocket的SSL

我还注意到该工具需要一个证书。对于我们的应用程序,我们没有证书

  • 我们需要申请证书吗?如何申请?或者在本例中实现SSL的任何简单解决方案(我们希望使用Windows SSPI,而不是其他开源库,如OpenSSL)
  • 除了SSL之外,还有其他常见的解决方案来确保TCP套接字数据安全吗? 谢谢 您不需要严格的证书,但您应该使用证书,至少在服务器端使用证书,以便客户端可以验证它们是否连接到错误的服务器,如MITM攻击者。如果服务器想要验证客户机是否是他们所说的客户机,通常不会在客户机端使用证书,尽管可以


    是的,除了SSL/TLS,还有其他选项。例如或者,您可以使用任何您想要的加密引擎/库手动加密/解密套接字数据。SSL/TLS不仅仅是加密,它是一个完整的双向通信协议,在大多数平台上都得到广泛支持,所以您应该使用它

    没有“C/C++”这样的语言。一个或另一个。谢谢你!是的,服务器端应该使用证书。但我不知道该用哪一个。请帮忙!有很多便宜的/商业的SSL证书提供程序可用。或者,您可以使用自签名证书(如果您不需要付费证书提供的更严格的安全保证)。如果你环顾四周,就会发现关于这个话题的信息有很多。