SetSignProcessDocTimeStamp

Безопасность и подписи

Описание

Переводит процесс подписания в режим Document Time-stamp PAdES, как определено в пункте 5.4.3 ETSI EN 319 142-1 v1.2.1. Полученный словарь подписи использует /Type /DocTimeStamp и /SubFilter /ETSI.RFC3161 и опускает ключи /M, /Reason, /Location, /ContactInfo и /Name, которые спецификация запрещает для подписи только с меткой времени

Сквозная передача включена автоматически, потому что TimeStampToken (RFC 3161 с обновлением RFC 5816) в /Contents поставляется внешним органом меток времени, а не строится в процессе. Передайте 0 в SignatureLength, чтобы использовать стандартный резерв Contents в 8192 байта, или задайте явное значение под ожидаемый ответ TSA (типичные ответы — 2–6 КБ DER)

После вызова EndSignProcessTo* получите ByteRange через GetSignProcessByteRange, вычислите SHA-256 message imprint покрытых байтов, отправьте его в TSA, а затем впишите возвращённый TimeStampToken (в hex, с дополнением до зарезервированного размера Contents) в выходной поток.

Синтаксис

Delphi

Function TPDFlib.SetSignProcessDocTimeStamp(SignProcessID, SignatureLength: Integer): Integer;

Параметры

SignProcessIDЗначение, возвращаемое одной из функций NewSignProcessFrom*
SignatureLengthРезервируемый размер в байтах для полезной нагрузки TimeStampToken в /Contents. Передайте 0, чтобы принять стандартные 8192 байта