Hello!
Abobe pdf reader verify signature successful, but with you utility with jdk8 i got error:
2022-08-16 14:13:32,163 INFO com.rizky.pdf.cli.CheckPdfSignature [CheckPdfSignature] Signature null Filter:Adobe.PPKLite
2022-08-16 14:13:32,166 INFO com.rizky.pdf.cli.CheckPdfSignature [CheckPdfSignature] Signature null SubFilter:ETSI.CAdES.detached
2022-08-16 14:13:32,166 INFO com.rizky.pdf.cli.CheckPdfSignature [CheckPdfSignature] Signature null ContactInfo:John Doe
2022-08-16 14:13:32,166 INFO com.rizky.pdf.cli.CheckPdfSignature [CheckPdfSignature] Signature null Reason:My organization
2022-08-16 14:13:32,222 INFO com.rizky.pdf.cli.CheckPdfSignature [CheckPdfSignature] Digest Algorithm used:2.16.840.1.101.3.4.2.1
2022-08-16 14:13:32,222 INFO com.rizky.pdf.cli.CheckPdfSignature [CheckPdfSignature] Signature ID 3db6c5776c110dc461090d962382d96d contains timestamp
2022-08-16 14:13:32,258 ERROR com.rizky.pdf.cli.CheckPdfSignature [CheckPdfSignature] Error processing Signature
java.security.spec.InvalidKeySpecException: java.security.InvalidKeyException: Invalid RSA public key
at java.base/sun.security.rsa.RSAKeyFactory.engineGeneratePublic(RSAKeyFactory.java:239)
at java.base/java.security.KeyFactory.generatePublic(KeyFactory.java:352)
at com.rizky.pdf.cli.CheckPdfSignature.processSignature(CheckPdfSignature.java:149)
at com.rizky.pdf.cli.CheckPdfSignature.lambda$call$0(CheckPdfSignature.java:66)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1540)
at com.rizky.pdf.cli.CheckPdfSignature.call(CheckPdfSignature.java:64)
at com.rizky.pdf.cli.CheckPdfSignature.call(CheckPdfSignature.java:32)
at picocli.CommandLine.executeUserObject(CommandLine.java:1953)
at picocli.CommandLine.access$1300(CommandLine.java:145)
at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2352)
at picocli.CommandLine$RunLast.handle(CommandLine.java:2346)
at picocli.CommandLine$RunLast.handle(CommandLine.java:2311)
at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2179)
at picocli.CommandLine.execute(CommandLine.java:2078)
at com.rizky.pdf.cli.MainCli.main(MainCli.java:17)
Caused by: java.security.InvalidKeyException: Invalid RSA public key
at java.base/sun.security.rsa.RSAPublicKeyImpl.parseKeyBits(RSAPublicKeyImpl.java:189)
at java.base/sun.security.x509.X509Key.decode(X509Key.java:390)
at java.base/sun.security.x509.X509Key.decode(X509Key.java:401)
at java.base/sun.security.rsa.RSAPublicKeyImpl.<init>(RSAPublicKeyImpl.java:122)
at java.base/sun.security.rsa.RSAKeyFactory.generatePublic(RSAKeyFactory.java:330)
at java.base/sun.security.rsa.RSAKeyFactory.engineGeneratePublic(RSAKeyFactory.java:235)
... 14 common frames omitted
Caused by: java.io.IOException: DerInputStream.getLength(): lengthTag=79, too big.
at java.base/sun.security.util.DerInputStream.getLength(DerInputStream.java:606)
at java.base/sun.security.util.DerValue.<init>(DerValue.java:257)
at java.base/sun.security.util.DerInputStream.getDerValue(DerInputStream.java:457)
at java.base/sun.security.rsa.RSAPublicKeyImpl.parseKeyBits(RSAPublicKeyImpl.java:178)
... 19 common frames omitted
2022-08-16 14:13:32,260 INFO com.rizky.pdf.cli.MainCli [MainCli] Elapsed Time: 351 ms
HI gidravlic,
From the error it is most likely that the signature did not use RSA Algorithm. This library only cover RSA Algorithm. If possible, could you share the pdf file?
Hello! Abobe pdf reader verify signature successful, but with you utility with jdk8 i got error: