Ejemplo n.º 1
0
        /// <summary>
        /// torna l'elenco dei certificati di firma e il certificato con la scadenza più vicina
        /// </summary>
        /// <param name="fileName">nome del file</param>
        /// <param name="Content">contenuto</param>
        /// <param name="FirstCertificate">ritorna il primo certificato in scadenza</param>
        /// <returns>elenco dei certificati di firma</returns>
        public BindingList <DocumentCertificate> GetAllExpireDates(string fileName, DocumentContent Content, out DocumentCertificate FirstCertificate)
        {
            BindingList <DocumentCertificate> result = new BindingList <DocumentCertificate>();

            using (CompEdLib p7m = new CompEdLib())
            {
                SimplyCert firstExp = new SimplyCert();
                Hashtable  SimCrtLst;
                String     rt = p7m.GetAllExpiryDate(Content.Blob, out firstExp, out SimCrtLst);


                if (rt.Length > 0)
                {
                    throw new Exception(rt);
                }

                FirstCertificate = new DocumentCertificate(firstExp.Level, firstExp.Type,
                                                           firstExp.FiscalCode, firstExp.Role, firstExp.Description, firstExp.Issuer,
                                                           firstExp.eMail, firstExp.Expiry, firstExp.ValidFrom);

                DocumentCertificate certificate;
                foreach (System.Collections.DictionaryEntry obj in SimCrtLst)
                {
                    SimplyCert crtlo = (SimplyCert)obj.Value;
                    certificate = new DocumentCertificate(crtlo.Level, crtlo.Type,
                                                          crtlo.FiscalCode, crtlo.Role, crtlo.Description,
                                                          crtlo.Issuer, crtlo.eMail, crtlo.Expiry, crtlo.ValidFrom);
                    certificate.HeaderInfo = crtlo.HeaderInfo;
                    result.Add(certificate);
                }
            }
            return(result);
        }
Ejemplo n.º 2
0
        public List <DocumentCertificate> GetDocumentCertificates(byte[] blob)
        {
            // usa la
            List <DocumentCertificate> result = new List <DocumentCertificate>();

            using (CompEdLib p7m = new CompEdLib())
            {
                SimplyCert firstExp = new SimplyCert();
                Hashtable  SimCrtLst;
                String     rt = p7m.GetAllExpiryDate(blob, out firstExp, out SimCrtLst);

                foreach (SimplyCert thisCert in SimCrtLst.Values)
                {
                    DocumentCertificate thisDocCert = new DocumentCertificate();
                    thisDocCert.DateExpiration     = thisCert.Expiry;
                    thisDocCert.DateValidFrom      = thisCert.ValidFrom;
                    thisDocCert.Description        = thisCert.Description;
                    thisDocCert.Email              = thisCert.eMail;
                    thisDocCert.FiscalCode         = thisCert.FiscalCode;
                    thisDocCert.HeaderInfo         = thisCert.HeaderInfo;
                    thisDocCert.IsOnDisk           = false;
                    thisDocCert.Issuer             = thisCert.Issuer;
                    thisDocCert.Level              = thisCert.Level;
                    thisDocCert.Loaded             = false;
                    thisDocCert.Role               = thisCert.Role;
                    thisDocCert.Type               = thisCert.Type;
                    thisDocCert.Id                 = thisCert.Id;
                    thisDocCert.CertificateVersion = thisCert.Version;
                    thisDocCert.SerialNumber       = thisCert.SerialNumber;

                    result.Add(thisDocCert);
                }
            }

            return(result);
        }
Ejemplo n.º 3
0
 /// <summary>
 /// Funzione da chiamare solo per p7m\p7x
 /// </summary>
 /// <param name="fileName"></param>
 /// <param name="Content"></param>
 /// <param name="FirstCertificate"></param>
 /// <returns>BindingList<DocumentCertificate></returns>
 public BindingList<DocumentCertificate> GetAllExpireDates(string fileName, DocumentContent Content, out DocumentCertificate FirstCertificate)
 {
     try
     {
         logger.DebugFormat("GetAllExpireDates {0}", fileName);
         return new CompEdService().GetAllExpireDates(fileName, Content, out FirstCertificate);
     }
     catch (Exception ex)
     {
         logger.Error(ex);
         throw;
     }
 }
Ejemplo n.º 4
0
 public void SignDigitalDocument(Guid idDocument, string docDigest, DocumentCertificate signerCert, decimal? version)
 {
     throw new NotImplementedException();
 }