[ 
https://issues.apache.org/jira/browse/PDFBOX-2469?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14222809#comment-14222809
 ] 

Thomas Chojecki edited comment on PDFBOX-2469 at 11/24/14 9:18 AM:
-------------------------------------------------------------------

Ups, I simply forgot to write it to the OutputStream. My fault.

I checked it twice now and I don't know why, but the NonSeq parser log 
the exception that the stream can not be decrypted, but don't fail to finish 
parsing. The legacy parser fails hard and stop parsing the rest of the document.

All I want to say is, that the NonSeq parser run into the same error but handle 
it better. Failing the whole decryption because one object can't be handled 
isn't good. 

There are also cases where the NonSeq parser isn't working, So not every user 
can just switch to it. Maybe you remember the "signature" discussion ;-) This 
is one TODO I try to fix, but at the moment I haven't time to do it. 


was (Author: tchojecki):
Ups, I simply forgot to write it to the OutputStream. My fault.

The case with the exception is, that the NonSeq parser already ignore it 
silently and just log it. So both parser would act the same, if the new 
exception block will be also logged and ignored. All I want to say is, that the 
NonSeq parser run into the same error but handle it better. Failing the whole 
decryption because one object can't be handled isn't good. 

There are also cases where the NonSeq parser isn't working, So not every user 
can just switch to it. Maybe you remember the "signature" discussion ;-) This 
is one TODO I try to fix, but at the moment I haven't time to do it. 

> javax.crypto.BadPaddingException in PDFBox 1.8.8-SNAPSHOT
> ---------------------------------------------------------
>
>                 Key: PDFBOX-2469
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-2469
>             Project: PDFBox
>          Issue Type: Bug
>          Components: PDModel
>    Affects Versions: 1.8.7, 2.0.0
>            Reporter: Tim Allison
>            Assignee: Andreas Lehmkühler
>            Priority: Minor
>              Labels: AES128
>             Fix For: 1.8.8, 2.0.0
>
>         Attachments: FormI-9-English.pdf, PDFBOX-2469-regression.patch, 
> testPDF_acroForm.pdf
>
>
> [~gagravarr] noticed that one of our old test files fails a Tika test now 
> with PDFBox 1.8.7 and Java 1.6.
> I just tested the pure PDFBox app built with PDFBox 1.8.8-SNAPSHOT, and I'm 
> getting the same exception with Java 1.6 and Java 1.7.
> Stacktrace: 
> {noformat}
> ExtractText failed with the following exception:
> java.io.IOException: javax.crypto.BadPaddingException: Given final block not 
> properly padded
>         at 
> javax.crypto.CipherInputStream.getMoreData(CipherInputStream.java:118)
>         at javax.crypto.CipherInputStream.read(CipherInputStream.java:236)
>         at javax.crypto.CipherInputStream.read(CipherInputStream.java:212)
>         at 
> org.apache.pdfbox.pdmodel.encryption.SecurityHandler.encryptData(SecurityHandler.java:316)
>         at 
> org.apache.pdfbox.pdmodel.encryption.SecurityHandler.decryptStream(SecurityHandler.java:421)
>         at 
> org.apache.pdfbox.pdmodel.encryption.SecurityHandler.decrypt(SecurityHandler.java:390)
>         at 
> org.apache.pdfbox.pdmodel.encryption.SecurityHandler.decryptObject(SecurityHandler.java:365)
>         at 
> org.apache.pdfbox.pdmodel.encryption.SecurityHandler.proceedDecryption(SecurityHandler.java:196)
>         at 
> org.apache.pdfbox.pdmodel.encryption.StandardSecurityHandler.decryptDocument(StandardSecurityHandler.java:158)
>         at 
> org.apache.pdfbox.pdmodel.PDDocument.openProtection(PDDocument.java:1598)
>         at org.apache.pdfbox.ExtractText.startExtraction(ExtractText.java:216)
>         at org.apache.pdfbox.ExtractText.main(ExtractText.java:85)
>         at org.apache.pdfbox.PDFBox.main(PDFBox.java:58)
> Caused by: javax.crypto.BadPaddingException: Given final block not properly 
> padded
>         at com.sun.crypto.provider.CipherCore.doFinal(CipherCore.java:811)
>         at com.sun.crypto.provider.CipherCore.doFinal(CipherCore.java:676)
>         at com.sun.crypto.provider.AESCipher.engineDoFinal(AESCipher.java:423)
>         at javax.crypto.Cipher.doFinal(Cipher.java:1708)
>         at 
> javax.crypto.CipherInputStream.getMoreData(CipherInputStream.java:112)
>         ... 12 more
> {noformat}
> java version "1.7.0_71"
> OpenJDK Runtime Environment (rhel-2.5.3.1.el6-x86_64 u71-b14)
> OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)
> and
> java version "1.6.0_33"
> OpenJDK Runtime Environment (IcedTea6 1.13.5) (rhel-1.13.5.0.el6_6-x86_64)
> OpenJDK 64-Bit Server VM (build 23.25-b01, mixed mode)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to