Evidencia de validación de firmas nativa

HPDFHeadlessLTV autentica cadenas de certificados y evidencia OCSP o CRL en DER antes de agregar un document security store a un PDF firmado

AddSignatureValidationEvidence verifica los ByteRanges originales del PDF, la firma CMS, la cadena de firmantes de confianza y el timestamp de firma RFC3161 requerido, y luego comprueba la cobertura de revocación de cada certificado no ancla en las cadenas del firmante y de la TSA

La verificación OCSP comprueba la firma del responder, su cadena y autorización, los identificadores completos de certificado por issuer-name e issuer-key, los números de serie, el estado good, producedAt, thisUpdate, nextUpdate y las ventanas de frescura configuradas; las respuestas revoked, unknown, no relacionadas, duplicadas, stale, futuras o no autenticadas se rechazan

La verificación CRL usa un store aislado por cada lista de issuer suministrada y comprueba su issuer, firma, scope, ventana de validez y estado de revocación de certificados; una CRL más antigua cargada por otra fuente no puede reemplazar la evidencia real suministrada

El DSS de catálogo contiene arreglos globales Certs, OCSPs y CRLs, con una entrada VRI que referencia la evidencia verificada de la firma seleccionada; su clave SHA-1 en mayúsculas cubre la cadena Contents completa, incluido el padding de ceros reservado, como exige el índice VRI del PDF

SHA-1 se usa solo para el índice VRI prescrito o un identificador de certificado OCSP suministrado; no selecciona el algoritmo de firma del firmante PDF, la TSA, el responder ni el certificado

El writer conserva los bytes firmados originales y las entradas DSS existentes y agrega una revisión incremental; los orígenes Standard AES-256 conservan el cifrado para los streams de evidencia recién generados, sujetos al permiso de modificación o a la autenticación de owner

Las verificaciones de trust y evidencia usan el reloj de verificación actual; esta API no establece validación histórica tras la expiración del certificado ni agrega un timestamp de documento que proteja revisiones DSS posteriores

Los datos DSS agregados después de una firma quedan fuera del ByteRange de esa firma; autentica de forma independiente la evidencia embebida cada vez que se use, y usa una firma posterior o un timestamp de documento cuando se requiera una revisión de archivo autenticada

Comportamiento de recursos y fallos

Las raíces de trust suministradas explícitamente por el llamador son obligatorias, y el requerimiento de timestamp es True por defecto; inicializa THPDFHeadlessLTVOptions con Default

Los límites de bytes, objetos, streams decodificados, salida y cancelación se verifican antes de publicar el grafo; la evidencia rechazada deja el documento sin cambios y SaveToFile publica a través del writer atómico existente

Aceptación

Run-HeadlessLTVTests.sh, Run-HeadlessLTVTests-Windows.cmd y Run-HeadlessLTVTests-Delphi.ps1 ejercitan respuestas reales de OCSP, CRL, CMS y RFC3161 local de OpenSSL en Linux y Windows sin escritorio ni lector PDF

Verify-HeadlessLTV.py comprueba de forma independiente las firmas e identificadores de la evidencia con cryptography, las referencias DSS/VRI con pypdf, la excepción de cifrado del Contents de la firma con MuPDF y los ByteRanges exactos del PDF con OpenSSL