2011-05-07. PDF files can have true 'protection', by being encrypted and needing a serious password to permit decryption; this way one wouldn't be able to do anything with them unless having the password or a very very long time (and luck) of cracking the code (unless something's badly implemented -- I haven't checked for the history of pdf security, since I'm not interested in using such features anyway, but would put the whole file into GPG or the like if I cared). But there's another level of 'protection' which is infuriating in its time-wasting and pettiness: the need of a password to split or join or print or whatever, in spite of being able to view. This is not something hard, but just that the reader is honouring a request set by the file that a password should be given for such operations. It's particularly annoying that even Free Software programs such as kpdf and pdftk appear to follow such specifications (because the pdf specification says that readers should); kpdf at least has an option "Obey DRM restrictions" (in KDE 3.5), that can be turned off, but pdftk doesn't that I've found. It is of course easy to turn off such behaviour before compiling. As of pdftk-1.44 the relevant file is: ./pdftk-1.44-dist/java/com/lowagie/text/pdf/PdfReader.java and the line (#109) is: protected boolean passwordIsOwner= false; // added by ssteward which clearly should be corrected to... protected boolean passwordIsOwner= true; Then compile, and run without hindrance. On Gentoo it needs: ebuild /usr/portage/app-text/pdftk/pdftk-1.44.ebuild unpack vi /tmp/portage/app-text/pdftk-1.44/work/pdftk-1.44-dist/java/com/lowagie/text/pdf/PdfReader.java ebuild /usr/portage/app-text/pdftk/pdftk-1.44.ebuild compile ebuild /usr/portage/app-text/pdftk/pdftk-1.44.ebuild install ebuild /usr/portage/app-text/pdftk/pdftk-1.44.ebuild qmerge Then pdftk will naturally ignore any ignorable restrictions (i.e. other than a truly encrypted file input without password). The simplest form of restriction removal is: $ pdftk in.pdf cat output out.pdf $ pdfinfo in.pdf | grep ^Encryp Encrypted: yes (print:yes copy:no change:no addNotes:no) $ pdfinfo out.pdf | grep ^Encryp Encrypted: no