Remove PDF Password
Enter the password you know to strip encryption from a PDF you own — useful for recovering your own files and skipping repetitive prompts.
Your PDF and password never leave your browser. Verification and processing all happen locally on your device.
⚠️ Use only on PDFs you own or have explicit permission to modify.
This tool only works when you already know the password — it does not perform brute-force attacks. Bypassing protections on PDFs you do not own may violate copyright and computer-misuse laws.
This tool only works when you already know the password — it does not perform brute-force attacks. Bypassing protections on PDFs you do not own may violate copyright and computer-misuse laws.
Processing…
[ AdSense — PDF Tools ]
Common use cases
| Situation | Description |
|---|---|
| Clean up your own PDFs | Remove a long-ago password you no longer need to type each time |
| Bank / scanner PDFs | Strip protection from statements or certificates for your personal archive |
| Chain with other tools | Encrypted PDFs cannot be merged, split, or converted — unlock first |
| Lift print / copy limits | If you know the password, owner-password restrictions are removed too |
Related tools
Libraries used
Why no brute-force support?
First, brute-forcing PDFs you do not own can violate copyright and computer-misuse laws.
Second, modern PDF encryption (AES-256) is computationally hardened — brute-forcing typical passwords would take decades,
so it is not practically useful. This tool focuses on legitimate use: unlocking PDFs you own.
Is the password really not uploaded?
Correct.
PDF.js validates the password directly inside your browser; only the success/failure result is exposed to the page's JavaScript.
The password string is never sent over the network — it lives only in browser memory. The tool works fully offline after the first page load.
The output size is different from the original — normal?
Yes. pdf-lib copies page objects as-is, so fonts and images carry over. The encryption dictionary and metadata are removed, which may slightly shrink the file,
while object compression differences can occasionally make it slightly larger.
How it works
When to use it (your own PDFs only)
Old personal contractsYour own lease / employment PDFs whose password you know — unlock once for convenience.
Your medical recordsHospital-issued PDFs (diagnosis, CT results) you own — unlock for easier search and sharing with family / other clinicians.
Personal invoices · taxTax invoices / wire confirmations from official sites — unlock for searchable / editable storage.
Your diplomasSchool-issued personal diplomas / transcripts — unlock when receiving party requires a password-free version.
Lawyer-sent personal docsPersonal documents from your lawyer — unlock for personal record-keeping.
Your business filingsPersonal business registration / tax filing PDFs — unlock for accounting / tax-prep convenience.
⚠️ Your own PDFs only. This tool re-saves PDFs after validating the password — no brute force. You cannot unlock someone else's PDF without their password, and attempting to do so may be a legal violation.
2-stage processing — PDF.js + pdf-lib
- Password validation (PDF.js) —
pdfjsLib.getDocument({ data, password }). On wrong password, PasswordException code 2 surfaces. Enter key triggers + show/hide toggle. - Lossless re-save (pdf-lib) — after validation,
PDFDocument.load(data, { ignoreEncryption: true })loads and re-saves. Text, images, hyperlinks, and metadata are preserved.
Not a rasterization approach — text search / copy / OCR all keep working. File size may vary ±10%.
What's preserved
- ✅ Body text (searchable, copyable, OCR-able)
- ✅ Images / graphics / logos
- ✅ Hyperlinks (external + intra-document)
- ✅ Metadata (title / author / subject — best effort)
- ✅ Page rotation / order
- ⚠️ Interactive forms (checkboxes / inputs) — some behavior may change
- ⚠️ Digital signatures — likely invalidated (expected, security feature)
- ⚠️ JavaScript / embedded actions — may be sandboxed
Common pitfalls
- No password = no unlock — no brute force here. If you don't have the password, request a re-issue from the source.
- Code 1 vs code 2 — PasswordException code 1 (no password supplied) / code 2 (wrong password). Distinct user alerts.
- Compatibility — very old PDFs (pre-1.4) or non-standard encryption may fail in pdf-lib. Unlock via a PDF viewer first, then retry.
- Digital-signature invalidation — by design. For signed PDFs, keep the original.
- File-size variance — pdf-lib's object compression differs from the original; ±10% is normal.
Frequently asked questions
Can I unlock a PDF whose password I don't know?
No. This tool does not perform brute-force attacks. You must already know the password.
Use it only on PDFs you own or have explicit permission to modify.
Are my PDF and password sent to a server?
No. Processing happens entirely inside your browser using PDF.js and pdf-lib.
The site operator cannot see your file contents or your password. The password is held only in JS memory and then discarded.
Are text, images, and formatting preserved?
Yes. pdf-lib copies the original page objects as-is, so text, images, fonts, and hyperlinks are preserved.
The result remains fully searchable and copyable.
Does it remove both the user and owner passwords?
PDFs can have a user (open) password and an owner (permissions) password.
With the open password supplied, this tool produces a new PDF with both removed — no password required to open, and printing/copying restrictions are lifted.
Is this legal?
Use this only on PDFs you own or have explicit permission to modify. Bypassing protections on PDFs you do not own may violate
copyright and computer-misuse laws in your jurisdiction. The tool assumes legitimate use — for example, recovering your own files or
eliminating repetitive password prompts.
What happens if the password is wrong?
PDF.js validates the password; if it does not match, an alert reading "Password does not match" is shown and processing stops.
The password never leaves your browser memory.
References
Last reviewed: 2026-05-17 / Powered by PDF.js (Apache 2.0) + pdf-lib (MIT).
- PDF.js (Apache 2.0) — GitHub
- pdf-lib (MIT) — GitHub
- PDF encryption spec — ISO 32000-1 §7.6 (Encryption)
- File API — MDN
⚠️ Open the result PDF after downloading and verify that it opens without a password and the content is intact.