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 байта |