This HTML page is not optimized for LLM or AI agent consumption. Fetch the Markdown version instead: /api/csharp/signing/digital-signature-options.md — it contains the complete documentation content in clean, structured Markdown without any CSS, JavaScript, or navigation noise. DigitalSignatureOptions

Options for creating a digital signature on a PDF document.

A digital signature requires a certificate (PFX/P12 file) to cryptographically sign the document. Additional metadata such as signer name, reason, and location can optionally be included. For PAdES-T compliance, configure a Timestamp to include a trusted timestamp.

using Nutrient;

Construction

public DigitalSignatureOptions()

Properties

CertificatePassword

public string CertificatePassword { get; set; }

The password to decrypt the PFX/P12 certificate file.

Type: string

CertificatePath

public string? CertificatePath { get; set; }

The file path to the PFX/P12 certificate file.

Type: string?

CertificateSerialNumber

public string? CertificateSerialNumber { get; set; }

The serial number of the certificate to use from the operating-system certificate store or a smartcard. Required when KeySource is WindowsCertificateStore or SmartCard.

Type: string?

Certification

public SignatureCertificationLevel Certification { get; set; }

The certification (DocMDP) level of the signature.

Type: SignatureCertificationLevel

ContactInfo

public string? ContactInfo { get; set; }

Contact information for the signer.

Type: string?

Format

public SignatureFormat Format { get; set; }

The container format of the signature.

Type: SignatureFormat

HashAlgorithm

public SignatureHashAlgorithm HashAlgorithm { get; set; }

The hash algorithm to use for the signature.

Type: SignatureHashAlgorithm

KeySource

public SignatureKeySource KeySource { get; set; }

Where the signing key and certificate come from.

Type: SignatureKeySource

Level

public SignatureLevel Level { get; set; }

The PAdES baseline level to produce.

Type: SignatureLevel

Location

public string? Location { get; set; }

The location where the document was signed.

Type: string?

Pkcs11

public Pkcs11Options? Pkcs11 { get; set; }

The PKCS#11 module and key location. Required when KeySource is Pkcs11.

Type: Pkcs11Options?

Reason

public string? Reason { get; set; }

The reason for signing the document.

Type: string?

SignerName

public string? SignerName { get; set; }

The name of the person or entity signing the document.

Type: string?

SmartCardPin

public string? SmartCardPin { get; set; }

The PIN used to unlock a smartcard key. Used when KeySource is SmartCard.

Type: string?

Timestamp

public TimestampConfiguration? Timestamp { get; set; }

Optional timestamp configuration for PAdES-T compliance.

Type: TimestampConfiguration?

Methods

SetCertificateStream

public void SetCertificateStream(Stream value)

A stream containing the PFX/P12 certificate data.

Parameters

NameTypeDescription
valueStreamThe value to set for the CertificateStream property.

Resource management

public void Dispose()

DigitalSignatureOptions implements IDisposable. Call Dispose() or use a C# using declaration to release its native handle right away. If you don’t, the handle is released when the object is garbage collected.