如何给 PDF 加密码——以及 AES-256 何时真正重要
2026年6月29日 · 5 分钟阅读
一个受密码保护的 PDF 不只是一个附加了提示框的文件。PDF 规范定义了应用于文档内部流的真实加密标准,外加一个权限层,控制文件是否可以被打印或复制——即使是知道密码的人。把这做对是一项真正的密码学工程,不是一个复选框。
为什么这需要一个专门的库
本站用于合并、拆分和大多数页面级编辑的库 pdf-lib,刻意不实现加密——那本身就是一项庞大且对安全敏感的工作。这里的「保护 PDF」改用一个小型的专用库(@pdfsmaller/pdf-encrypt),它只做 PDF 加密,构建在你浏览器中已有的 Web Crypto API 之上。「解锁」通过它的对应库 @pdfsmaller/pdf-decrypt 以同样方式反向工作。
「AES-256,在你的浏览器中」到底意味着什么
- 加密本身通过 Web Crypto API 进行——与 WebAuthn 之类所用的相同的、浏览器原生的密码学原语,而非手工实现。
- 你的文件和你选择的密码从不离开你的设备——文件和密码都没有服务器往返,这很重要,因为密码正是你不想经手第三方的那类东西。
- 结果是一个标准的加密 PDF——它会在 Acrobat、预览或任何其他 PDF 阅读器中要求输入密码,而不只是在本站。
加密强度无法弥补的部分
AES-256 是一个强密码,但它保护的是文件,不是你对密码的选择。一个用强算法和密码「1234」加密的 PDF 仍然可以被轻而易举地破解——算法从来不是薄弱环节。如果文档确实重要,把你的力气花在一个又长又独特的密码上,而不是纠结背后是哪种加密标准;任何现代实现,包括这个,用的都强到足以让它不成为现实风险。
给 PDF 加一个密码
打开「保护 PDF」