[ https://issues.apache.org/jira/browse/PDFBOX-4660?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16939356#comment-16939356 ]
Michael Klink commented on PDFBOX-4660: --------------------------------------- Other than that ISO 32000-2 has clarified for the older encryption versions: {panel:title=Section 7.6.4.3.2 Algorithm 2: Computing a file encryption key in order to encrypt a document (revision 4 and earlier)} The password string is generated from host system codepage characters (or system scripts) by first converting the string to *PDFDocEncoding*. If the input is Unicode, first convert to a codepage encoding, and then to *PDFDocEncoding* for backward compatibility {panel} To me this appears to imply that many _special national characters_ will eventually be mapped to '?', many because of the reduction to *PDFDocEncoding* and some more due to the detour via _a codepage encoding_ which depends on the computer the software is run on. In particular, if you encrypt with a password with _special national characters_ which are present in the local codepage and in *PDFDocEncoding* and someone in another Locale with a different codepage on which those characters aren't present, that person cannot decrypt the file. [~tilman] - thus, what you reproduced may still differ from what can be observed in [~fastcoretux]' locale... In other words, don't ever use non-ASCII characters in a password for a _revision 4 and earlier_ PDF encryption unless you want decryption trouble. > Can't decrypt PDF when password contains special national characters > -------------------------------------------------------------------- > > Key: PDFBOX-4660 > URL: https://issues.apache.org/jira/browse/PDFBOX-4660 > Project: PDFBox > Issue Type: Bug > Components: Crypto > Affects Versions: 2.0.17 > Reporter: Fastcore Tux > Priority: Major > > I tried to encrypt PDF by user password which contains national characters. > Encryption was successful but I can't open it and decrypt it in any PDF > browser. > Due to Cookbook example > (https://pdfbox.apache.org/2.0/cookbook/encryption.html) it could be tested > by changing StandardProtectionPolicy instantiation. > {code:java} > StandardProtectionPolicy spp = new StandardProtectionPolicy("ěšč", "řžý", ap); > {code} > Maybe my usage is wrong... In this case please accept my apology. > Thank you! > -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@pdfbox.apache.org For additional commands, e-mail: dev-h...@pdfbox.apache.org