【问题标题】:Using SslStream with IOCP将 SslStream 与 IOCP 一起使用
【发布时间】:2009-08-11 19:06:28
【问题描述】:

我使用 Socket 类的异步/IOCP 方法,BeginSend()/BeginRead()/等编写了一个 TCP 服务器。我想使用 SslStream 添加 SSL 功能,但从界面看来 Socket 和 SslStream 并不打算一起工作,特别是因为我根本没有使用 Streams 并且 SslStream 似乎依赖于使用 Stream .

这可能吗,还是我找错地方了?我是否需要制作自己的 Stream 子类来输入我的 Socket 实例并指向 SslStream ?由于扩展问题,我的服务器使用 IOCP 对我来说很重要。

【问题讨论】:

    标签: c# .net sockets iocp sslstream


    【解决方案1】:

    将您的 Socket 包装在 NetworkStream 中,以便与 SslStream 一起使用。

    Socket socket;
    ...
    using (var networkStream = new NetworkStream(socket, true))
    using (var sslStream = new SslStream(networkStream, ...))
    {
       // use sslStream.BeginRead/BeginWrite here
    }
    

    Streams 也公开 BeginRead/BeginWrite 方法,因此您不会失去这一方面。

    【讨论】:

      猜你喜欢
      • 2012-07-06
      • 1970-01-01
      • 2017-08-17
      • 1970-01-01
      • 1970-01-01
      • 2021-02-19
      • 1970-01-01
      • 1970-01-01
      • 2019-09-22
      相关资源
      最近更新 更多