THPDFCMSVerifyOptions Record

Konfiguriert Grenzen der CMS-Signaturverifikation, externe Provider, Signature-Policy-Pinning und Timestamp-Nachverifikation

Deklaration

THPDFCMSVerifyOptions= record
  SignatureProvider: THPDFSignatureProvider;
  AllowMLDSA: boolean;
  OpenSSLLibraryPath: string;
  MaxSignerCount: Integer;
  MaxCounterSignatureDepth: Integer;
  // Policy pinning is applied to primary SignerInfo values. Empty
  // expected fields do not constrain the corresponding policy field
  RequireSignaturePolicy: boolean;
  ExpectedSignaturePolicyOID: AnsiString;
  ExpectedSignaturePolicyHash: TBytes;
  SignaturePolicyDocument: TBytes;
  // Set this flag to hash an intentionally empty policy document
  VerifySignaturePolicyDocumentHash: boolean;
  RejectUnknownSignaturePolicyHash: boolean;
  // Batch validation sets this when a shared timestamp cache already
  // holds the verdict for the embedded signature timestamp token: token
  // re-verification is skipped and the caller restores the cached
  // THPDFTimestampInfo afterwards. Document timestamps (ETSI.RFC3161)
  // never take this path because the token is the primary signature
  SkipSignatureTimestampVerification: boolean;
  class function Default: THPDFCMSVerifyOptions; static;
end;

Unit

HPDFSignVerify

Felder

FeldZweck
SignatureProviderOptionaler externer THPDFSignatureProvider für Signier- und Verifikationsprimitiven; nil wählt die eingebaute Implementierung
AllowMLDSAErlaubt ML-DSA-Signaturen bei der Verifikation
OpenSSLLibraryPathVerzeichnis mit den OpenSSL-Bibliotheken, wenn die Verifikation über das OpenSSL-Backend läuft
MaxSignerCountObergrenze verarbeiteter primärer Signatoren; Default setzt 256
MaxCounterSignatureDepthVerschachtelungsgrenze für Gegensignaturen; Default setzt 8
RequireSignaturePolicyBei True scheitern Signaturen ohne Signature Policy
ExpectedSignaturePolicyOIDPolicy-OID, die eine primäre SignerInfo vorweisen muss; leer bedeutet keine Einschränkung
ExpectedSignaturePolicyHashErwarteter Policy-Digest zum Festpinen; leer bedeutet keine Einschränkung
SignaturePolicyDocumentFür den Hash-Vergleich verwendete Policy-Dokument-Bytes
VerifySignaturePolicyDocumentHashBei True ein absichtlich leeres Policy-Dokument hashen
RejectUnknownSignaturePolicyHashLässt die Verifikation scheitern, wenn der eingebettete Policy-Hash auf keinen erwarteten Wert passt
SkipSignatureTimestampVerificationVertraut bei der Batch-Validierung einem zwischengespeicherten Urteil für das eingebettete Signaturzeitstempel-Token
DefaultKlassenfunktion, die einen genullten Record mit MaxSignerCount 256 und MaxCounterSignatureDepth 8 zurückgibt

Verwendungshinweise

Verwandte APIs