如果您回覆,不胜感激,如果您能以这种方式撰写,使该领域的新手可以理解。
几个问题:
1)
有谁知道itext版本(特别是4.2.0版)是否能够使用来自证书颁发机构的证书添加数字签名?
https://github.com/ymasory/iText-4.2.0
我可能对4.2.0版感兴趣的原因是它是MPL / LGPL。
2)什么是X.509?从我的阅读
“在X.509系统中,证书颁发机构颁发证书,该证书将公钥绑定到X.500传统中的特定专有名称,或绑定到备用名称,例如电子邮件地址或DNS条目。 ]”
http://en.wikipedia.org/wiki/X.509
我是否正确,如果我从认证机构购买证书,将会获得x.509证书吗?那么X.509的意思是它仅仅是CA颁发的证书,而不是我自己制作的证书吗?
3)如果是这种情况,我可以将X.509与itext版本4.2.0一起使用吗?
4)X.509和pdfbox怎么样?
显然,pdfbox具有一个接受X.509的命令行:
https://pdfbox.apache.org/commandline/
谢谢你的时间。
最佳答案
1)是否有人知道itext版本(特别是4.2.0版)是否可以使用来自证书颁发机构的证书添加数字签名?
iText可用于创建集成的PDF签名。证书显然不够用(毕竟证书是公开的),签名过程需要附带的私钥。但是,如果您是某个CA证书的持有者,则通常也可以访问该私钥。
在某些5.X版本之前的iText版本(尽管我确切不知道哪个版本)仅支持旧的集成PDF签名配置文件,而在2008年的当前标准ISO 32000-1中,该配置文件已部分弃用(不建议用于可互操作的签名)。如果正确使用iText 4.2.0,则可以创建适当的基本集成PDF签名。但是,如果您对非基本内容(字段锁定,非基本PDF高级电子签名,文档时间戳,长期验证支持...)感兴趣,则必须重新编程已存在的内容。当前的iText版本。
https://github.com/ymasory/iText-4.2.0
如之前的评论中所述,如果要确保您在谈论实际的iText 4.2.0,则应从iText svn存储库而不是某些第三方存储库中检出匹配的标记。
我可能对4.2.0版感兴趣的原因是它是MPL / LGPL。
正如Bruno在之前的评论中所提到的那样,4.2.0绝不是真正的发行版。它只是最后一次iText源代码状态上的标记,在进行大规模重构之前会产生5.0.0。此外,它是古老的(从最近的十年开始),并且已经宣布其代码可能存在法律问题。
2)什么是X.509? ...
我是否正确,如果我从认证机构购买证书,将会获得x.509证书吗?那么X.509的意思是它仅仅是CA颁发的证书,而不是我自己制作的证书吗?
要引用您链接的文章,
X.509除其他外,还指定了公共密钥证书,证书吊销列表,属性证书和证书路径验证算法的标准格式。
在谈论X.509证书时,人们谈论的是具有X.509中指定的二进制结构的公钥证书。许多安全相关的应用程序都支持此格式
因此,自签名证书(由您自己组成)也应该采用X.509格式,以便可以在任何地方使用。
3)如果是这种情况,我可以将X.509与itext版本4.2.0一起使用吗?
以有限的方式,是的,请参阅上面4.2.0的注释。
4)X.509和pdfbox怎么样?
PDFBox 1.x版本具有非常有限的签名创建和验证支持。当前正在开发的2.0.0版本中有很大的改进,它可以与iText 4.2.0竞争,但仍在开发中,并且可能会进一步改进。