我正在使用iText 5.5.9和数字签名白皮书示例中给出的示例C2_01_SignHelloWorld.java
为PDF生成数字签名。
我得到了普通的数字签名外观。我需要的是一个数字签名,它显示一个图标,指示它的验证状态,就像这个例子中的黄色问号:
这个黄色问号会根据签名是否被验证而变成红色十字或绿色刻度。
在过去的两天里,我一直在搜索这篇文章,我看到的唯一区别是,我使用的数字证书是自签名的,而参考PDF中使用的数字证书是由Adobe Approved Trust List中的供应商颁发的。但在我购买之前,我想知道我是否错过了一些明显的东西。
要显示此类图标,请在PdfSignatureAppearance对象中设置两个附加属性。
跟随签名。java
示例,请参见《iText in Action》一书第12章,并根据此片段进行修改。
// appearance
PdfSignatureAppearance appearance = stamper.getSignatureAppearance();
// insert the next two lines
appearance.setAcro6Layers(false);
appearance.setLayer4Text(PdfSignatureAppearance.questionMark);
如果您使用的是iTextSharp
,则这些是属性,因此您必须执行以下操作:
appearance.Acro6Layers = false;
appearance.Layer4Text = PdfSignatureAppearance.questionMark;
我以编程方式签名PDF。每个新签名都是以增量方式添加的,我在%EOF之后添加签名字典,并像这样更新AcroForm(对不起,我在工作,所以我不能上传PDF): 也许问题是我有多个具有相同ID的对象,而我的最后一个AcroForm只引用了最后一个签名?我想能够签署一个文件多次,但我有一个问题。第一次签名没有问题,并显示以下横幅: 然后我尝试用另一个证书再次对同一个文件进行签名,这给了我签名旁边的垃圾
PDF下载示例:https://drive.google.com/file/d/12wv1Pb7gh4vCKOGhX4cZ3aOrLSiOo4If/view?usp=sharing 因此,当PDF在A.Reader(连续版本)中打开时,它表示证书无效,因为对该文档所做的更改导致签名无效。 但我看不出有什么变化。我们自己的应用程序只添加了一个签名(证书),为数千个其他PDF添加了正确的签名。未执行其
作为我对客户机/服务器pdf签名研究的一部分,我测试了itext pdf延迟签名示例。不幸的是,我得到的合并空签名pdf和哈希值的pdf ie输出显示无效签名。 下面是我的代码片段 我正在使用pkcss11 usb令牌进行签名
当我使用带电子令牌的IText对PDF进行签名时,签名的PDF在Acrobat Adobe Reader中显示“至少一个签名无效”。我正在使用有效的电子代币。以下是签署Pdf的代码。
印度的《公司法》有一些变化。其中值得注意的是,有一项规定,如果公司进行了数字签名,则可以以电子形式维护其登记册。以下几点让我感到困惑: > 记录一旦以数字方式标注日期和签名,不得编辑或更改; 记录应能够根据法案的规定或根据法案制定的规则进行更新,更新日期应能够记录在每次更新中。 想象一下,我们正在对PDF中的表进行数字签名。如果表中最初有2行,并且用户对pdf进行数字签名。现在,我们在pdf中再添
我对iTextSharp有意见。我有一个带有表单字段的文档,并且我已经为签名生成了字段。当第一个人在文件上签字时,它就会正常工作。Adobe Reader显示有效签名。当我让第二个人在文档上签名时,Adobe Reader显示签名1现在是“未知签名”,签名无效。Adobe reader显示: 此签名中包含的格式或信息有错误(支持信息:SigDict/Contents非法数据)