Как получить сертификат X509 из хранилища сертификатов и генерировать данные подписи xml?

Как я могу получить сертификат X509 из хранилища сертификатов, а затем сгенерировать XML SignatureData в .net С#?

Ответ 1

Насколько я знаю, сертификаты не сохраняются в формате 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 Subject Name", false);
        if (cers.Count>0)
        {
            cer = cers[0];
        };
        store.Close();
   }