码迷,mamicode.com
首页 > Windows程序 > 详细

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

时间:2016-12-03 17:54:14      阅读:849      评论:0      收藏:0      [点我收藏+]

标签:sub   return   highlight   form   eval   manager   val   ati   callback   

  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(签发机构),依次来判断该证书的可信性。

  证书的Subject(主题)中包含了主机的相关信息,以此判断该主机是否为目标主机。

  

  

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

标签:sub   return   highlight   form   eval   manager   val   ati   callback   

原文地址:http://www.cnblogs.com/Herzog3/p/6128931.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!