Witam,
napisałem prosty programik, który łączy się po ssl-u z serwerem, jednak występują problemy i podczas łączenia dostaję komunikat:
Unhandled Exception: System.IO.IOException: The authentication or decryption has failed. ---> Mono.Security.Protocol.Tls.TlsException: Invalid certificate received from server.
at Mono.Security.Protocol.Tls.Handshake.Client.TlsServerCertificate.validateCertificates (Mono.Security.X509.X509CertificateCollection certificates) [0x00000]
at Mono.Security.Protocol.Tls.Handshake.Client.TlsServerCertificate.ProcessAsTls1 () [0x00000]
at Mono.Security.Protocol.Tls.Handshake.HandshakeMessage.Process () [0x00000]
at (wrapper remoting-invoke-with-check) Mono.Security.Protocol.Tls.Handshake.HandshakeMessage:Process ()
at Mono.Security.Protocol.Tls.ClientRecordProtocol.ProcessHandshakeMessage (Mono.Security.Protocol.Tls.TlsStream handMsg) [0x00000]
at Mono.Security.Protocol.Tls.RecordProtocol.InternalReceiveRecordCallback (IAsyncResult asyncResult) [0x00000]
Wina z tego co wiem leży po stronie serwera dlatego chce ignorować błędy ssla. Googlowalem już dobre 2 godziny znalazłem parę rozwiązań jednak żadne z nich nie pomogło (Callback zwracajacy zawsze true).
Kod:
string host = "jakishost.pl";
int port = 8084;
TcpClient client = new TcpClient(host, port);
NetworkStream netStream = client.GetStream();
SslStream sslStream = new SslStream(netStream, false);
sslStream.AuthenticateAsClient(host); // tutaj wystepuje exception, ktory chce ignorowac
pozdrawiam