Проблема с отметкой времени PDF с использованием Java и iText - PullRequest
0 голосов
/ 28 апреля 2011

Я пишу приложение для подписи и отметки времени в PDF-файлах с использованием iText и Java. Поскольку у нас (в Словении) другой подход к получению метки времени от нашего TSA (через веб-сервис, используя сертификат и пароль), я не могу использовать эти методы из iText. У меня есть сценарий Perl для этого. Итак ... как или с помощью каких частей кода я могу записывать метку времени и дайджест (из ответа веб-службы) в PDF ??

Ответы [ 2 ]

1 голос
/ 28 апреля 2011

Нет, если я точно следую тому, что вы просите, но звучит так, будто вы хотите настроить дату, о которой сообщается для подписания PDF.

Предполагается, что вы используетеPdfStamper для подписи документа, после того как вы создали подпись, попробуйте

pdfStamper.getSignatureAppearence().setSignDate(calendar)

, где календарь - это экземпляр календаря, который вы создали с помощью ответа от веб-службы отметок времени.

Включение iTextИнформация TSA вместе с подписью немного более сложна.Это немного за пределами моей области знаний, но, насколько я понимаю, вам нужно использовать сгенерированный извне сертификат, и большинство людей делают это с помощью BouncyCastle.

В этом обсуждении есть пример того, каксделать это.В конечном итоге вы захотите использовать TSAClientBouncyCastle при получении зашифрованного сертификата.На этой странице есть альтернативный пример, включающий также информацию OCSP.

Если вы решите эту проблему, добавьте свое решение, чтобы получить более авторитетный ответ на stackoverflow.

0 голосов
/ 26 января 2012

вот пример

http://itextpdf.sourceforge.net/howtosign.html#signtsocspjava

вы должны заменить

   sap.setCrypto(null, chain, null, PdfSignatureAppearance.SELF_SIGNED);

на

sap.setCrypto(pk, chain, null, PdfSignatureAppearance.WINCER_SIGNED);

и поставить правильную версиюlibs

- org.bouncycastle -> bcprov-jdk16 1.40
- org.bouncycastle -> bctsp-jdk16 1.38
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...