THPDFHeadlessCMSOptions

Use THPDFHeadlessCMSOptions.Default before changing individual options

MemberDefault and meaning
MaxCMSBytes16 MiB, the bounded CMS input/output and PEM input limit
MaxSigners64, the maximum signer count accepted during verification
MaxSignedBytes4 GiB, the total source bytes covered by the declared ranges
TrustedCAFileEmpty, enabling integrity verification without a trust claim; a supplied PEM CA file enables explicit chain verification
RequireCAdESFalse, enables ESS signing-certificate binding generation or requires its integrity verification; document verification automatically requires ESS for an ETSI.CAdES.detached SubFilter, whilst certificate trust remains a separate explicit option
CertificationPermissionZero for approval signatures, or 1, 2, or 3 to create the first DocMDP certification signature through SignToFile or SignPFXToFile
DigestMethodSHA256; signing also supports SHA384 and SHA512, with an empty value retaining SHA256
Reason, Location, ContactInfo, SignerNameEmpty Unicode strings; nonempty values become the signature dictionary Reason, Location, ContactInfo, and Name entries, using the document string encryption policy
LegalAttestationEmpty; a nonempty Unicode clarification is written to Catalog Legal/Attestation during certification signing and checked against required certification seed values
UseAdobeRevocationInfoFalse; signing embeds authenticated CRL or OCSP evidence in the Adobe signed revocation information attribute, whilst verification requires and validates the actual embedded attribute for every signer
RevocationEvidenceEmpty DER certificate, complete OCSPResponse, and CRL arrays; signing validates all supplied evidence before publishing the output, and verification uses the embedded CRL and OCSP values with optional supplied chain certificates
RevocationValidationTHPDFHeadlessLTVOptions.Default with RequireTimestamp set to False; an explicit trusted CA file is required when UseAdobeRevocationInfo is enabled, and evidence must cover every non-root signer and included TSA certificate
CredentialSourceURLEmpty; application-supplied enrollment provenance used when the signature seed requires a particular credential URL
TimestampServerURLEmpty; the URL routed by the configured timestamp transport, compared with a required seed timestamp URL
RequireTimestampFalse; requires an authenticated RFC3161 timestamp for each CMS signer during verification and a configured transport during signing
TimestampTHPDFHeadlessTimestampOptions.Default; its transport enables timestamp signing, and its explicit trusted CA file enables verification of existing signatureTimeStampToken attributes
CancellationTokenNil, or a caller-owned token that must remain alive for the complete operation

All numeric limits must be positive; a trusted verification pass reads the signed content again, whilst MaxSignedBytes limits the covered content length rather than the combined reads of both passes

Timestamp response and signature budgets are additionally capped by MaxCMSBytes, and non-nil CMS and timestamp cancellation tokens must match

Non-nil CMS and revocation validation cancellation tokens must also match; embedded revocation information is bounded by MaxCMSBytes and the configured evidence object budget

Enrollment and transport URLs describe application configuration; they do not establish certificate trust or replace the authenticated RFC 3161 timestamp checks

TimestampToFile uses DigestMethod for the PDF document imprint and Timestamp for the actual TSA transport and explicit trust; verification derives the imprint digest from authenticated TSTInfo

Document timestamp integrity always authenticates the TSA CMS and ESS binding; TimestampValid may be true without a trust claim, whilst TimestampTrustEvaluated reports explicit TSA trust evaluation