Arjun Kaushal created PDFBOX-3402:
-------------------------------------

             Summary: BadPaddingException while decrypting file 
                 Key: PDFBOX-3402
                 URL: https://issues.apache.org/jira/browse/PDFBOX-3402
             Project: PDFBox
          Issue Type: Bug
          Components: Crypto
    Affects Versions: 2.0.1
            Reporter: Arjun Kaushal


Here I am getting issue while trying decrypt file using PDFBox
----
java.io.IOException: javax.crypto.BadPaddingException: Given final block not 
properly padded
        at 
org.apache.pdfbox.pdmodel.encryption.SecurityHandler.encryptDataAESother(SecurityHandler.java:291)
        at 
org.apache.pdfbox.pdmodel.encryption.SecurityHandler.encryptData(SecurityHandler.java:152)
        at 
org.apache.pdfbox.pdmodel.encryption.SecurityHandler.decryptStream(SecurityHandler.java:449)
        at 
org.apache.pdfbox.pdfparser.COSParser.parseFileObject(COSParser.java:764)
        at 
org.apache.pdfbox.pdfparser.COSParser.parseObjectDynamically(COSParser.java:721)
        at 
org.apache.pdfbox.pdfparser.COSParser.parseObjectDynamically(COSParser.java:652)
        at 
org.apache.pdfbox.pdfparser.COSParser.parseDictObjects(COSParser.java:612)
        at 
org.apache.pdfbox.pdfparser.PDFParser.initialParse(PDFParser.java:215)
        at org.apache.pdfbox.pdfparser.PDFParser.parse(PDFParser.java:249)
        at org.apache.pdfbox.pdmodel.PDDocument.load(PDDocument.java:972)
        at org.apache.pdfbox.pdmodel.PDDocument.load(PDDocument.java:908)
----

{code:title=Decryptor.java}
String oPasswd = oPassword + OWNER_PDF_ENCRYTPION_KEY_SUFFIX;
                String uPasswd = uPassword;

                try {
                        PDDocument doc = PDDocument.load(new 
FileInputStream(src));

                        AccessPermission ap = new AccessPermission();
                        ap.setCanPrint(true);
                        
                        // owner password (to open the file with all 
permissions) is "12345"
                        // user password (to open the file but with restricted 
permissions, is empty here) 
                        StandardProtectionPolicy spp = new 
StandardProtectionPolicy(oPasswd, uPasswd, ap);
                        spp.setEncryptionKeyLength(PDF_ENCRYPTOPN_KEY_LENGTH);
                        spp.setPermissions(ap);
                        doc.protect(spp);
                        doc.save(dest);
                        doc.close();                    
                        return true;
                } catch (IOException ioe) {
                        logger.error("Encryptor.encryptPDF ERROR IOException ", 
ioe);
                } catch (Exception e) {
                        logger.error("Encryptor.encryptPDF ERROR IOException ", 
e);
                }
{code}



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to