如何找出用于签署PKCS7消息的证书?

时间:2013-12-17 17:09:57

标签: c# .net cryptography certificate pkcs#7

我正在使用.NET框架中的System.Security.Cryptography.Pkcs.SignedCms类来读取和验证签名数据。

为此,我有一个有效证书列表,我在CheckSignature方法中传递。

这很有效,如果签名证书未包含在列表中,该方法将抛出异常。

但是,我想检索用于验证邮件的确切证书。 CheckSignature方法返回void,Certificates上的SignedCms属性在我的数据集中始终为null

我不想暴力破坏所有可能的证书,特别是如果证书无效并且列表中可能有很多证书,该方法会抛出异常。

知道怎么做吗?

相关问题:如果没有找到有效证书,我是否有办法检查不会导致异常的证书(我更喜欢布尔返回值)。

谢谢!

1 个答案:

答案 0 :(得分:1)

尝试SignerInfos属性,看看是否可以使用它返回的SignerInfo对象提取证书。