C#在客户端验证数字证书(Certificate)

时间:2022-01-18 04:06:22

ServicePointManager.ServerCertificateValidationCallback = CertificateValidationCallback;//Init时执行,用于注册方法。 public static bool CertificateValidationCallback(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors) { Console.WriteLine(string.Format("Subject: {0}", certificate.Subject)); Console.WriteLine(string.Format("Issuer: {0}", certificate.Issuer)); return true; }

  在CertificateValidationCallback()方法中进行证书验证。方法参数certificate即为服务端发送过来的证书,可以根据证书中提供的信息进行验证,以确认进行Response的

服务端确实是自己要访问的那个。

  证书中包含证书的Issuer(签发机构),,依次来判断该证书的可信性。