我想在我的PDF文档中添加时间戳(没有数字签名).我怎样才能做到这一点?
我可以使用Itext进行数字签名(我这里有TSAClient):
MakeSignature.signDetached(appearance, digest, signature, chain, null, null, tsa, 0, subfilter);
但如果没有数字签名怎么办?使用Bouncy Castle或Itext或Pdfbox ……或与其他图书馆一起使用..
解决方法:
在iText中,您正在寻找
LtvTimestamp.timestamp(appearance, tsa, signatureName);
也参考JavaDoc文档:
/**
* Signs a document with a PAdES-LTV Timestamp. The document is closed at the end.
* @param sap the signature appearance
* @param tsa the timestamp generator
* @param signatureName the signature name or null to have a name generated
* automatically
* @throws DocumentException
* @throws IOException
* @throws GeneralSecurityException
*/
您可能需要阅读第5.4.1节“在Digital Signatures for PDF documents中添加文档安全性存储(DSS)和文档级别时间戳”以供上下文使用.
请注意,旧PDF查看器无法正确识别文档级时间戳,因为它们最近才进入PDF世界,即使用PAdES-4.