PdfDigitalSignature Class

This class encapsulates the options used to control the digital signature applied to a PDF document

Definition

Namespace: EvoPdf.Next
Assembly: EvoPdf.Next (in EvoPdf.Next.dll) Version: 14.86.0
C#
public class PdfDigitalSignature
Inheritance
Object    PdfDigitalSignature

Constructors

PdfDigitalSignature(X509Certificate2) Creates a digital signature object that signs with an X509Certificate2, such as a certificate from the Windows certificate store, a smartcard or a USB token. RSA and ECDSA certificates are supported
PdfDigitalSignature(Byte, String) Creates a digital signature object using PFX certificate data
PdfDigitalSignature(IExternalDigitalSignature, Byte) Creates a digital signature object that signs with a private key held outside the application, such as a hardware security module or a cloud key service. The library prepares the signature, calls Sign(Byte) for the signature value and embeds the result
PdfDigitalSignature(String, String) Creates a digital signature object using PFX certificate data read from a file

Properties

Appearance Gets the object that controls the digital signature appearance in the PDF document. You can configure the page where the signature is displayed, the bounds in the PDF page, and the appearance text or image
AppearanceEnabled Gets or sets a value indicating whether the signature appearance is displayed in a PDF page using the configured page number and bounding rectangle
Certificate Gets the signing certificate given to the PdfDigitalSignature(X509Certificate2) constructor, or null when another constructor was used
CertificationLevel Gets or sets the certification level of the signature. The default is NotCertified, an approval signature. The other values produce a certification signature (DocMDP), which declares the changes the document accepts after signing: none, form filling and signing, or also annotations. A certification signature must be the first signature of the document
ContactInfo Gets or sets the signer contact information
DigestAlgorithm Gets or sets the digest algorithm of the signature. The default is Sha256
ExternalSignature Gets the implementation that produces the signature value with a private key held outside the application, given to the PdfDigitalSignature(IExternalDigitalSignature, Byte) constructor, or null when another constructor was used
ExternalSignatureSizeEstimate Gets or sets the maximum size in bytes of the signature value produced by ExternalSignature or with a Certificate, used to reserve space in the document before the signature is requested. The default of 512 bytes covers RSA keys up to 4096 bits and every ECDSA key
FieldName Gets or sets the signature field name in the PDF document. By default, it is null and a predefined field name is used. When the document already contains an empty signature field with this name, for example a form prepared with a field for each signer, the signature is placed in that field, on its page and in its rectangle, with the text and image of Appearance. A field that is already signed or that is not a signature field is refused
Location Gets or sets the signing location
PfxCertificateData Gets or sets the PFX certificate data provided directly in the constructor or loaded from the file specified in the constructor
PfxCertificatePassword Gets or sets the PFX certificate password provided in the constructor. It can be null if no password is required
Profile Gets or sets the PAdES baseline profile of the produced signature, as defined by ETSI EN 319 142-1. The default is Auto, which preserves the behavior of the previous versions: PAdES B-T when TimestampServerUrl is configured, PAdES B-B otherwise. The PadesBaselineLT and PadesBaselineLTA profiles additionally embed the certificate chains and their revocation information into the document and, for LTA, apply a document timestamp, enabling validation long after the certificates expire. Both long-term profiles require TimestampServerUrl to be set
Reason Gets or sets the signing reason
SignerCertificates Gets the certificate chain embedded in the signature, as DER encoded X.509 certificates ordered from the signer certificate to the highest known certificate authority: the chain stored in the PFX certificate, the chain given to the PdfDigitalSignature(IExternalDigitalSignature, Byte) constructor or, for a Certificate, the chain found in the certificate stores of the system and in TrustedCaCertificates
TimestampServerPassword Gets or sets the optional password for the timestamp server, used together with TimestampServerUsername
TimestampServerUrl Gets or sets the URL of the timestamp server used when signing the document. Leave empty or null to skip timestamping
TimestampServerUsername Gets or sets the optional username for the timestamp server when it requires HTTP Basic authentication. Most public timestamp servers do not require it
TimestampTokenSizeEstimate Gets or sets the estimated size in bytes reserved in the signature for the timestamp token. The default is 16384 bytes, which works for most timestamp servers
TrustedCaCertificates Gets or sets an optional set of additional trusted certificate authority certificates, as DER encoded X.509 certificates. They complete the chain of a Certificate and, when producing PadesBaselineLT or PadesBaselineLTA signatures, the signer and timestamp certificate chains whose issuers cannot be located through the Authority Information Access extension of the certificates

Methods

Equals
(Inherited from Object)
Finalize
(Inherited from Object)
GetHashCode
(Inherited from Object)
GetType
(Inherited from Object)
MemberwiseClone
(Inherited from Object)
ToString
(Inherited from Object)

See Also