利用C#检测证书是否存在,并安装证书
C#检查证书是否存在
1 X509Store store = new X509Store(StoreName.Root, StoreLocation.LocalMachine); 2 store.Open(OpenFlags.MaxAllowed); 3 X509Certificate2Collection certs = store.Certificates.Find(X509FindType.FindBySubjectName, "SRCA", false); 4 if (certs.Count == 0 || certs[0].NotAfter < DateTime.Now) 5 { 6 Console.WriteLine("需要创建证书"); 7 }
安装证书:
1 using System.Security.Cryptography.X509Certificates; 2 3 4 5 MessageBox.Show("开始"); 6 7 8 9 //添加个人证书 10 11 X509Certificate2 certificate = new X509Certificate2(Application.StartupPath + \\cert.pfx","证书密码"); 12 X509Store store = new X509Store(StoreName.My, StoreLocation.CurrentUser); 13 store.Open(OpenFlags.ReadWrite); 14 store.Remove(certificate); //可省略 15 store.Add(certificate); 16 store.Close(); 17 18 19 20 21 //安装CA的根证书到受信任根证书颁发机构 22 certificate = new X509Certificate2(Application.StartupPath + "\\CA.cer"); 23 store = new X509Store(StoreName.Root, StoreLocation.LocalMachine); 24 store.Open(OpenFlags.ReadWrite); 25 store.Remove(certificate); //可省略 26 store.Add(certificate); 27 store.Close(); 28 29 30 MessageBox.Show("结束");
- 上一篇 »,转C#与Java的证书密钥转换
- 下一篇 »[PHP] curl访问https与CA证书问题