2016-04-30 78 views
1

有没有办法将SSL添加到我的套接字?我只想使用我现有的代码,但是我在互联网上找到的所有代码都是针对不同类型的实现。c#套接字使用Ssl

partial void btnConnectClicked(NSObject sender) { 
     try { 
      clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); 
      lock (clientSocket) { 
       clientSocket.BeginConnect(new IPEndPoint(IPAddress.Loopback, 3333), new AsyncCallback(ConnectCallback), null); 
      } 
     } 
     catch (Exception ex) { 
      Console.WriteLine(ex); 
     } 
    } 

    partial void btnSendClicked(NSObject sender) { 
     try { 
      string text = tbText.StringValue; 

      byte[] buffer = Encoding.ASCII.GetBytes(text); 
      clientSocket.BeginSend(buffer, 0, buffer.Length, SocketFlags.None, new AsyncCallback(SendCallback), null); 

     } 
     catch (Exception ex) { 
      Console.WriteLine(ex); 
     } 
    } 

    private void ConnectCallback(IAsyncResult AR) { 
     try { 
      clientSocket.EndConnect(AR); 
      SetEnabled(); 
     } 
     catch (Exception ex) { 
      Console.WriteLine(ex); 
     } 
    } 

    private void SendCallback(IAsyncResult AR) { 
     try { 
      clientSocket.EndSend(AR); 
     } 
     catch (Exception ex) { 
      Console.WriteLine(ex); 
     } 
    } 

我希望有人能帮助我

+0

通过Socket使用SslStream。 –

回答

2

我读过的一切说,使用SslStream

This guy围绕使用SSL的Socket类编写了一个辅助类,但他在那篇文章中承认SslStream会使生活更轻松。

+0

这帮了我很多,谢谢 –