如何从证书存储中获取X509证书并生成XML签名数据?

30

如何从证书存储中获取X509证书并在.NET C#中生成XML SignatureData?

1个回答

57
据我所知,证书并不以XML格式保存,您需要自己组合它。
这是您想要的吗?
   static void Main(string[] args)
   {
        X509Certificate2 cer = new X509Certificate2();
        cer.Import(@"D:\l.cer");
        X509Store store = new X509Store(StoreLocation.CurrentUser);
        store.Certificates.Add(cer);

        store.Open(OpenFlags.ReadOnly);
        X509Certificate2Collection cers = store.Certificates.Find(X509FindType.FindBySubjectName, "My Cert's Subject Name", false);
        if (cers.Count>0)
        {
            cer = cers[0];
        };
        store.Close();
   }

39
如果在查找之前未将证书添加到存储中,则需要在“Find”之前调用“store.Open(OpenFlags.ReadOnly)”。 - aelstonjones
1
ن½؟用using System.Security.Cryptography.X509Certificatesه¯¼ه…¥ه‘½هگچç©؛é—´م€‚ - Aaron D

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接