我遇到的受密码保护的PDF之一有拖车和加密字典,如下所示:
Trailer Dictionary:
trailer
<<
/Encrypt 64 0 R
/Info 65 0 R
/Root 63 0 R
/Size 66
/ID [xxxxxxxx]>>
Encryption Dictionary:
64 0 obj
<<
/R 3
/P -3904
/O (xxxxxxxxxxxxx)
/Filter /Standard
/Length 128
/V 2
/U (/xxxxxxxxxxxxx) >>
endobj
答案 0 :(得分:0)
在评论中,OP澄清说,没有使用任何软件,他的意思是
任何软件也是我们删除密码的代码。我想要该代码的内部工作,即该软件如何删除密码,它实际上是在内部做什么。
因此,这个问题不是关于手动删除PDF密码保护,而是关于了解如何以编程方式删除PDF密码保护。
通过加密几乎 PDF中的所有字符串和流并添加OP已识别的信息来应用PDF密码。通过解密PDF中以前加密的字符串和流并删除添加的信息,可以删除相应的PDF密码。
详细信息在PDF规范ISO 32000-1的 7.6加密部分进行了解释,并且对于堆栈溢出的答案而言过于广泛。幸运的是,Adobe提供了该规范的免费副本,但只缺少ISO徽标和版权声明here,其中一个人可以研究相关部分以及更多内容。