PdfPkcs7Signature Class
Contains information about the PKCS#7 signature and methods used to verify it.
Namespace: DevExpress.Pdf
Assembly: DevExpress.Pdf.v24.2.Core.dll
NuGet Package: DevExpress.Pdf.Core
Declaration
Related API Members
The following members return PdfPkcs7Signature objects:
Remarks
The code snippet below obtains the PKCS#7 signature from a PDF document saved to the stream. Once the signature is obtained, the code checks attributes such as the time of signing, the signer’s identity, and authenticity of the signature.
using DevExpress.Pdf;
// ...
using(PdfDocumentSigner documentSigner = new PdfDocumentSigner(stream))
// Obtain the PKCS#7 signature from the list of `PdfSignatureInfo` objects.
foreach(var signature in documentSigner.GetSignatureInfo()) {
var pkcs7 = documentSigner.GetPdfPkcs7Signature(signature.FieldName);
// Obtain the PKCS#7 signature certificate.
var certificate = pkcs7.GetSignatureCertificate();
// Check wheter the signature is valid.
bool isValid = pkcs7.VerifySignature();
// Verify the signature certificate info.
string issuerName = certificate.IssuerName.Name;
bool isCertificateValid = certificate.Verify();
// Verify the time of signing.
var timeStamp = pkcs7.GetTimeStampDate();
bool isTimeStampValid = pkcs7.VerifyTimeStamp();
}
Call the PdfPkcs7Signature.CheckCertificateRevocation method to obtain information about signature certificate revocation based on Online Certificate Status Protocol (OCSP) and Certificate Revocation List (CRL) responses. Call the PdfDocumentSigner.VerifyLtv method to obtain Long Term Validation (LTV) records about the state of the signature certificate.