This question already has an answer here:

I have several PDF documents which have the "no copy" and "no print" restriction bits set. Are there any free tools for removing such restrictions, on Linux?

I tried pdf2ps | ps2pdf but the size increase is horrible. The originals are fairly large too, so I'd rather use a local tool than a website.

marked as duplicate by jww, n8te, music2myear, G-Man, Kamil Maciorowski Jun 11 at 5:53

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

up vote 2 down vote accepted

FOSS-wise, there is PDFCrack, not sure if it does actually remove the security though, it's just a password cracker. I generally turn to some free trial software, A-PDF Restrictions Remover, it's easier to use.

It might be a lot harder if it's a recent PDF version though, I think they really increased the security recently.

  • Ended up buying the A-PDF tool. – grawity Jun 22 '15 at 10:07
  • A-PDF tool wants to make changes to the computer. Why does a PDF editor need to change the machine's configuration? It is a classic violation of least privilege and is probably laced with malware. – jww Jun 7 at 19:01

With qpdf:

$ qpdf --decrypt restricted-input.pdf unrestricted-output.pdf
  • 3
    qpdf works very well. There is a convenient pre-built Windows binary, which is a plus. – Li-aung Yip Mar 19 '15 at 4:04

You can probably use pdftk. Something like

pdftk in.pdf output out.pdf allow AllFeatures

should do the job.

  • 2
    This would work if the password is known. – Scott McClenning Dec 13 '11 at 2:39
  • 5
    I'm probably a few years late, but the owner password does not have to be known for this, just the user password, if there's any. It warns you not to abuse the power to simply remove the owner password and the limitations altogether, but does it without further complaining. I think this should be the accepted answer. – matega Dec 10 '14 at 8:04

If you've got ghostscript installed try simply:

gs -sPDFPassword=$PASS -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=%stdout% -c .setpdfwrite -f locked.pdf > unlocked.pdf
  • 1
    +1 and found a variation online: gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=unencrypted.pdf -c .setpdfwrite -f encrypted.pdf. Worked for me in a few seconds, faster than brute-forcing a password... – bufh Jul 9 '16 at 15:51
  • Side note, in my case the original file was 10 MB, after gs it was 3.7 MB. – bufh Jul 9 '16 at 16:01
  • 1
    @bufh It probably reduced the resolution. GhostScript defaults to something like 72 dpi unless you specify an alternative with something like -r<dpi> (eg. -r300). Also, make sure you pass -dSAFER. PostScript is a turing-complete programming language and, last I checked, GhostScript's default was to allow arbitrary filesystem access. – ssokolow Jan 17 '17 at 0:44

protected by Community Aug 7 '13 at 6:39

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.