PDF 密码保护
使用 AES 加密为您的 PDF 文件添加密码保护。设置打开和编辑密码以及精细的权限。
支持 PDF · 最大 100 MB
正在加密 PDF...
✓ PDF 保护成功!
工作原理
- 使用上方的拖放区域上传 PDF 文件。
- 输入打开密码(必需),并可选择输入所有者/编辑密码。
- 选择加密强度:128 位 AES(标准)或 256 位 AES(军用级)。
- 选择允许的权限(打印和复制)。
- 点击"保护 PDF"以应用加密。
- 立即下载受密码保护的 PDF。
为什么要保护 PDF?
密码保护确保只有授权用户才能访问敏感文档。为您的机密 PDF、合同、财务报告和个人数据添加额外的安全层。
密码类型说明
- 打开密码· 打开和查看 PDF 所需。没有此密码,用户无法访问文档。
- 所有者/编辑密码· 控制打印、复制文本和编辑等权限。与打开密码分开设置。
加密级别
- 128 位 AES· 标准加密,广泛兼容,处理迅速。适用于大多数文档。
- 256 位 AES· 军用级加密,最高安全性,处理稍慢。推荐用于敏感文档。
常见问题
什么是 AES 加密?
AES(高级加密标准)是一种对称加密算法,被世界各地的政府、银行和安全软件所使用。128 位 AES 提供强大的安全性;256 位 AES 提供军用级安全性。
我可以从受保护的 PDF 中移除密码吗?
如果您拥有所有者/编辑密码,您可以移除限制。但是,如果您忘记了打开密码,则无法恢复 PDF,这正是真正加密的目的。
我的 PDF 安全吗?
是的。所有处理都在您的浏览器中进行。您的 PDF 从不离开您的设备,也从不发送到服务器。
文件大小限制是多少?
可处理最大 100 MB 的 PDF。处理时间取决于文件大小和加密级别。
如果有人绕过密码会发生什么?
AES 加密保护 PDF 内容本身。解密和查看内容需要密码;没有密码,数据仍然不可读。
「PDF 密码保护」究竟意味着什么
PDF 规范区分了用户界面统称为「为文件设置密码保护」的两种操作:加密内容使文件在没有密码的情况下无法读取,以及限制已经可读的文件能做什么。两者都在同一个加密字典中配置,都使用相同的加密算法,但它们应对不同的威胁模型。
用户密码(也叫打开密码或文档打开密码)是你需要输入才能打开文档的密码。文件的内容流(页面文本、字体、嵌入图像)使用从此密码派生的密钥加密,因此磁盘上的字节是密文,任何 PDF 阅读器都无法在不首先解密的情况下渲染它们。如果你忘记了用户密码,内容就丢失了:没有在线工具可以恢复它,唯一现实的选择是用桌面破解工具进行密码穷举搜索或接受丢失。
所有者密码不同。文档仍然是加密的,但打开操作无需输入任何密码就能成功;任何 PDF 阅读器都可以渲染文件。所有者密码保护的是阅读器被允许执行的操作集,编码在加密字典的 32 位 P 字段中。P 中的位控制打印、复制文本、修改内容、填写表单、为辅助功能提取以及组装页面。本工具设置两者:打开密码(必填)控制谁可以读取文件,所有者密码(可选)控制阅读器一旦打开后被允许做什么。如果你将所有者密码留空,工具会将你的打开密码镜像到所有者槽,这意味着任何能打开文件的人也能对它做任何事;设置不同的所有者密码使限制有意义。
本工具的工作原理
本工具使用 qpdf,这是 Jay Berkenbilt 用 C++ 编写并自 2008 年起维护为开源的结构化 PDF 工具包。qpdf 是 PDF 结构化操作的参考实现:它是 Ghostscript、PDFtk、大多数 Linux 命令行 PDF 实用程序的构建块,也是许多自称为专有技术的云 PDF 服务的底层。qpdf 实现了 PDF 规范中定义的标准安全处理器(Filter /Standard),涵盖从 RC4 40 位(PDF 1.1,1994)到 AES-256 V=5/R=6(PDF 2.0,当前)的所有基于密码的加密方案。
qpdf 通过 Emscripten 编译为 WebAssembly,产生一个约 1.3 MB 的模块,在这个浏览器标签页中运行。模块是延迟加载的,在你第一次点击「保护」时加载,所以仅访问页面没有任何成本。一旦加载,浏览器会缓存它;同一会话中的后续保护和未来的访问都是即时的。当你上传 PDF 时,pdf-lib(一个较小的 JavaScript 库)读取页数和文件大小用于信息显示;pdf-lib 不执行加密,只读取元数据。当你点击「保护」时,qpdf WASM 模块通过内存中的 Emscripten 文件系统接收 PDF 字节,执行等同于命令行 qpdf --encrypt <user-pw> <owner-pw> <bits> --use-aes=y --print=full/none --extract=y/n --modify=none -- in.pdf out.pdf 的操作,并将加密的字节作为 Blob 返回到页面,页面将其包装成下载 URL。
加密过程中不会触发任何网络请求。你可以验证:在点击「保护」之前打开浏览器开发者工具的「网络」选项卡,运行操作,观察除了首次访问时一次性下载 qpdf 模块外,没有任何东西离开你的机器。一个小而有用的细节:qpdf 接受 128 作为加密强度,但默认使用 RC4-128 以向后兼容旧的 PDF 工具。本工具始终为 128 位传递 --use-aes=y,使 UI 标签「128 位 AES」诚实;256 位始终是 AES(RC4 在该密钥长度下未定义),因此那里不需要该标志。
PDF 加密,1994 年到 2026 年,本工具可以写入的算法
- PDF 1.1(1994 年),RC4 40 位,V=1,R=2。 原始规范;40 位密钥由当时的美国出口管制法设定。在 2026 年的商用硬件上可以在几秒内穷尽。本工具不提供 RC4-40,因为 2026 年没有人应该新写它。
- PDF 1.4(2001 年),RC4 128 位,V=2,R=3。 出口限制于 2000 年解除;Adobe 扩展到 128 位。仍然在计算上难以被暴力破解,但 RC4 本身有已知的密钥流偏差,推动了行业转向 AES。本工具也不提供 RC4-128;「128 位 AES」选项始终使用 AES。
- PDF 1.6(2004 年),AES-128 CBC,V=4,R=4。 在 Acrobat 7 中引入。与美国政府用于保护机密信息(直至 Secret 级别)的算法相同。与 Adobe Reader 5.0 及更高版本兼容,包括遗留企业工作流和较旧的移动阅读器。这是本工具的「128 位 AES」选项写入的内容。
- PDF 1.7 Extension Level 3(2008 年),AES-256 第一版,V=5,R=5。 Adobe 在 Acrobat 9 中引入。不到一年,研究人员发现了一个密钥派生漏洞,使其在实践中比 AES-128 更弱。Adobe 发布了修复程序。本工具不写入有缺陷的 R=5 变体。
- PDF 1.7 Extension Level 8(2010 年),AES-256 校正,V=5,R=6。 当前的最新技术。使用 PBKDF2 风格的密钥派生和 SASLprep Unicode 规范化,因此密码在各种输入方法和地区设置中一致工作。这是 Acrobat X 及更高版本以及任何暴露「AES-256 加密」的现代 PDF 工具产生的内容。与 Adobe Reader 9.0 及更高版本兼容。这是本工具的「256 位 AES」选项写入的内容。
- PDF 2.0(2017 年),V=5/R=6 正式化。 ISO 32000-2 采用 V=5/R=6 AES-256 作为推荐算法,并完全弃用 RC4。加密故事在这里稳定下来;后续的 PDF 功能不需要改变加密层。实用建议:如果你不知道受众的阅读器版本,AES 128 位是更安全的兼容性选择;如果你知道他们有现代阅读器(过去十年构建的任何 Acrobat、Apple Preview、Chrome、Edge 或 Firefox),AES 256 位是更安全的安全选择。
权限位实际控制什么
P 字段是一个 32 位整数;每个位在设置时授予一个操作。PDF 规范从 1(最低位)到 32(最高位)编号位,而不是计算中更常见的 0 到 31 约定。实际中的位:第 3 位(打印,第 12 位进一步控制高质量打印)、第 4 位(修改内容,主要是文本编辑)、第 5 位(复制和提取文本或图形)、第 6 位(修改注释:笔记、高亮、印章)、第 9 位(填写 AcroForm 字段)、第 10 位(为辅助功能提取,屏幕阅读器依赖于此)、第 11 位(组装:插入、删除、旋转页面)。本工具暴露最终用户最常控制的两个位:打印(第 3 位,「允许打印」)和复制(第 5 位,「允许复制文本和图形」)。它始终在后台设置 --modify=none,一次清除第 4、6、9 和 11 位,这是一个保守的默认值,表示「文件用于阅读和打印,不用于编辑」。第 10 位(辅助功能)保持开启,以便屏幕阅读器继续工作。
残酷的真相:权限是建议性的。Adobe Acrobat、Adobe Reader 和许多商业阅读器尊重它们,其他阅读器经常忽略它们。Firefox 的内置 PDF.js 查看器有意忽略权限标志;Chrome 的查看器在很大程度上尊重打印限制,但通过右键单击允许你保存未受限的字节;大多数开源阅读器(Okular、Evince、MuPDF、SumatraPDF)在不同程度上尊重位,并有退出设置;在线「PDF 权限删除器」简单地用所有权限设置重写文件,这在没有所有者密码的情况下也能工作,因为加密层是装饰性的。本工具设置权限是因为标准这么说,也因为有原则的阅读器尊重它们。权限防御的威胁模型是「使用 Adobe Acrobat 并遵循文档精神的接收者」。对于真正的预防,打开密码(这是真正的加密)是你的防御;所有者密码是一种礼节。
选择强密码
密码强度在用户密码情况下很重要,因为加密是真实的:对一个良好加密的 PDF 的唯一攻击是穷举搜索密码空间。当前 NIST 指南(SP 800-63B)规定,单因素身份验证密码应至少 15 个字符。理由,得到学术研究和最近泄露数据的充分支持,是长度主导熵:一个 20 个字符的常用词密码短语(「correct horse battery staple」风格)有大约 90 位熵,需要几个世纪才能暴力破解,而一个 8 个字符的混合大小写字母数字(「Tr0ub4dor」)有大约 40 位,在商用 GPU 硬件上几小时内就会被破解。
实用建议:使用 4 到 6 个不相关单词的密码短语,总长度 20+ 个字符。「rotor saxon embargo trout swivel」比「P@ssw0rd2026!」强得多,如果你必须从手机上读取,它也更容易输入。如果你使用密码管理器(1Password、Bitwarden、KeePassXC),在那里生成 20 个字符的随机密码,并将 PDF 和它的密码一起保存;接收者通过带外渠道(单独的电子邮件、电话、经过身份验证的渠道)获取密码,并将其存储在自己的保险库中。避免出现在泄露数据库中的密码。不要重用来自其他服务的密码:PDF 在收件箱和云驱动器中保留的时间比会话 cookie 长得多,2018 年在一个被遗忘的论坛上泄露的密码仍将打开一个 2026 年的 PDF。
驱动 PDF 保护的真实工作流
- 向客户或交易对手发送机密合同。 合同使用通过单独渠道(通常是电话或不同的电子邮件地址)共享的用户密码加密。所有者密码增加了一个限制,即接收者不能从合同中复制文本或为重新分发而打印。这种组合是法律、并购和金融交易文件的标准专业服务工作流。
- 向投资者提供财务报告。 SEC 申报是公开披露和未加密的,但仅供投资者使用的文件(董事会包、季度预览草稿、重大非公开信息)获得通过投资者门户共享的用户密码,以及「请勿重新分发」的页脚。所有者密码防止意外的复制粘贴到其他内部文件。
- HIPAA 或同等法规下的医疗记录。 患者 PDF 使用与患者或请求诊所绑定的用户密码静态加密。所有者密码即使在文件打开时也防止受保护的健康信息的复制提取。这种组合满足大多数医疗保健数据制度的「静态加密」和「最小必要使用」规定。
- 包含商业机密的公司内部文件。 源代码摘录、招聘评分标准、薪资范围。用户密码将文件保留在公司内部;所有者密码将阅读器限制为打印以供审查(或完全阻止打印),以防止文件被拍照和转发。
- 在不可转让许可下的客户交付物。 客户为定制报告付费。用户密码和封面信使重新分发至少成为一种有意的行为;所有者密码的禁用打印位防止通过打印到 PDF 重新导出工作流的意外复制。
- 从遗留加密的档案迁移。 使用 RC4-40 或 RC4-128 加密的遗留 PDF 通过 免费在线 PDF 解锁 解锁,并通过本工具使用 AES-256 V=5/R=6 重新加密。这在不改变内容的情况下提升了保护级别。当组织升级其安全基线并重新审视旧档案时常见。
常见陷阱及其含义
- 「我忘记了密码。」 如果你忘记了用户密码,内容就丢失了。没有不对密码空间运行穷举搜索的恢复服务,而对 15 个字符密码的穷举搜索在 2026 年的任何硬件上都是不可行的。如果你忘记了所有者密码但记得用户密码,你可以打开并重新导出文档(任何 PDF 工具都会这样做,因为打开不需要所有者密码);新导出将没有权限限制。
- 「接收者无法打开文件。」 两个常见原因。首先,接收者有较旧的不支持 AES-256 的 PDF 阅读器,而你用 256 位保护。用 AES 128 位(V=4/R=4)重新保护,自 Acrobat 5(2001)以来的每个 PDF 阅读器都支持。其次,接收者的阅读器在密码中处理非 ASCII 字符有困难,而你使用了非 ASCII 字符;V=5/R=6 中的 SASLprep 在很大程度上修复了这一点,但 V=4/R=4 有较旧的编码怪癖。使用 ASCII 密码以实现最大兼容性。
- 「『允许打印』限制被忽略。」 接收者使用 Firefox、非主流 PDF 阅读器或使用了权限删除工具。权限是建议性的;请参见上面的「权限位实际控制什么」。如果你需要实际阻止打印,唯一的执行是社会性的:保密协议、许可证或接收者对文档分类的理解。
- 「此 PDF 上的数字签名现在无效。」 加密已签名的 PDF 重写文档字节,这根据定义使加密签名无效。如果你打算保留签名,不要加密。如果你打算加密,在签名后,而不是之前。某些签名工作流(PAdES Long-Term Validation)允许签名后加密,但需要特定程序;如果你需要两者,请咨询签名工具的文档。
- 「所有者密码 = 用户密码似乎使限制无用。」 正确。如果所有者密码与用户密码相同,任何阅读器都将用户视为拥有所有者密码(因为他们输入它来打开),权限不会被执行。要使权限有意义,所有者密码必须不同,并且不能与接收者共享。本工具默认在你留空时将用户密码镜像到所有者槽,这对「我只想要求打开密码」的情况方便,但击败了权限限制;当你真正想要限制时,请设置一个独立的所有者密码。
- 「PDF 已加密但仍可在 Google 上搜索。」 如果你将加密的 PDF 上传到公共 Web 服务器,Google 可以索引其存在(URL、文件名)但无法读取其内容。文件在磁盘上是加密的,Google 需要密码才能提取文本。风险是元数据,而不是内容;如果文件名本身泄露敏感信息,请在发布前重命名文件。
仅浏览器与云端保护
每个云端 PDF 保护服务(Smallpdf、ILovePDF、PDF24 web、Adobe Acrobat Online、Sejda)都将 PDF 上传到运营商的服务器,在那里加密,并将加密的副本作为下载返回。隐私影响以三种重要方式不同于普通的文件上传。首先,文件内容在上传时按定义是未加密的(运营商正在加密它,因此运营商拥有明文)。其次,你输入的密码被传输到运营商的基础设施;即使它在传输时被哈希,它也在加密步骤中以明文存在。第三,运营商现在同时拥有明文文件和密码,因此运营商的任何泄露(日志、快照、事件响应、内部人员)都会让攻击者获得明文文件。主要运营商发布的隐私政策承诺传输中使用 TLS、几小时到一天内删除以及(对于较大的运营商)经 ISO/IEC 27001 认证的基础设施,但激励 PDF 加密的威胁模型通常与即使短暂地将明文交给第三方不兼容。
本工具不上传 PDF 或密码。qpdf WASM 模块在浏览器选项卡中运行,通过 File API 接收文件字节,通过标准 HTML 输入接收密码,并将加密的字节作为 Blob 返回到同一选项卡。你可以证明:在点击「保护」之前打开「网络」选项卡的开发者工具,运行操作,观察是否有任何带有文件内容或密码的请求被触发。唯一的网络流量是每会话首次加密时 qpdf 模块的一次性获取。权衡的是功能范围:云服务通常将 OCR、Word/Excel 转换、批量上传或水印叠加与加密一起捆绑。这里浏览器端的加密只做加密。对于 OCR 或格式转换,云服务是正确的选择;对于隐私态势重要的敏感文档,浏览器才是。
更多常见问题
哪些 PDF 阅读器支持 AES 256 位加密?
Adobe Acrobat 和 Adobe Reader 自 9.0 版(2008 年)起,macOS 上的 Apple Preview 自 10.6 版(2009 年)起,Google Chrome 的内置查看器自 2012 年起,Microsoft Edge 的 PDF 查看器自 2015 年起,Firefox 的 PDF.js 自 2018 年起,自 2015 年以来构建的所有主流 iOS 和 Android 阅读器,以及基于 qpdf/Ghostscript/Poppler 的开源阅读器自 2000 年代后期起。无法打开 AES-256 的阅读器只有 2008 年之前的 Acrobat 版本、企业硬件中的一些遗留嵌入式阅读器(ATM 控制台、医疗设备、工业控制)以及在 2015 年之前被放弃的少数模糊的移动阅读器。
我可以加密已经加密的 PDF 吗?
不能直接。工具需要读取 PDF 的结构才能加密它,而已加密的 PDF 阻止读取,直到你提供密码。标准工作流是先用 免费在线 PDF 解锁 解锁 PDF(需要现有密码),然后使用本工具用新密码加密解锁的输出。两步过程是用于「从遗留 RC4 迁移到 AES-256」归档工作流的相同模式。
我应该在签名、展平、压缩之前还是之后加密?
一般顺序是:编辑、展平、签名、加密。签名计算文档字节的加密哈希,因此任何后续修改(包括加密)都会使签名失效。加密重写文档,所以在加密之前展平,否则加密可能会与表单字段结构交互。压缩通常在加密之前进行,因为加密的字节本质上是随机的,之后压缩不佳。完整的安全顺序:展平你想要永久的任何表单字段,压缩以减小大小,如果需要加密来源则签名,最后加密以添加密码保护。
加密相当于密码保护的 ZIP 吗?
在安全边界上实际相似(都依赖于 AES-256),但 PDF 加密与 PDF 阅读器集成(接收者只需打开文件并获得密码提示),而 ZIP 加密要求接收者先提取文件。PDF 加密还支持所有者密码权限层(在尊重它们的阅读器中的打印/复制限制),而 ZIP 没有。对于接收者需要在正常阅读器中读取 PDF 的文件,PDF 加密是更流畅的选择。对于混合内容(多个文件、一个文件夹、非 PDF 附件),ZIP 加密是唯一的选择。
PDF 加密是否足以满足 HIPAA、GDPR、PCI DSS 合规性?
使用强密码的 AES-256 加密满足 HIPAA、GDPR 第 32 条和 PCI DSS 要求 3.5 所要求的「静态加密」技术标准。它是否满足完整的合规制度取决于你其余的数据处理实践:密码如何共享(大多数制度要求带外渠道)、访问如何记录(HIPAA 需要审计追踪),以及密钥轮换如何处理。仅有加密对于合规是必要但不充分的;请咨询你的 DPO 或合规官以获得完整的情况。
有桌面或命令行等效物吗?
qpdf 在每个平台上运行:macOS 上 brew install qpdf,Debian 或 Ubuntu 上 apt install qpdf,Windows 可从 qpdf GitHub 下载二进制文件。AES-256 加密的 CLI 语法是 qpdf --encrypt USER-PW OWNER-PW 256 -- input.pdf output.pdf。相同的库、与本工具相同的隐私态势,有助于通过 shell 循环进行批量处理。Adobe Acrobat Pro 的「文件 > 保护 > 加密」菜单使用 GUI 做相同的事情;对于 PowerShell 或 zsh 中的命令行,qpdf 是最接近的等效物。