Так как iText существует как в Java, так и в C #, а учебник Цифровые подписи для iText был написан в первом, я дам ответ на Java, и не должно возникнуть никаких проблем при переносе его на c #:
Можно использовать SignatureUtil#getTotalRevisions()
, чтобы получить номер. Он предназначен для того, чтобы указывать количество подписей в документе или это число плюс один, если изменения были применены после последней подписи документа.
Пожалуйста, отметьте C5_01_SignatureIntegrity . Здесь обрабатываются три документа: первый был подписан, но затем изменен, второй был подписан четырьмя лицами, а третий был подписан четырьмя лицами, а затем изменен. SignatureUtil # getTotalRevisions () возвращает 2, 4 и 5 для них соответственно.
Результаты в первом и третьем случаях немного вводят в заблуждение, но можно использовать SignatureUtil#signatureCoversWholeDocument(String)
, чтобы проверить, соответствует ли последняя ревизия последней подписи или нет.