Java 如何判断上传到小程序的PDF是否加密?

Java 如何判断上传到小程序的PDF是否加密?,java,pdf,Java,Pdf,我想知道上传到小程序的PDF文档是否加密。作为一个小程序,我不想让整个PDFBox(它可以做到这一点)与我的小程序一起使用,所以我正在寻找一些更小的或直接执行此操作的代码 我正在尝试检查PDFBox的代码,以仅删除必要的代码,但不确定这是否是太多的工作,甚至是否违反了许可证。好的,看起来我更适合寻找PDF文档的格式,而不是任何库: 仅供参考:PDF有一个名为“预告片”的结尾,它是这样的: trailer << /Size 196 /Root 65 0 R /Encrypt 195 0

我想知道上传到小程序的PDF文档是否加密。作为一个小程序,我不想让整个PDFBox(它可以做到这一点)与我的小程序一起使用,所以我正在寻找一些更小的或直接执行此操作的代码


我正在尝试检查PDFBox的代码,以仅删除必要的代码,但不确定这是否是太多的工作,甚至是否违反了许可证。

好的,看起来我更适合寻找PDF文档的格式,而不是任何库:

仅供参考:PDF有一个名为“预告片”的结尾,它是这样的:

trailer
<< /Size 196 /Root 65 0 R /Encrypt 195 0 R /Info 1 0 R /ID [ > <5daebb80fcf4c7d4329e8cf5043af186> <5daebb80fcf4c7d4329e8cf5043af186> ] >>
startxref
300552
%%EOF
拖车
] >>
起始外部参照
300552
%%EOF
如果存在encrypt,则文档是加密的(对此没有参考,但PDFBox就是这样处理的,并且可以对加密和未加密的PDF进行一些测试)

这是一个很好的基本介绍:

有关完整规格,请参见此处


您只需浏览PDF并搜索“/Encrypt”。但是,如果用户密码为空,则仍可查看此类PDF。另请参见此处的注释: