6

我有两个保存到磁盘的证书。一个是我导出为 .pfx 文件的带有私钥的证书,另一个是我保存的证书,包括其证书链作为 PKCS#7 文件(“certchain.p7b”)。

在 C# 中,我现在可以加载 .pfx 文件

  var cert = new X509Certificate2(myPfxFileStream); 

(myPfxFileStream 是FileStream对 .pfx 文件的打开以供读取),但是在“Der Indexwert ist ungültig”中尝试使用 PKCs#7 证书进行相同操作会失败,CryptoGraphicException这会转换为“无效的索引值”。

我假设我必须以不同的方式解析 PKCS#7(它包含一个链,而不是一个证书!),但是如何?

(哦,顺便说一句:目前我在这些证书上没有密码)

4

1 回答 1

9

您将希望使用命名空间SignedCms中的类System.Security.Cryptography.Pkcs

此博客条目将向您展示如何使用该类:

2021 年链接更新:https ://docs.microsoft.com/en-us/archive/blogs/shawnfa/envelope-pkcs-7-signatures

原文链接:http: //blogs.msdn.com/shawnfa/archive/2006/02/27/539990.aspx

您基本上将调用该Decode方法,传递代表 PKCS 文件的字节。

于 2009-02-23T19:49:21.903 回答