[英]pdfBox - Signature validity checkmark not visible in Acrobat reader
我正在使用它作为参考向pdf添加视觉签名-https: //stackoverflow.com/a/27940667/7103795
我能够正确打印细节。 但是,PDF在Acrobat中打开时不会显示绿色的勾号,尽管它写为“已签名且所有签名均有效”。 在签名面板中。
这是我需要的一个例子:
如何确保显示有效性标志?
我正在使用pdfBox版本2.0.1
签名有效性的文档内可视化已在近十年前被弃用。 Adobe Reader仅出于向后兼容的原因而支持它们,但它们从未成为iso pdf规范的一部分。
OP在评论中要求提供相关文档; 这个答案集中于此。
在Adobe Acrobat第6版中,Adobe放弃了使用PDF本身提供的文档内签名有效性可视化来创建PDF的方法,请参见。 数字签名外观第8页:
有效性仍然显示在文档的签名可视化中,但是用于可视化状态的图形现在由Adobe Acrobat本身生成。 仅出于兼容性考虑,使用这些自定义外观继续显示具有其有效外观的旧文档。
在Adobe Acrobat 9版中,Adobe最终放弃了使用文档内签名有效性可视化的功能,请参见。 Adobe Acrobat 9数字签名,更改和改进第10页:
因此,由于Acrobat 9 Adobe仅在签名面板中显示其自己的图标,而不在文档本身中显示,因此需要业务用户通过检查签名面板来评估签名的有效性并相应地生成签名。
仅出于兼容性原因,仍然使用文件区域内的那些自定义外观继续显示具有其有效外观的旧文档。
日期为2008年7月1 日的官方PDF规范ISO 32000-1没有指定PDF可以提供可视化的签名有效性的任何方式。 看一下Adobe共享的ISO 32000-1的副本,再也没有提到这些“层” n1 , n3和n4 。 实际上根本没有提到这样的层,ISO规范要求通常的单一外观流没有变体。
PAdES第6部分(有关“电子签名的视觉表示”的ETSI TS 102 778-6 V1.1.1 )最终需要
合格的签名处理程序不得在页面内容内显示签名验证的结果。
(第6部分-AdES签名验证的直观表示)
因此,通过将这些“图层” n1 , n3和n4添加到PDF的签名中,您可以强制Adobe Reader充当不符合PAdES的签名处理程序,根据您的特定安全环境,该处理程序可能会成为显示停止器。
根据更新的PDF规范ISO 32000-2,甚至禁止在文档中可视化签名的有效性:
PDF处理器不得将签名的验证状态(例如,通过的复选标记或失败的X合并)并入签名字段的外观。
(ISO 32000-2第12.7.5.5节-签名字段)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.