HPDFVerifyHeadlessDocumentTimestamp
function HPDFVerifyHeadlessDocumentTimestamp(Source: TStream;
const ByteRange: array of Int64; const TokenDER: SysUtils.TBytes;
const Options: THPDFHeadlessCMSOptions): THPDFHeadlessCMSResult;
Autentica un vero timestamp documento RFC3161 incapsulato e lega la sua impronta messaggio firmata agli esatti byte sorgente coperti
L'integrità richiede sempre un vero firmatario TSA, la firma CMS crittografica e il digest del contenuto firmato, il binding autenticato del certificato ESS, l'EKU timeStamping critical esclusivo, un key usage compatibile, TSTInfo versione 1 e un eventuale nome firmatario TSA incluso
L'algoritmo dell'impronta è letto dalla TSTInfo autenticata e supporta SHA256, SHA384 e SHA512 con parametri di algoritmo assenti o NULL
TokenDER può includere solo byte a zero dopo il suo token DER completo; MaxCMSBytes limita l'input completo, padding di riserva incluso
Le opzioni predefinite valutano l'integrità reale senza alcuna dichiarazione di trust del certificato; TimestampValid descrive l'impronta timestamp autenticata e non implica trust del certificato
Un Timestamp.TrustedCAFile, RequireTimestamp o Timestamp.RequireRevocation fornito invoca la verifica esplicita della catena di certificati RFC 3161 e della revoca configurata; il TrustedCAFile ordinario è riservato alle firme di approvazione
UseAdobeRevocationInfo richiede inoltre che il firmatario CMS TSA porti un vero attributo firmato di revoca information Adobe, con RevocationValidation.TrustedCAFile che autentica esplicitamente le sue evidenze CRL o OCSP incorporate e la copertura completa della catena del firmatario
Questo requisito imposta RevocationInfoEvaluated e RevocationInfoValid sul successo e solleva EHPDFHeadlessCMSError per evidenze mancanti, malformate, revocate, scadute, incomplete o non trusted; la verifica CRL TSA ordinaria non sostituisce l'attributo firmato richiesto
Il token RFC 3161 incapsulato soddisfa di per sé il requisito di timestamp quando si validano le sue evidenze incorporate, senza richiedere un attributo aggiuntivo di timestamp firma non firmato
La verifica offline storica non asserisce che un nonce di richiesta sia stato generato fresco; la creazione controlla la vera risposta contro la sua richiesta fresca
La posizione della sorgente è ripristinata, le letture sono limitate a 64 KiB, MaxSignedBytes limita i byte coperti e la cancellazione resta osservabile durante l'hashing
SignedRevisionLength e UnsignedTrailingBytes identificano la revisione coperta e i byte successivi; BytesRead riporta il vero input hash coperto
Il wrapper documento valida inoltre i tipi di dizionario DocTimeStamp/ETSI.RFC3161, le voci proibite e l'esatta stringa Contents esadecimale o letterale esclusa