我的公司需要实施一种在官方PDF上加盖电子印章的方法,以确保它们的完整性。我听过我的一些同事说这是用OpenPDF做的,但到目前为止,我在互联网上搜索没有发现任何东西。
仅仅使用OpenPDF就能有效地实现这一点吗?还是其他图书馆存在?在这种情况下,我更喜欢免费图书馆,但如果只有商业选择,我想首先尝试它们,这样我就可以看看我是否能够使用它们,以及我的上级是否愿意承担经济风险。
这是维基百科电子印章的定义:
合格电子印章是符合欧盟第910/2014号条例(eIDAS条例)的电子印章,适用于欧洲内部市场内的电子交易。它允许在很长一段时间内验证文档的签发者。合格的电子印章可视为与法律实体纸面上的印章相同的数字印章。根据eIDAS规定,合格的电子印章必须由合格的电子设备制作,并以电子印章合格证书为基础。
发布于 2019-12-10 10:23:03
印章和签名
首先,在对这一问题的评论中对电子印章和签名进行了一些讨论。
在法律上(在eIDAS的上下文中),它们之间有着严格的区别。不过,从技术上讲,两者通常都是作为数字签名实现的,而在PDF的上下文中则更准确地说是作为PAdES签名实现的;主要区别在于所使用的签名者证书,该证书表明您是否有电子印章或签名。
因此,问题归结为OpenPDF是否支持创建PAdES签名。
OpenPDF和PAdES
OpenPDF是iText的最后一个非AGPL版本的分叉,即非官方版本iText 4.2.0BrunoLowagie在2009-11-27 13:59:39上标记。在那一年,ETSI刚刚发布了PAdES签名的第一个版本,作为一个技术规范(TS),而不是欧洲标准(EN)。
因此,当时的iText库不包含任何显式的PAdES支持,只支持可互操作的ISO32000-1签名类型。不过,它提供了一个选项,即自己创建签名字典,并注入您自己的定制签名容器。因此,通过使用此选项,您可以创建PAdES签名,而且不仅可以使用ISO32000-1兼容性配置文件,还可以创建BES和EPES配置文件。
自那以后,OpenPDF signatures几乎没有变化;因此,仍然没有对PAdES的明确支持,但是接口是开放的,可以注入签名字典和签名容器来创建与简单的PAdES配置文件相匹配的签名(Baseline、Baseline、EPES、EPES)。
因此,关于你的问题
仅仅使用OpenPDF就能有效地实现这一点吗?
使用OpenPDF是可能的,但是根据您想要的确切配置文件,您必须添加一些代码来生成相应的签名字典和签名容器。
还是其他图书馆存在?
是。例如
(不过,对于库建议,请使用软件推荐堆栈交换而不是堆栈溢出,严格地说,它们在这里是非主题的。)
https://stackoverflow.com/questions/59191481
复制相似问题