用于在PDF文件的源代码中解密的工具/命令?

用于在PDF文件的源代码中解密的工具/命令?,pdf,encryption,pdf-generation,jspdf,qpdf,Pdf,Encryption,Pdf Generation,Jspdf,Qpdf,我正在使用qpdf命令查看PDF文件的原始代码(源代码)。具体来说,我使用的是命令: qpdf --qdf original.pdf unpacked.pdf 然而,许多PDF元数据在这个未打包的文件中被加密,并且有许多无法打印的ASCII字符。我对一些实际加密的pdf文件数据感兴趣。假设我有pdf文件的密码(比如pwd=“passwd”),如何获得类似于qpdf命令输出的输出,但数据已被解密 编辑: 链接中附有一个示例文件。请检查第1841-3258行。具体来说,在整个文件中,我无法

我正在使用qpdf命令查看PDF文件的原始代码(源代码)。具体来说,我使用的是命令:

 qpdf  --qdf  original.pdf  unpacked.pdf
然而,许多PDF元数据在这个未打包的文件中被加密,并且有许多无法打印的ASCII字符。我对一些实际加密的pdf文件数据感兴趣。假设我有pdf文件的密码(比如pwd=“passwd”),如何获得类似于qpdf命令输出的输出,但数据已被解密

编辑:

链接中附有一个示例文件。请检查第1841-3258行。具体来说,在整个文件中,我无法找到TransformParams字典,尽管我添加了权限。我相信它可能在这个加密文本中

链接:


正如在对该问题的评论中已经假设的那样,密码根本没有加密

请检查第1841-3258行

第1841-3258行是从第1739行(
OTTO…
)到第3258行的流的一部分,并且包含一个嵌入的OpenType字体,比较前面的流字典

570obj
>
以及引用它的字体描述符:

>
具体来说,在整个文件中,我无法找到TransformParams字典,尽管我添加了权限

嗯,文件的共享版本既没有加密(因此不必应用权限),也没有数字签名(因此特别是没有应用签名转换方法,因此没有TransformParams


也许你搜索的信息已经被qpdf解压的PDF文件删除了,也许他们不在那里开始。因此,您可能应该分析原始文件。或者您可能想更彻底地解释您的期望,可能是其中有错误。

您测试过qpdf的
--decrypt
选项了吗?@mkl我测试过了。不过,它似乎并没有解密任何东西。在这种情况下,那些无法打印的字符可能根本没有加密,而只是以一种让你惊讶的方式进行编码。请分享一个示例文件,并准确地指出一些您认为是加密的数据。@mkl我添加了该文件(编辑了问题)是的,我犯的错误是我认为电子标志和数字标志是同一件事。。。所以这份文件实际上没有数字签名。它适用于带有qpdf的数字签名pdf。谢谢,是的。不过,请注意,电子签名与数字签名之间的这种区别还不是正典(尽管它很常见)。因此,在处理此类签名时,人们通常还必须澄清其确切含义。我在这里有另一个关于pdf的问题:您是否可以看一看(我不确定stack overflow的pdf社区是否足够大,可以记下我的问题)。我将看一看。不过,这只是一个暗示:显然有一些误解需要澄清。
https://www.mediafire.com/file/b7rf383zxdevgmx/unpacked.txt/file