HPDFFinalizeHeadlessSignatureReservation
function HPDFFinalizeHeadlessSignatureReservation(Target: TStream;
const Reservation: THPDFHeadlessSignatureReservation;
const CertificatePEM, PrivateKeyPEM: SysUtils.TBytes;
const Options: THPDFHeadlessCMSOptions): THPDFHeadlessCMSResult;
Finaliza um stream de staging de PDF completo usando uma reserva fresca retornada pelo writer complementar
O stream de posse do chamador precisa ser seekable e read/write; seu tamanho final define a revisão assinada, e todos os bytes fora do gap Contents exatamente reservado são autenticados
A função checa a reserva, aplica patches nos slots numéricos de largura fixa, faz o streaming dessas faixas reais de bytes para o OpenSSL 3, grava o DER como bytes hexadecimais, limpa o padding não usado da reserva e verifica imediatamente a integridade do CMS
Nenhum buffer do arquivo de origem inteiro é montado, a posição do stream é restaurada, e o comprimento do arquivo e as posições do xref permanecem inalterados
Options aplica os orçamentos de bytes assinados e de CMS e o cancelamento; RequireCAdES precisa corresponder ao perfil da reserva
O trust status retornado só é avaliado quando um arquivo de CA confiável explícito é fornecido
Uma falha pode deixar bytes com patch no stream de staging não publicado; descarte esse stream e nunca o publique após uma exceção
Use THPDFHeadlessDocument.SignToFile para limpeza automática do staging, preservação de criptografia, proteção de alias da origem e publicação atômica