THPDFHeadlessDocument.TimestampToFile

function TimestampToFile(FieldIndex: Integer; const FileName: string;
  const Options: THPDFHeadlessCMSOptions;
  ReservedTimestampBytes: Integer = 16384): THPDFHeadlessCMSResult;

Crea un timestamp de documento real en un campo de firma existente sin firmar y publica atómicamente una salida PDF incremental independiente

FieldIndex es el índice de campo de formulario base cero devuelto por FindFormField; difiere del índice de firma poblado que acepta VerifySignature

El diccionario de salida usa Type DocTimeStamp y SubFilter ETSI.RFC3161, con un token de timestamp DER genuino en su reserva Contents sin cifrar

DigestMethod selecciona SHA256, SHA384 o SHA512 para el ByteRange exacto cubierto del PDF; el writer parchea los rangos numéricos antes de solicitar el token

Timestamp.Transport debe devolver una respuesta RFC 3161 real, y Timestamp.TrustedCAFile debe identificar explícitamente raíces TSA confiables; TrustedCRLFile y RequireRevocation opcionales validan CRLs actuales firmadas por el issuer

La respuesta debe ligar la huella exacta del mensaje y el nonce fresco de la petición, usar un certificado TSA y binding ESS apropiados, y pasar sus comprobaciones inmediatas de firma, propósito, cadena y revocación configuradas antes de la publicación

No se necesita ninguna clave de firma de aplicación ni certificado de signer; las restricciones obligatorias de certificados de firma evalúan el certificado TSA autenticado real y la cadena de certificados embebida

Las restricciones obligatorias de seed de firma de handler, SubFilter RFC3161, digest, reason, URL de timestamp, subject e issuer del certificado y apariencias con nombre actuales siguen siendo efectivas

Las comprobaciones autenticadas de DocMDP y FieldMDP permiten solo los cambios necesarios para insertar un timestamp de documento genuino, incluida la inserción en un campo de firma existente sin firmar bajo P1 o un field lock; esta excepción estándar no permite la firma de aprobación ordinaria ni cambios de formulario que la política original prohíba

Las comprobaciones posteriores de modificación autentican el timestamp, ligan el campo y la firma a su revisión con timestamp, y siguen protegiendo el grafo de objetos certificado original y los campos bloqueados

Para una fuente anterior a PDF 2.0, la salida añade la declaración de extensión ESIC con BaseVersion 1.7 y ExtensionLevel 1 cuando hace falta, preserva los perfiles de extensión existentes y promueve una versión efectiva de PDF anterior a través de Catalog Version 1.7 sin alterar el header original

Los campos de solo lectura, los aliases de origen y los permisos de form-fill AES siguen aplicándose; la certificación de aprobación incompatible, LegalAttestation, los perfiles Adobe de revocación firmada y las referencias de transformación FieldMDP de timestamps se rechazan

ReservedTimestampBytes es una capacidad positiva de token dentro del presupuesto de objetos del documento; el token completo debe caber en la reserva hexadecimal fija

La creación preserva los bytes de la fuente original y la seguridad AES, mantiene los Contents de firmas sin cifrar, cifra los demás metadatos bajo la política original y deja el grafo de campos cargado sin cambios

Los fallos, la cancelación, las respuestas inválidas y los presupuestos insuficientes preservan cualquier destino existente y eliminan los ficheros de staging no publicados

Los tokens de cancelación de documento, CMS y timestamp deben coincidir cuando no son nil; los datos cubiertos se leen en chunks de 64 KiB como máximo

Usa AddSignatureField y SetSignatureFieldAppearance para preparar un nuevo widget de timestamp, y VerifySignature para autenticar el timestamp de documento resultante

TimestampCount es uno y TimestampValid es true tras una creación correcta; CertificateTrusted y TimestampTrustEvaluated reflejan la pasada explícita validada de confianza TSA

El perfil de extensión sigue la cláusula 5.6 de ETSI EN 319 142-1; los cambios necesarios de timestamp siguen la aclaración MDP de ISO 32000-2

Proveedor de timestamp en streaming · Options