Error: C # La conexión subyacente se cerró: No se pudo establecer una relación de confianza para el canal seguro SSL / TLS

Estoy tratando de hacer una solicitud a través de SSL. El certificado ya está instalado en la máquina y funciona a través del navegador.

Estoy usando esta solicitud:

System.Text.ASCIIEncoding encoding = new System.Text.ASCIIEncoding();
byte[] data = encoding.GetBytes(request.Content.OuterXml.ToString());
string password = "XXXX";
X509Certificate2 cert = new X509Certificate2("c:\\zzzz.p12", password);
string key = cert.GetPublicKeyString();
string certData = Encoding.ASCII.GetString(cert.Export(X509ContentType.Cert));

Uri uri = new Uri(request.Url);
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(uri);
myRequest.Credentials = new NetworkCredential(request.User, request.Password.ToString());
myRequest.Method = "PUT";
myRequest.ContentType = request.ContentType;
myRequest.ContentLength = data.Length;
myRequest.ClientCertificates.Add(cert);

Stream newStream = myRequest.GetRequestStream();
newStream.Write(data, 0, data.Length);
newStream.Close();

System.IO.StreamReader st = new StreamReader(((HttpWebResponse)myRequest.GetResponse()).GetResponseStream());

Usando este código me sale este error:

La conexión subyacente se cerró: no se pudo establecer una relación de confianza para el canal seguro SSL / TLS. ---> System.Security.Authentication.AuthenticationException: El certificado remoto no es válido de acuerdo con el procedimiento de validación.

¿Cuál es el problema?

Respuestas a la pregunta(3)

Su respuesta a la pregunta