itextsharp подписывает страницы LTV

#c# #itext

#c# #itext

Вопрос:

В настоящее время я программирую средство цифровой подписи на C # с помощью библиотеки iTextSharp. Первоначально подписывающий работает должным образом, поскольку он подписал документ, запросил pin-код и т. Д. Все было хорошо, пока меня не попросили подписать, а также активировать LTV, который в данном случае использует PAdES.

Документ, который должен быть подписан, представляет собой PDF, который должен иметь отметку TSA, в случае, если я делаю

 ITSAClient t = new TSAClientBouncyCastle ( "myURL");
  

Пока все шло хорошо.
Но когда я пытаюсь добавить LTV следующим образом

 MakeSignature.SignDetached (signatureAppearance, externalSignature, chain, null, null, t, 0, CryptoStandard.CADES);
LtvVerification v = pdfStamper.LtvVerification;

LtvTimestamp.Timestamp (signatureAppearance, t, null);
  

И отправьте мне сообщение, в котором говорится

«Уже предварительно закрытый документ»

Не могли бы мне кто-нибудь помочь?

Комментарии:

1. MakeSignature.SignDetached документ уже закрывается. Если вы хотите добавить некоторые изменения после этого, вам придется снова прочитать сгенерированный PDF-файл с новым PdfReader и манипулировать им с новым PdfStamper .

2. спасибо, это означает, что мне нужно поставить отметку LtvTimestamp. Временная метка (signatureAppearance, t, null);, перед удалением подписи?????

3. Нет, LtvTimestamp.Timestamp также закрывает документ. Временная отметка технически очень похожа на подпись.