PDF支持哪些不同的密码保护选项?

时间:2017-07-28 14:06:18

标签: pdf pdftk qpdf

// Import HttpClientModule from @angular/common/http in AppModule import {HttpClientModule} from '@angular/common/http'; //in place where you wanted to use `HttpClient` import { HttpClient } from '@angular/common/http'; 我可以看到三个选项:

pdftk

当我打开1$ pdftk input.pdf output protected-userpw.pdf userpw very_secret 2$ pdftk input.pdf output protected-ownerpw.pdf ownerpw very_secret 3$ pdftk input.pdf input_pw very_secret output protected-input.pdf protected-ownerpw.pdf时,我不会要求输入密码。仅protected-input.pdf给出预期结果。 protected-userpw.pdfownerpw做了什么?

我使用input_pw从受保护的文件创建不受保护的文件。现在我想知道这总是有效的。 PDF格式支持哪些密码保护机制?以及qpdf支持的内容。

1 个答案:

答案 0 :(得分:4)

所有者和用户密码含义不同

在PDF文档中,您可以设置安全权限,如

  • 允许打印
  • 允许复制文字
  • 填写表格区域
  • ...

这些实际上只是文档中的标志,如果它遵守它们,则由pdf查看器决定。

如果仅设置所有者密码,则用户密码将自动设置为空。 PDF文件仍在加密(所有流和字符串将以加密形式保存),但可以使用空密码对其进行解密。因此,您可以在没有任何密码输入的情况下打开PDF,但是一旦打开,您就只有权对文档执行某些操作,如安全权限中所指定的那样。 所以也许他不允许打印文件。

设置用户和所有者密码时,打开PDF的人需要在打开期间指定所有者或用户密码。如果他已指定用户密码,则其安全权限取决于pdf中的安全设置。如果他使用了所有者密码,他将获得所有安全权利。

PDF加密 PDF中支持许多不同的加密算法。加密密钥长度为40到128的RC4或AES以及用户定义的算法,这些算法并未包含在pdf规范中。在最近的PDF 1.7规范扩展(扩展级别3)中,还指定了AES 256。在稍后的扩展中,指定了更新,它稍微修改了AES 256并修复了理论安全漏洞。有几个工具仍然存在关于这些最后扩展的问题(但我不了解qpdf)。 这些扩展都可以在今天发布的PDF 2.0的ISO规范中的普通pdf规范中获得。