C#导入PFX和Cer证书的工具类

Posted dm428

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#导入PFX和Cer证书的工具类相关的知识,希望对你有一定的参考价值。

代码:

public class CertificationHelper
    {
        public static bool importPFX(string certPath, string certPass)
        {
            // Create a collection object and populate it using the PFX file
            X509Certificate2Collection collection = new X509Certificate2Collection();
            try
            {
                collection.Import(certPath, certPass, X509KeyStorageFlags.PersistKeySet);

                foreach (X509Certificate2 cert in collection)
                {
                    X509Store store = new X509Store();
                    store.Open(OpenFlags.MaxAllowed);
                    store.Add(cert);
                    store.Close();
                    // Import the certificate into an X509Store object
                }
            }
            catch (Exception e)
            {
                //throw(e);
                return false;
            }
            return true;
        }
        public static bool importCER(string cerFileName)
        {
            try
            {
                X509Certificate2 certificate = new X509Certificate2(cerFileName);
                X509Store store = new X509Store(StoreName.TrustedPublisher, StoreLocation.LocalMachine);

                store.Open(OpenFlags.ReadWrite);
                store.Add(certificate);
                store.Close();
            }
            catch
            {
                return false;
            }
            return true;
        }
    }

  具体使用的命名空间已经忘了,可以自己去找找。

以上是关于C#导入PFX和Cer证书的工具类的主要内容,如果未能解决你的问题,请参考以下文章

证书私钥不能导出pfx格式,只能cer等格式

如何使用现有的 .cer、.p12 或 .pfx 证书签署应用程序?

.cer 和 .pfx 文件有啥区别

从 pfx 证书中提取文件 .cer 和文件 .key

将 .pfx 转换为 .cer

.pfx和.Cer 证书