🏠 首页 / PDF工具教程
一句话答案:能不能解除,取决于你被哪种密码锁住。权限密码(能打开、打印复制按钮是灰的)连密码都不用知道就能去掉,因为 PDF 规范里它只是一串权限标记,不加密内容;打开密码(双击就弹输入框)必须输入正确密码才能拆掉,忘了基本无解,页面数据是真的被 AES 加密了。
判断只需一秒:文件能不能打开。能打开走支线 A,一条命令无损去除;打不开走支线 B。最容易踩的坑是能无损去除却用了打印另存——书签、链接、表单全丢。
PDF 的「加密」不是开关,是三套不同机制,搞错对象就白费。
| 类型 | 现象 | 内容是否加密 | 能否直接解除 |
|---|---|---|---|
| 权限密码 | 能阅读,但打印/复制按钮是灰的 | 否,只写权限标记 | 能,不需密码 |
| 打开密码 | 双击弹密码框,看不到内容 | 是,AES 加密 | 必须知道密码 |
三步判断:①双击,弹密码框就是打开密码;②看工具栏,打印复制按钮灰掉就是权限密码;③要确切参数用命令:
qpdf --show-encryption 合同.pdf
R = 4
P = -3904
User password =
extractable = no
R 是算法版本:R2/R3 为 RC4,R4 为 AES-128,R5/R6 为 AES-256,这决定忘了密码还能不能救。User password 为空说明没有打开密码。
三种解法按「保留多少原始结构」排序,不是按难易——最容易的代价最大。
qpdf 是开源命令行工具,去权限时只重写加密字典、不动页面对象:书签、目录树、内外链接、表单全部原样保留,体积基本不变。
winget install qpdf
qpdf --decrypt 合同.pdf 合同_已解密.pdf
# 回读确认,看到这行才算干净
qpdf --show-encryption 合同_已解密.pdf
# File is not encrypted
# 批量:当前目录所有 PDF
for f in *.pdf; do qpdf --decrypt "$f" "dec_$f"; done
💡 适用:合同、标书、带书签手册、扫描件。
Edge 或 Chrome 打开 → Ctrl + P → 打印机选「另存为 PDF」→ 保存。新文件不继承原权限标记,因为它是一份重新生成的新 PDF。
代价:①书签和目录全丢;②超链接变死区;③表单变静态图形;④扫描件重新压缩,体积常涨 2~5 倍,印章边缘发虚;⑤属性清空。
💡 适用:一次性、纯文字、无书签无表单的文件。
打开软件 → 选「PDF解密」→ 添加文件 → 选输出目录 → 开始,底层与 A1 相同。验证办法:拿带书签的扫描件去解,书签在、体积没涨=改参数;丢了=打印重画。
🔒 要保住书签、表单、清晰度 → A1 qpdf
⚡ 一次性、文件简单 → A2 打印另存
🖱 文件多、不想开命令行 → A3 图形界面
规则很硬,结论先给:没有正确密码,任何工具都解不开。打开密码不是写标记,而是用密码经几千轮哈希派生密钥,再把页面内容整个 AES 加密。没有密码派生不出密钥,文件主体只是一堆随机字节。「破解软件」只能不断猜,每猜一次跑一遍解密流程——这是数学边界,不是软件差距。
所以目标不是破解,是用你已知的密码把锁拆掉,让文件以后不用再输。
Acrobat:输入密码打开 → 文件 → 属性 → 安全性 → 安全方法选「无安全性」→ 保存。页面对象一个不动,书签、目录、链接、表单全保留。Foxit、WPS 都在「保护/安全」面板里,清空密码字段再保存即可。
qpdf --password=你的密码 --decrypt 加密.pdf 无密码.pdf
qpdf --password='Abc 123!' --decrypt 加密.pdf 无密码.pdf # 有空格用单引号
报 invalid password 不是损坏,是密码不对:大小写打错、全半角混用(中文「(」和英文「(」是两个字符)、首尾空格被忽略。
import pikepdf, pathlib
pwd = "your_password"
for p in pathlib.Path(".").glob("*.pdf"):
try:
with pikepdf.open(p, password=pwd) as pdf:
pdf.save(f"dec_{p.name}")
print("OK ", p.name)
except pikepdf.PasswordError:
print("密码不符", p.name)
安装 pip install pikepdf。它会把密码不符的文件单独列出,不像图形界面那样安静跳过。
本地工具支持多文件、统一密码、指定输出目录,底层同样重写加密字典,书签表单保留。
判断依据就是第 1 节的 R 值。
RC4 密钥只有 40~128 位,40 位版本的密钥空间小到现代显卡几小时能穷举完,多见于早期扫描仪软件和老版 Office 导出的 PDF。
AES-256(R6)把抗暴力破解当成设计目标,密钥派生刻意做几千轮迭代拖慢每次尝试,穷举时间以亿年计。剩下只有「猜」:字典攻击跑常见密码表,掩码攻击按「公司缩写+4 位年份」枚举,命中率取决于密码有多弱。
123456、生日、手机号这类弱口令有效;对 12 位混合密码一样无效。它卖的是字典,不是算法。
① 先穷举自己的习惯:大小写变体、年份前后缀、手机号后六位、姓名拼音+生日。② 找提供方重发:合同、发票对方手上一定有原件。③ 从原始系统重导:电子发票去开票平台重下。
下面每一条都会实际撞上,症状和原因往往对不上号。
把 .pdf 改成 .txt 再改回来,文件一个字节没变,加密字典完好无损。扩展名只是给系统看的标签。
两种可能:新文件干净了,但阅读器把「文档限制」和「加密」混在一起提示;或保存时套用「禁止修改」默认策略,又加一层标记。判断只看 qpdf --show-encryption,输出 File is not encrypted 就是干净的。
Word「另存为 PDF」的选项里有「使用密码加密文档」,勾了它导出的 PDF 天生带权限密码。很多人以为是下载的文件有问题,其实是自己设的。
打印另存的副作用:每页被重新光栅化压缩一次,300dpi 扫描件体积可能从 200KB 涨到 1MB,红章尤其明显。原始扫描件务必用 qpdf。
常见于 AES-256 文件,或文件同时有打开密码和权限密码——工具只处理了其中一层。也有站点对大文件静默失败,界面照样显示「成功」。
第一层,文件和密码一起交出去。解密必须提交密码,等于把保险箱和钥匙一并交给陌生人,即便承诺「处理后删除」你也无法验证。第二层,留存期不透明。站点普遍保留 1~2 小时便于重下载,这段时间文件在对方服务器上完整可读。第三层,传输加密不等于不被留存。HTTPS 只保护链路,落盘后就是明文 PDF,运维和备份都能碰到。
所以划线很清楚:工资表、病历、投标文件、证照扫描件一律本地。真要临时用在线站,先拆掉敏感页,见 PDF怎么拆分页面。A2 的浏览器打印则完全本地。
① 该加密的重新加密。清空密码是为自己方便,发给别人仍要有保护——用 PDF加密 重新上权限锁,只允许打印、禁止复制修改。② 外发加水印。合同、报价单加「仅限某某公司使用」的斜向水印,能降低二次流转意愿,见 PDF怎么加水印。③ 收拾体积和页数。扫描件解密后常偏大,先 PDF压缩;只发几页就 拆分出去。
元圭PDF助手支持PDF解密,输入正确密码一键拆掉保护,书签、表单、清晰度全部保留。完全本地运行,文件和密码都不上传任何服务器,断网也能用。另有加密、合并、拆分、压缩等 12 项功能,官网版 29 元永久买断、每天免费试用 3 次,已上架微软商店。
查看详情 →☕ 如果有帮助到您欢迎微信扫码赞赏支持作者
赞赏纯属自愿,随心意