0

adobe阅读器显示pdf签名状态,有效和无效。

我希望读者显示签名中包含的动态(非静态)时间戳状态。

我使用的itext代码如下。

PdfReader reader = new PdfReader(IN_FILE);
FileOutputStream fout = new FileOutputStream(OUT_FILE);
PdfStamper stp = PdfStamper.createSignature(reader, fout, '\0');
PdfSignatureAppearance sap = stp.getSignatureAppearance();

sap.setCrypto(null, chain, null, PdfSignatureAppearance.SELF_SIGNED);

sap.setVisibleSignature(new Rectangle(100, 100, 300, 200), 1, "Signature");

PdfSignature dic = new PdfSignature(PdfName.ADOBE_PPKLITE, new PdfName("adbe.pkcs7.detached"));
dic.setReason(sap.getReason());
dic.setLocation(sap.getLocation());
dic.setContact(sap.getContact());
dic.setDate(new PdfDate(sap.getSignDate()));
sap.setCryptoDictionary(dic);

int contentEstimated = 15000;
HashMap exc = new HashMap();
exc.put(PdfName.CONTENTS, new Integer(contentEstimated * 2 + 2));
sap.preClose(exc);

PDFTemplate sigLayer = PdfSignatureAppearance.getLayer(n);

负责签名外观。但我无法包含动态时间戳状态。

4

1 回答 1

0

当创建文档的签名外观时,将在签名的 pdf 上计算要签名的时间戳哈希值。

修改pdf添加ts信息会使签名失效...

于 2013-01-16T13:58:59.483 回答