Как я могу проверить, сколько раз PDF-файл был подписан? - PullRequest
0 голосов
/ 09 января 2019

Как я могу проверить, сколько раз был подписан файл PDF, используя C # и предпочтительно iTextSharp 5.5.11? Я открыт для любой другой библиотеки .NET PDF, если она выполняет свою работу.

Я бы хотел выбрать файл PDF со своего жесткого диска и указать в форме, сколько раз файл PDF был подписан.

Показ источника сертификата будет бонусом.

Спасибо.

1 Ответ

0 голосов
/ 10 января 2019

Так как iText существует как в Java, так и в C #, а учебник Цифровые подписи для iText был написан в первом, я дам ответ на Java, и не должно возникнуть никаких проблем при переносе его на c #:

Можно использовать SignatureUtil#getTotalRevisions(), чтобы получить номер. Он предназначен для того, чтобы указывать количество подписей в документе или это число плюс один, если изменения были применены после последней подписи документа.

Пожалуйста, отметьте C5_01_SignatureIntegrity . Здесь обрабатываются три документа: первый был подписан, но затем изменен, второй был подписан четырьмя лицами, а третий был подписан четырьмя лицами, а затем изменен. SignatureUtil # getTotalRevisions () возвращает 2, 4 и 5 для них соответственно.

Результаты в первом и третьем случаях немного вводят в заблуждение, но можно использовать SignatureUtil#signatureCoversWholeDocument(String), чтобы проверить, соответствует ли последняя ревизия последней подписи или нет.

...