private static string getSignerDescription(PadesSignerInfo signer) { var text = new StringBuilder(); text.Append(getDescription(signer.Certificate)); if (signer.SigningTime != null) { var dateStr = TimeZoneInfo.ConvertTime(signer.SigningTime.Value, TimeZone).ToString(DateFormat, CultureInfo); text.AppendFormat(" on {0}", dateStr); } return(text.ToString()); }
private string getSignerDescription(PadesSignerInfo signer, ValidationResults vr) { var text = new StringBuilder(); text.Append(getCertificateDescription(signer.Signer.SigningCertificate)); if (signer.SigningTime != null) { text.AppendFormat(" at {0:g}", signer.SigningTime.Value.LocalDateTime); } if (vr.IsValid) { text.AppendFormat(" - Valid"); } else { text.AppendFormat(" - INVALID"); } return(text.ToString()); }
public PadesSignerModel(PadesSignerInfo padesSigner) { var signer = padesSigner.Signer; SigningTime = signer.SigningTime; if (signer.DigestAlgorithm != null && signer.MessageDigest != null) { MessageDigest = new DigestAlgorithmAndValueModel(signer.DigestAlgorithm, signer.MessageDigest); } if (signer.SignatureAlgorithm != null && signer.SignatureValue != null) { Signature = new SignatureAlgorithmAndValueModel(signer.SignatureAlgorithm, signer.SignatureValue); } if (signer.SignaturePolicy != null && !signer.SignaturePolicy.IsImplicit) { SignaturePolicy = new SignaturePolicyIdentifierModel(signer.SignaturePolicy); } if (signer.SigningCertificate != null) { Certificate = new CertificateModel(signer.SigningCertificate); } if (signer.SignatureTimeStamps.Any()) { Timestamps = signer.SignatureTimeStamps.Select(s => new CadesTimestampModel(s)).ToList(); } // Get date reference try { var dateReference = signer.GetDateReference(out bool isCertified); if (isCertified) { CertifiedDateReference = dateReference; } } catch { // do nothing } }
public ValidationResultsModel(PadesSignerInfo signerInfo, IPadesPolicyMapper policyMapper, Lacuna.Pki.Pades.PadesSignature signature) : this(signature.ValidateSignature(signerInfo, policyMapper)) { }
public PadesSignerInfoModel(PadesSignerInfo signerInfo) : base(signerInfo.Signer) { IsDocumentTimestamp = signerInfo.IsTsp; SignatureFieldName = signerInfo.SignatureFieldName; SigningTime = signerInfo.SigningTime; }
public PadesSignerInfoModel(PadesSignerInfo signerInfo, IPadesPolicyMapper policyMapper, Lacuna.Pki.Pades.PadesSignature signature) : this(signerInfo) { ValidationResults = new ValidationResultsModel(signerInfo, policyMapper, signature); }