THPDFCMSVerifyOptions Record
Konfigurerer grænser for CMS-signaturverificering, eksterne providere, fastlåsning af signaturpolitik og gentaget tidsstempelverificering
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;
Enhed
HPDFSignVerify
Felter
| Felt | Formål |
|---|---|
SignatureProvider | Valgfri ekstern THPDFSignatureProvider brugt til sign- og verify-primitiver; nil vælger den indbyggede implementering |
AllowMLDSA | Tillader ML-DSA-signaturer under verificering |
OpenSSLLibraryPath | Mappe med OpenSSL-bibliotekerne, når verificering går via OpenSSL-backend |
MaxSignerCount | Øvre grænse for behandlede primære underskrivere; Default sætter 256 |
MaxCounterSignatureDepth | Indlejringsgrænse for kontrasignaturer; Default sætter 8 |
RequireSignaturePolicy | Når True, fejler signaturer uden en signaturpolitik |
ExpectedSignaturePolicyOID | Politik-OID, som en primær SignerInfo skal præsentere; tom begrænser ikke |
ExpectedSignaturePolicyHash | Forventet politik-digest at fastlåse; tom begrænser ikke |
SignaturePolicyDocument | Politikdokument-bytes brugt til hash-sammenligning |
VerifySignaturePolicyDocumentHash | Hash et bevidst tomt politikdokument, når True |
RejectUnknownSignaturePolicyHash | Fejler verificeringen, når den indlejrede politik-hash ikke matcher nogen forventet værdi |
SkipSignatureTimestampVerification | Stoler på en cached afgørelse for den indlejrede signaturtidsstempel-token under batchvalidering |
Default | Klassefunktion, der returnerer en nulstillet post med MaxSignerCount 256 og MaxCounterSignatureDepth 8 |
Brugsnoter
- Start altid fra
THPDFCMSVerifyOptions.Defaulti stedet for en nulstillet lokal post, så underskriver- og dybdegrænserne faktisk anvendes - Felter til politikfastlåsning gælder kun for primære SignerInfo-værdier; tomme forventede felter lader den tilsvarende politikkontrol være ubegrænset
- Batchvalidering sætter
SkipSignatureTimestampVerification, når en delt tidsstempelcache allerede har token-afgørelsen; dokumenttidsstempler tager aldrig den vej