Skip to content

Repository files navigation

πŸ”“ CK PDF Unlocker

CK PDF Unlocker β€” stop re-entering passwords on PDFs you already own

Stop re-entering passwords. Remove passwords and copy/print restrictions from PDF files β€” safely, locally, and without changing your originals.

⚠️ This app does NOT crack or recover passwords. It cannot find or guess a lost password. It is designed solely to eliminate the hassle of re-entering a known password every time you open a PDF you already have legitimate access to.

Release Platform License Website


Download & Install β€” Windows

πŸ‘‡ Pick one option below to download and install CK PDF Unlocker.

Method Best for
πŸͺ Microsoft Store Easiest β€” auto-updates, sandboxed
πŸ“¦ Winget Windows Package Manager users
πŸ’» Command Prompt (curl) Quick install via terminal
⚑ PowerShell Quick install via terminal
πŸͺ£ Scoop Scoop users
🍫 Chocolatey Chocolatey users
⬇️ Direct download No terminal, no package manager

Looking for Linux? See the 🐧 Linux section below.


πŸͺ Microsoft Store

Microsoft Store

Get it from Microsoft Store

Prefer the command line? Open the Store listing directly:

start ms-windows-store://pdp/?ProductId=9NZFZNXPFF15

πŸ“¦ Winget

winget

winget install epatels.CKPDFUnlocker

Note: This installs the EXE version by default. For the MSI installer β€” recommended for Enterprise/IT deployment β€” use:

winget install epatels.CKPDFUnlocker --installer-type msi

Note: You can also install straight from the Microsoft Store using winget:

winget install --id 9NZFZNXPFF15 --source msstore

πŸ’» Command Prompt β€” curl

curl

EXE installer:

curl -L -o "%TEMP%\ck-pdf-unlocker-setup-x64.exe" https://github.com/epatels/ck-pdf-unlocker/releases/latest/download/ck-pdf-unlocker-setup-x64.exe && start /wait "" "%TEMP%\ck-pdf-unlocker-setup-x64.exe" /S && echo CK PDF Unlocker installed successfully!

MSI installer: β€” for Enterprise users

curl -L -o "%TEMP%\ck-pdf-unlocker-setup-x64.msi" https://github.com/epatels/ck-pdf-unlocker/releases/latest/download/ck-pdf-unlocker-setup-x64.msi && msiexec /i "%TEMP%\ck-pdf-unlocker-setup-x64.msi" /qb /norestart && echo CK PDF Unlocker installed successfully!

⚑ PowerShell

PowerShell

EXE installer:

Invoke-WebRequest -Uri "https://github.com/epatels/ck-pdf-unlocker/releases/latest/download/ck-pdf-unlocker-setup-x64.exe" -OutFile "$env:TEMP\ck-pdf-unlocker-setup-x64.exe"; Start-Process "$env:TEMP\ck-pdf-unlocker-setup-x64.exe" -ArgumentList "/S" -Wait; Write-Host "CK PDF Unlocker installed successfully!" -ForegroundColor Green

MSI installer: β€” for Enterprise users

Invoke-WebRequest -Uri "https://github.com/epatels/ck-pdf-unlocker/releases/latest/download/ck-pdf-unlocker-setup-x64.msi" -OutFile "$env:TEMP\ck-pdf-unlocker-setup-x64.msi"; Start-Process msiexec -ArgumentList "/i `"$env:TEMP\ck-pdf-unlocker-setup-x64.msi`" /qb /norestart" -Verb RunAs -Wait; Write-Host "CK PDF Unlocker installed successfully!" -ForegroundColor Green

πŸͺ£ Scoop

Scoop

Note: Scoop installs the .exe version. If you need the .msi installer, use the Command Prompt or PowerShell options above.

scoop install ck-pdf-unlocker

To update to the latest version:

scoop update ck-pdf-unlocker

Add the bucket once, if not already done:

scoop bucket add epatels https://github.com/epatels/scoop-bucket

🍫 Chocolatey

Chocolatey

choco install ck-pdf-unlocker

Note: The build script automatically prefers the MSI β€” it only falls back to the EXE if no MSI was uploaded to that GitHub release. There is no --installer-type switch like winget's, so you can't choose at install time; if you specifically need one or the other, use the Command Prompt or PowerShell options above instead.

⬇️ Direct download

Recommended for most users Download EXE
For Enterprise / IT deployment Download MSI

⚠️ Windows SmartScreen warning on first run

When you first run the app, Windows may show a warning saying "Windows protected your PC". This is expected and completely normal for any new, independently distributed application β€” it does not mean the file is unsafe.

This happens because the .exe is not yet code-signed with a commercial certificate (which costs hundreds of dollars per year). The tool is clean and contains no malware or spyware.

To proceed: click More info β†’ then click Run anyway.


🐧 Download & Install β€” Linux

πŸ‘‡ Pick one option below.

Method Best for
πŸ“¦ Snap Ubuntu and other snap-enabled distros β€” auto-updates
πŸ“₯ Flatpak Any modern distro with Flatpak set up
πŸ“€ AppImage Portable β€” runs on any distro, no installation required

πŸ“¦ Snap

Snap Store

CK PDF Unlocker is published on the Snap Store.

sudo snap install ck-pdf-unlocker

Launch the GUI:

ck-pdf-unlocker

Run the CLI β€” snap namespaces it as ck-pdf-unlocker.ckpdfunlocker by default, since the command name differs from the snap name:

ck-pdf-unlocker.ckpdfunlocker

To use the shorter ckpdfunlocker instead, set up the alias once (snapd requires this explicit, per-machine step β€” it can't be done automatically at install time):

sudo snap alias ck-pdf-unlocker.ckpdfunlocker ckpdfunlocker

After that, both forms work:

ckpdfunlocker
ck-pdf-unlocker.ckpdfunlocker

To update:

sudo snap refresh ck-pdf-unlocker

πŸ“₯ Flatpak

Flatpak

Download + install:

curl -L -o ck-pdf-unlocker.flatpak https://github.com/epatels/ck-pdf-unlocker/releases/latest/download/ck-pdf-unlocker.flatpak && flatpak install --user ck-pdf-unlocker.flatpak

Run:

flatpak run io.github.epatels.CkPdfUnlocker

Update to the latest version (download a fresh .flatpak from the link above, then):

flatpak install --user --reinstall ck-pdf-unlocker.flatpak

This installs straight from a downloaded file, not from a store β€” flatpak update won't pick up new versions automatically. Repeat the download step above for each new release.

πŸ“€ AppImage

AppImage

A portable, single-file executable β€” no installation required. Works on virtually any x86_64 Linux distribution.

Download + run:

curl -L -o ck-pdf-unlocker.AppImage https://github.com/epatels/ck-pdf-unlocker/releases/latest/download/ck-pdf-unlocker.AppImage && chmod +x ck-pdf-unlocker.AppImage && ./ck-pdf-unlocker.AppImage

On first run, the AppImage offers to install itself β€” it copies to ~/.local/bin/, adds an icon and a .desktop file so CK PDF Unlocker appears in your application menu. You can decline and just run it portably.

Update to the latest version:

Download the new .AppImage from the latest release and replace the old file:

curl -L -o ~/.local/bin/ck-pdf-unlocker.AppImage https://github.com/epatels/ck-pdf-unlocker/releases/latest/download/ck-pdf-unlocker.AppImage && chmod +x ~/.local/bin/ck-pdf-unlocker.AppImage

Your data in ~/Documents/CK PDF Unlocker/ is completely separate from the AppImage file and is never affected by updates.


⌨️ Command-Line Interface (CLI)

New in this release: ckpdfunlocker, a full-featured CLI for scripting and automation β€” built on the same engine, Password Vault, and Smart Auto-fill logic as the desktop app.

:: Unlock a single file with a known password
ckpdfunlocker statement.pdf --password hunter2

:: Look up the password in the Vault by Owner + Sender
ckpdfunlocker invoices\*.pdf --owner Dad --sender "HDFC Bank"

:: Unlock an entire folder (and subfolders), auto-matching each file by filename
ckpdfunlocker C:\Downloads --recursive -o C:\Unlocked

:: Save a password to the Vault for future use, without unlocking anything yet
ckpdfunlocker --owner "Priya" --sender "State Electricity Board" --password mypw --save-password personal
Option Description
inputs PDF file(s), folder(s), and/or glob pattern(s), e.g. *.pdf
-p, --password PASS Password to try on every resolved file
--owner NAME / --sender NAME Look up the password in the Vault by Owner + Sender (both required together)
--save-password {personal,shared} Save/update Owner + Sender + Password into the given vault for future reuse β€” requires all three, and can be combined with file inputs or run entirely on its own (no files) just to pre-populate the Vault
--no-store Never consult the Vault β€” files with no explicit --password are reported as skipped
-o, --output-dir DIR Output folder (default: alongside each source file, as <name>_unlocked.pdf)
-r, --recursive When an input is a folder, also search subfolders
--dry-run Show what would happen; write nothing
--json Also print a machine-readable JSON summary
-q, --quiet Only print the final summary line(s)
--version Print the version and exit
--accept-eula Accept the license non-interactively (needed once; shared with the desktop app's first-run dialog)

With no --password or --owner/--sender given, the CLI auto-matches each file by filename against the Vault β€” the same Smart Auto-fill the desktop app uses β€” and only applies a match when it's unambiguous. Both the CLI and desktop app read and write the same Personal/Shared databases, so anything saved in one shows up instantly in the other.


πŸ—‘οΈ Uninstall

Windows

From Settings:

Go to Settings β†’ Apps β†’ Installed apps, find CK PDF Unlocker, and click Uninstall.

From the command line:

:: Winget
winget uninstall epatels.CKPDFUnlocker

:: Scoop
scoop uninstall ck-pdf-unlocker

:: Chocolatey
choco uninstall ck-pdf-unlocker

Microsoft Store installs can be uninstalled from Settings β†’ Apps or by right-clicking the app in the Start Menu and selecting Uninstall.

Linux β€” Snap

sudo snap remove ck-pdf-unlocker

Linux β€” Flatpak

flatpak uninstall io.github.epatels.CkPdfUnlocker

To also remove the app data:

flatpak uninstall --delete-data io.github.epatels.CkPdfUnlocker

Linux β€” AppImage

If you used the built-in install prompt on first run:

# Remove the AppImage binary
rm -f ~/.local/bin/ck-pdf-unlocker.AppImage

# Remove the desktop entry and icon
rm -f ~/.local/share/applications/ck-pdf-unlocker.desktop
rm -f ~/.local/share/icons/hicolor/512x512/apps/ck-pdf-unlocker.png

# Remove the install marker
rm -rf ~/.local/share/ck-pdf-unlocker/.appimage-installed

# Refresh the app menu
update-desktop-database ~/.local/share/applications/ 2>/dev/null || true

If you ran it portably (never installed), just delete the .AppImage file.

Your data in ~/Documents/CK PDF Unlocker/ is not removed by any of the above. Delete that folder manually if you no longer need your Password Vault and settings.


πŸ†• What's New β€” Enter a Password Once. Never Again.

Unlock it once. Never type that password again β€” auto-filled, no prompt.

This is a major release. The single biggest change: CK PDF Unlocker now remembers every password you use and auto-fills it the next time β€” no more digging through emails or sticky notes for a password you've typed a hundred times before.

πŸ” Save once, unlock forever The first time you unlock a file, its password is saved automatically. The next file from the same sender unlocks itself.
🧠 Smart, self-learning auto-fill The app reads each filename and learns which Owner and Sender it belongs to β€” the more you use it, the fewer clicks each new batch takes.
πŸ—‚οΈ Personal & Shared Password Vaults Keep your own private vault, or a shared one for a household/team β€” encrypted, backed up daily, and automatically conflict-free.
⌨️ New CLI ckpdfunlocker β€” script or automate unlocking from the command line, using the very same Vault and auto-fill logic as the desktop app.

100% Free β€” No Strings Attached

βœ… Completely free No payment, no subscription, no trial
βœ… Offline File does not leave your device
βœ… No registration No account, no email, no credit card, no phone
βœ… No ads Clean, distraction-free interface
βœ… No malware or spyware Every release is independently scanned by VirusTotal β€” see Security below
βœ… No expiry Download once, use forever
βœ… No Watermark Absolutely no restrictions
βœ… Commercial use allowed Use it for your business without restrictions
βœ… Original files untouched A new _unlocked.pdf is always created β€” originals are never modified

What It Does

The Swiss Army knife of PDF unlocking β€” passwords, print locks, copy locks, whole folders, one app

CK PDF Unlocker removes two kinds of PDF restrictions:

Restriction What it means After unlocking
Open password You're prompted for a password just to open the file File opens freely
Copy / print restrictions File opens but you can't copy text, print, or edit All restrictions lifted

Your original file is never modified. CK PDF Unlocker always creates a new file alongside the original β€” named filename_unlocked.pdf β€” or in a folder of your choice. The original stays exactly as it was.


Who Is It For?

Anyone who receives password-protected or restricted PDFs they legitimately own or have authorisation to access β€” anywhere in the world. If you've ever had to dig up a password just to open a file you already own, this tool is for you.

🏦 Bank Statements

Banks routinely send monthly statements as password-protected PDFs. CK PDF Unlocker lets you unlock them all at once, making them easy to archive, search, and share with your accountant β€” without hunting for the password every single time.

🧾 Utility Bills

Electricity, water, gas, and broadband providers frequently email bills as protected PDFs. Unlocking them lets you copy text for expense claims or print them without restriction.

πŸ’Ό Tax Documents & Government Records

Tax authorities, income portals, and government agencies around the world issue password-protected PDFs β€” acknowledgements, assessment notices, certificates. Unlock them once and store them freely.

🏠 Loan & Insurance Documents

Home loan statements, insurance policy documents, and premium receipts are routinely sent as locked PDFs. Unlock them to combine, annotate, or share with co-applicants or advisers.

πŸ’³ Credit Card Statements

Monthly credit card statements from most banks are password-protected. Process multiple months in a single run.

πŸ“Š Salary Slips & HR Documents

Many payroll systems generate password-protected payslips. Unlock them for easy reference during loan applications or tax filing.

πŸ₯ Medical Records & Lab Reports

Diagnostic labs and hospitals sometimes send reports as restricted PDFs. Unlock them to share easily with other doctors or insurance providers.

πŸ“š Research Papers & Reports

Some downloaded research papers or internal reports have copy restrictions that prevent highlighting or extracting quotes. Remove the restrictions to work with the content normally.

πŸ›οΈ Regulatory & Compliance Documents

Licences, certificates, and regulatory filings from government portals often come with restrictions. Unlock them for filing, printing, or long-term archival.


Key Features

  • πŸ” Password Vault β€” enter a password once and it's saved automatically; the next matching file unlocks without asking
  • 🧠 Smart auto-fill β€” auto-detects Owner and Sender from the filename, and gets better the more you use it (see below)
  • Personal & Shared databases β€” a private vault for you, plus an optional shared vault for a household or team, with automatic conflict resolution
  • Batch processing β€” add as many PDFs as you like and unlock them all in one click
  • Per-file passwords β€” each file can have its own password, or use a single global password for all files
  • Original file untouched β€” a new _unlocked file is always created; the original is never modified or deleted
  • Output folder control β€” save unlocked files alongside originals, or choose a custom output folder
  • Dual engine β€” uses pikepdf as the primary engine with qpdf as a fallback for maximum compatibility
  • Drag and drop β€” drag PDF files directly into the file list
  • ⌨️ Command-line interface β€” ckpdfunlocker, for scripting and automation, sharing the same Vault and auto-fill logic as the desktop app
  • Dark / Light / System theme β€” choose your preferred theme; it's remembered across sessions
  • Auto-update β€” notified in-app when a new version is available, with one-click update
  • Output metadata β€” every unlocked PDF is stamped with the tool name, version, timestamp, and a unique document ID for traceability
  • In-app Help Center β€” a searchable-by-topic help panel (Help β†’ Help Center, or press F1) covering the Vault, auto-fill, CLI, and FAQ
  • Anonymous telemetry β€” optional, opt-in only; helps improve the tool (no filenames or passwords ever sent)

πŸ” Smart Password Vault & Auto-fill

The headline feature of this release: you should never have to type the same PDF password twice.

Enter it once β€” CK PDF Unlocker remembers it

The moment you successfully unlock a file, its password is saved automatically into the Password Vault, keyed by:

  • Owner β€” who the document belongs to (e.g. "Dad", "Priya", "Acme Pvt Ltd")
  • Sender β€” who issued it (e.g. "HDFC Bank", "State Electricity Board")

The next PDF from that same sender β€” this month's statement, next quarter's bill β€” is matched automatically and unlocked without you typing a thing.

Auto-fill that learns from you

When you add a file, CK PDF Unlocker reads the filename and tries to work out its Owner and Sender on its own. The first time it sees an unfamiliar filename pattern, it may ask you to confirm β€” after that, it remembers the pattern, so similarly-named files are recognized instantly from then on.

Session What happens
1st time you unlock HDFC_Statement_Jan.pdf You confirm Owner + Sender once; password is saved
2nd time (HDFC_Statement_Feb.pdf) Owner, Sender, and password are all auto-filled
Every month after Zero clicks β€” just add the file and hit Unlock

Personal Passwords vs. Shared Passwords

Solve it once. The next file from that sender unlocks itself β€” for the whole team.

πŸ”’ Personal Passwords πŸ—‚οΈ Shared Passwords β€” for families & teams
Who it's for Just you A household or small team
Where it lives Your own device, local only Point it at a shared or synced folder (e.g. a family NAS, OneDrive, or Google Drive folder)
What you get Your own statements, bills, and personal documents unlock themselves Set a password once β€” e.g. the electricity board's β€” and everyone's copy of CK PDF Unlocker auto-fills it
Managing entries Filter, edit, or delete anytime Same, plus move/copy entries to or from Personal with one click
Security Encrypted at rest, visible only to you Still encrypted at rest β€” only people with access to that shared folder can read it
Conflicts β€” If the same Owner/Sender exists in both vaults, the most recently updated entry wins automatically β€” no dialog, no interruption

Switch between them from the Personal Passwords / Shared Passwords tabs at the top of the window. Each vault lists every saved entry with its Owner, Sender, Password, Last Modified (UTC), and Modified By β€” and you can:

  • + Add an entry manually
  • Move to Shared Passwords / Copy to Shared Passwords β€” promote a personal entry to the shared vault (or vice versa)
  • Delete an entry you no longer need
  • Filter by Owner or Sender, with one click to Clear Filter
  • Show All to reset any active filter
  • Open DB Settings to relocate the database file (e.g. onto a synced/shared drive) or view its path

Safe by design

  • Every password is encrypted at rest (AES via Fernet) inside a local SQLite database β€” never stored in plain text, never uploaded anywhere
  • Both vaults are backed up automatically every day (last 5 backups kept)
  • Auto-fill only ever reuses Owner/Sender pairs and passwords you've personally confirmed β€” nothing is guessed or scraped from the file's contents
  • Import/export either vault to/from Excel (.xlsx) for bulk setup or backup

Demo

β–Ά Watch Demo


Screenshots


Add files β€” Owner, Sender, and Password auto-fill as you type, keyed to the Password Vault

A successful unlock β€” restrictions detected, password saved, output logged

Personal Passwords vault β€” filter, move/copy to Shared, and manage every saved entry

ckpdfunlocker β€” the new CLI, sharing the same Vault as the desktop app

The in-app Help Center (Help β†’ Help Center, or F1)

How to Use

Basic β€” single file

  1. Launch the app
  2. Click + Add Files (or double-click the file list area, or drag and drop)
  3. Select your PDF
  4. If the file has an open password, enter it in the Password column β€” or let auto-fill do it for you
  5. Click Unlock PDF(s) β†’
  6. The unlocked file is saved as yourfile_unlocked.pdf in the same folder

Your original file is not changed. A brand new unlocked copy is created. You can delete it, keep both, or replace the original manually β€” the choice is yours.

Understanding the file table

Column Meaning
Owner Who the document belongs to (auto-filled or typed)
Sender Who issued it, e.g. a bank or utility company (auto-filled or typed)
Password The password to try β€” auto-filled from the Vault when Owner + Sender are recognized
PW Shows whether a password was found/looked up for this row
R Restrictions detected in the original file (e.g. Modify, Copy)
DB Which vault (Personal or Shared) this row's password is looked up from / saved to

Batch β€” multiple files

  1. Add as many PDFs as you like using + Add Files (or drag and drop multiple files)
  2. Enter passwords per file if needed, or use the Common Password for all PDFs field and click Apply to all
  3. Choose an output folder if you want all files saved to one place instead of next to their originals
  4. Click Unlock PDF(s) β†’

If a file named statement_unlocked.pdf already exists at the destination, CK PDF Unlocker won't overwrite it β€” it saves as statement_unlocked-v2.pdf, -v3, and so on.

Files with copy/print restrictions only (no open password)

Leave the password field blank. CK PDF Unlocker will strip the restrictions automatically β€” no password required.


Output File Naming

Original file Unlocked file
statement_jan.pdf statement_jan_unlocked.pdf
ITR_acknowledgement.pdf ITR_acknowledgement_unlocked.pdf
salary_slip_march.pdf salary_slip_march_unlocked.pdf

If you specify a custom output folder (Step 3), unlocked files are saved there instead of next to the originals.


Requirements

Component Details
OS Windows 10 or Windows 11, or Linux (via Snap, Flatpak, or AppImage β€” see Linux install)
Runtime None β€” everything is bundled (the CLI, ckpdfunlocker, is included alongside the GUI on every platform)
qpdf Downloaded automatically if needed on Windows; bundled directly in the Snap/Flatpak/AppImage builds

Privacy & Telemetry

On first launch, CK PDF Unlocker asks if you'd like to share anonymous usage statistics to help improve the tool.

What is sent (if you opt in):

  • App version
  • Operating system name and version
  • Number of files processed per run
  • Success/failure count
  • Processing time

What is never sent β€” ever:

  • Filenames
  • File paths
  • Passwords
  • File contents
  • Any personally identifiable information

You can change your preference at any time via Theme β†’ Settings.


How It Works

CK PDF Unlocker uses two industry-standard open-source PDF libraries:

  1. pikepdf (primary) β€” a Python library built on QPDF that handles most standard PDF encryption schemes
  2. qpdf (fallback) β€” used when pikepdf alone cannot remove a particular encryption layer

Feedback & Suggestions

Found a bug? Have an idea for a new feature? Your feedback is welcome and helps make the tool better.


Frequently Asked Questions

Is this legal? Yes, if you are unlocking PDFs that you own or have a legitimate right to access. Removing restrictions from your own bank statements, utility bills, or tax documents is entirely lawful. Do not use this tool to bypass protections on documents you do not own or are not authorised to access.

Will my original file be changed? No. CK PDF Unlocker never modifies the original file. It always creates a new file ending in _unlocked.pdf.

What if I enter the wrong password? The tool will report a failure for that file in the log. The original file is not affected. Correct the password and try again.

What PDF encryption types are supported? RC4 (40-bit and 128-bit) and AES (128-bit and 256-bit) β€” the full range used by standard PDF producers including banks, government portals, and office software.

Can it unlock PDFs without a password (copy/print restrictions only)? Yes. If a PDF opens freely but has printing or copying disabled, leave the password field blank and click Unlock. The restrictions will be removed.

Does it work on scanned PDFs? Yes β€” the encryption wrapper is removed regardless of whether the PDF contains text or scanned images.

Is my saved password safe? Yes. The Password Vault encrypts every password before it touches disk (AES via Fernet), and nothing is ever sent off your device.

What if Smart Auto-fill picks the wrong Owner or Sender? Just correct it once in the row β€” that correction is exactly what the app learns from, so future files with a similar filename improve.

Does the CLI share the same Vault as the desktop app? Yes β€” both read and write the same Personal/Shared databases, so a password saved in one is instantly available in the other.


πŸ›‘οΈ Security β€” VirusTotal Verification

Release v8.4.0 assets have been independently scanned by VirusTotal. Click a link below to view the live scan results:

Installer VirusTotal Result
.exe (recommended) View scan β†—
.msi (enterprise) View scan β†—

Scans are submitted automatically on each release. Results reflect the file at the GitHub release download URL.


License

CK PDF Unlocker is proprietary, freeware software β€” free to use, including for commercial use, but not open source. Use is governed by an End-User License Agreement (EULA); a copy is provided as LICENSE. Redistribution, modification, and reverse engineering are not permitted β€” see the EULA for full terms.


Acknowledgements

  • pikepdf β€” the core PDF processing library
  • qpdf β€” the underlying C++ PDF engine
  • PostHog β€” open-source product analytics

Built with ❀️ by epatels · epatels.github.io/ck-pdf-unlocker

About

Remove PDF Passwords and Copy/Print restrictions

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors