HPDFFinalizeHeadlessDocumentTimestampReservation
function HPDFFinalizeHeadlessDocumentTimestampReservation(Target: TStream;
const Reservation: THPDFHeadlessSignatureReservation;
const Options: THPDFHeadlessCMSOptions;
out SignerCertificatePEM: SysUtils.TBytes): THPDFHeadlessCMSResult;
Завершает свежее резервирование DocumentTimestamp после того, как вызывающий записал полный xref и trailer PDF
Target должен оставаться позиционируемым и доступным на чтение/запись; резервирование должно прийти из HPDFWriteHeadlessSignatureReservation с DocumentTimestamp = true
Перед патчингом функция проверяет границы объектов, размер и ограничители гэпа, порядок числовых слотов и свежие заполненные нулями range-слоты
Она хеширует реально пропатченный ByteRange, получает и валидирует свежий токен TSA RFC3161 и пишет токен с нулевым резервным дополнением перед немедленной проверкой целостности
Полный токен должен помещаться в ReservedCMSBytes, а для создания нужны явные доверенная конфигурация TSA и транспорт
SignerCertificatePEM возвращает реальную идентификацию TSA для проверки seed-сертификата на стороне вызывающего до публикации
Позиция потока восстанавливается при успехе и при сбое; этот низкоуровневый хелпер не публикует файлы и сам по себе не соблюдает политики полей подписи документа
Для атомарной публикации с реальными унаследованными seed подписи, проверками DocMDP, FieldMDP, шифрования и разрешений полей используйте THPDFHeadlessDocument.TimestampToFile