HPDFFinalizeHeadlessSignatureReservation
function HPDFFinalizeHeadlessSignatureReservation(Target: TStream;
const Reservation: THPDFHeadlessSignatureReservation;
const CertificatePEM, PrivateKeyPEM: SysUtils.TBytes;
const Options: THPDFHeadlessCMSOptions): THPDFHeadlessCMSResult;
Finaliza un stream de staging PDF completado usando una reserva fresca devuelta por el writer complementario
El stream propiedad del llamador debe ser seekable y de lectura/escritura; su tamaño final define la revisión firmada, y todos los bytes fuera del hueco Contents reservado exacto se autentican
La función comprueba la reserva, parchea los slots numéricos de ancho fijo, vuelca esos rangos de bytes reales en OpenSSL 3, escribe el DER como bytes hexadecimales, limpia el padding de reserva no usado y verifica inmediatamente la integridad del CMS
No se ensambla un buffer del archivo fuente completo, la posición del stream se restaura, y la longitud del archivo y las posiciones del xref permanecen sin cambios
Options aplica los presupuestos de bytes firmados y de CMS y la cancelación; RequireCAdES debe coincidir con el perfil de la reserva
El estado de confianza devuelto solo se evalúa cuando se proporciona un archivo de CA confiable explícito
Un fallo puede dejar bytes parcheados en el stream de staging no publicado; descarte ese stream y nunca lo publique después de una excepción
Use THPDFHeadlessDocument.SignToFile para limpieza automática de staging, preservación del cifrado, protección contra alias de fuente y publicación atómica