代码之家  ›  专栏  ›  技术社区  ›  RaYell

在C中实现SSL隧道#

  •  3
  • RaYell  · 技术社区  · 16 年前

    作为大型应用程序的一部分,我需要在C中实现一个SSL隧道。我想知道是否有更好的方法可以做到这一点,而不是自己编写SSL协商的每一步,这听起来像是在重新设计方向盘。

    你知道我是否可以使用任何库来最小化我需要编写的代码,或者任何教程来演示如何在.NET中最有效地实现这个或类似的东西吗?

    3 回复  |  直到 15 年前
        1
  •  4
  •   Armin    15 年前

    SSlStream 应该为你做大部分的工作。

        2
  •  0
  •   Eugene Mayevski 'Callback    15 年前

    不清楚您所说的SSL隧道是什么意思。如果我理解正确,您需要一些客户端软件,它充当本地服务器(其他应用程序连接到该服务器),然后该软件使用SSL连接到您的服务器端软件,从而将数据从SSL通道中取出,并进一步路由它们。在这种情况下,您需要客户端和服务器端的SSL/TLS组件。你可以用我们的 SecureBlackbox 对于此任务。SecureCblackbox为SSL/TLS协议提供全面的支持,并对连接和证书管理进行完全控制。

    可能您不需要普通的SSL通道,而是需要某种加密代理。在这种情况下,您需要决定您想要什么样的代理(它是SOCKS代理还是HTTP连接代理)并在客户端实现它。这种代理的好处之一是它可以将实际的连接地址(即客户机希望转到的位置)传输到远程服务器,并且远程服务器将执行连接。这是一种更灵活的方法,但它需要一些(我应该说是最小的)编码来实现与SOCKS或HTTP连接请求解析和响应生成相关的东西。

        3
  •  0
  •   Richard    15 年前

    .NET包括以 System.Net.Security.SslStream 班级。