Search code examples
c#.netxmlx509certificatexml-signature

How to get X509Certificate from certificate store and generate xml signature data?


How can I get X509Certificate from certificate store and then generate XML SignatureData in .net C#?


Solution

  • As far as I know, certificates are not saved by XML Format , you should combine it by yourself.

    Is this what you want ?

       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();
       }