Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I got one document from the external system. I don't know in which signatureFieldName added inside the document. Then how i will validate that this document is digitally signed or not.

I am using iText7 for digital signature.

question from:https://stackoverflow.com/questions/65932750/validate-the-pdf-file-is-digitally-signed-or-not

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
297 views
Welcome To Ask or Share your Answers For Others

1 Answer

You can check whether there are any signed signature fields in a PDF by checking SignatureUtil.getSignatureNames() which according to its JavaDocs Gets the field names that have signatures and are signed.

PdfDocument pdfDoc = new PdfDocument(...);
SignatureUtil signUtil = new SignatureUtil(pdfDoc);
List<String> names = signUtil.getSignatureNames();
if (names.isEmpty()) {
    [... handle case of unsigned PDF ...]
} else {
    [... handle case of PDF signed at least once ...]
}

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...