如何以编程方式将带有证书链的PFX导入证书存储区

如何以编程方式将带有证书链的PFX导入证书存储区,第1张

你应该可以橡轿族通过打开PFX文件作为X509Certificate2Collection对象来遍历PFX中的证书(并将其导入到你选择的证书存储中)。

以下是X509Certificate2Collection上的文档:

http://msdn.microsoft.com/en-us/library/system.security.cryptography.x509certificates.x509certificate2collection.aspx

MSDN在该文档页面中提供了一些关于如何检查集合中每个证书的示例代码。

一旦你知道每个证书的CN /发行人/其他信息,就应该清楚每个证书存储需要添加到哪个证书存储区。为此,你可以使用X509Store类和梁弊StoreName枚举来指定要打开/添加到的存储帆坦区

示例代码:

string certPath = <YOUR PFX FILE PATH>string certPass = <YOUR PASSWORD>// Create a collection object and populate it using the PFX fileX509Certificate2Collection collection = new X509Certificate2Collection()collection.Import(certPath, certPass, X509KeyStorageFlags.PersistKeySet)foreach (X509Certificate2 cert in collection){

Console.WriteLine("Subject is: '{0}'", cert.Subject)

Console.WriteLine("Issuer is: '{0}'", cert.Issuer)

// Import the certificate into an X509Store object}

要导入的证书和私钥必须以 PEM 或 DER 编码的 X.509

证书和私钥形式存在。此外,必须先将任何将您的签名证书与证书颁发机构证书相关联的中间或“链”证书导入到软件包密钥库中,然后才能对软件包进行签名。

注 –

各证书颁发机构可能会颁发不同格式的证书。要将证书和私钥从 PKCS12 文件提取到 PEM 编码的

X.509 文件(适于导入到软件包密钥库),请使用免费软件转换实用程序,例如 OpenSSL。

如果您册手的私钥进行了加密(通常应该如此),系统将提示您输入口令短语。此外,还将提示您输入口令以保护生成的软件包密钥库。您可以选择不提供任何口令,但是这样做会导致软件包密钥库不会加密。

以下过程介绍了证书格式正确时,如何使用 pkgadm 命令导入证书。

导入在 PEM 或 DER 编码的 X.509 证书文件中找到的所有证书颁发机构证书。

例如,要导入在 ca.pem 文件中找到的所有证书颁发机构证书,应键入以下内容:

$ pkgadm addcert -k ~/mykeystore -ty ca.pem

输出可能如下所示:

Trusting certificate <VeriSign Class 1 CA Individual \

Subscriber-Persona Not Validated>

Trusting certificate </C=US/O=VeriSign, Inc./OU=Class 1 Public \

Primary Certification Authority

Type a Keystore protection Password.

Press ENTER for no protection password (not recommended):

For Verification: Type a Keystore protection Password.

Press ENTER for no protection password (not recommended):

Certificate(s) from <ca.pem>are now trusted

为了将您的签名密钥导入到软件包密钥库,必须提供别名,供以后签名软件包时使用。如果卖桐您要从软件包密钥库中删中姿坦除密钥,也可能会使用该别名。

例如,要从 sign.pem 文件中导入您的签名密钥,应键入以下内容:

$ pkgadm addcert -k ~/mykeystore -n mycert sign.pem

输出可能如下所示:

Enter PEM passphrase:

Enter Keystore Password:

Successfully added Certificate <sign.pem>with alias <mycert>

检验证书是否在软件包密钥库中。

例如,要在密钥库中查看在上一步骤中创建的证书,应键入以下内容:

$ pkgadm listcert -k ~/mykeystore

需要在电脑浏览器中导入。

步骤1:打开浏览器,选择工具Internet选项-内容-证书-受信任的根证书颁发机构,选择导入。

步骤2:进入证书导入向导,选择下一并盯正步。

步骤3:选择浏览,找到已保存的证书链文件,然后选则罩择下一步。

步骤4:系绝悔统会默认将证书链存储到受信任的根证书颁发机构。

步骤5:选择完成,在d出的安全性警告页面中选择是完成证书链的安装。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12328021.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存