【问题标题】:digital signature with specific itext version 4.2.0具有特定 itext 版本 4.2.0 的数字签名
【发布时间】:2014-09-16 23:21:37
【问题描述】:

如果您回复,如果您能以该领域的新手可以理解的方式写作,我将不胜感激。

几个问题:

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) 带有 pdfbox 的 X.509 怎么样?

显然,pdfbox 有一个可以接受 X.509 的命令行:

https://pdfbox.apache.org/commandline/

感谢您的宝贵时间。

【问题讨论】:

  • 关于 4.2.0:如果你想确定,你说的是实际的 iText 4.2.0,你应该从 iText svn 存储库中查看匹配的标签,而不是一些第三方存储库.
  • iText 的创建者从未发布过正式的 4.2.0 版本。 MPL/LGPL 下可用的最后一个版本是 2009 年,您也不应该使用它:stackoverflow.com/questions/25696851/…
  • 要使用该版本进行签名,请看这里:cysorz-software-hardware.blogspot.de/2008/11/…

标签: ssl itext pdfbox x509


【解决方案1】:

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 从来都不是真正的版本;它只是在大重构导致 5.0.0 之前最后一个 iText 源代码状态的标签。此外,它很古老(从过去十年开始),并且已宣布其代码可能存在法律问题。

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) 带有 pdfbox 的 X.509 怎么样?

PDFBox 1.x 版的签名创建和验证支持非常有限。它在目前正在开发的 2.0.0 版本中得到了极大的改进,可以与 iText 4.2.0 相媲美,但它仍在进行中,可能会改进更多。

【讨论】:

  • MKL,参考:“...如果您正确使用 iText 4.2.0,您可以创建适当的基本集成 PDF 签名。如果您对非基本内容感兴趣(..Long Term验证支持..),但是,您必须重新编程当前 iText 版本中已经存在的许多内容。”不确定我需要哪个;我只需要使用 CA 证书进行数字签名并证明 pdf 没有被修改。将使用 itext 4.2.0。能够在当前的 acrobat 阅读器正确验证 pdf 的情况下执行此操作吗?您是否与 itext 相关联?有没有新的adobe reader无法验证旧的itext的历史案例?
  • 我只需要使用 CA 证书进行数字签名 - 这很容易 - 并证明 pdf 没有被修改 - 如何这很容易,这取决于您的证明有多深。 Adobe reader 现在是否接受您的签名主要取决于您选择的 CA。如果你不仅对现在的情况感兴趣,而且对未来几年的情况感兴趣,你将不得不研究 LTV 机制。
  • “我所需要的只是用 CA 证书进行数字签名 - 这相当容易 - 并证明 pdf 没有被修改 - 这有多容易取决于你的证明应该有多深。”好吧,只要我看到蓝色横幅是有效的,并且上面写着此证书受信任:a) 签署文件和 b) 证明文件。我不需要任何执行动态内容和特权的东西。只是简单的 A 和 B。这就是我所需要的。告诉我哪些 CA 选择可以接受我的签名。另请说明是否有新的 adobe reader 无法验证旧 itext 的情况?谢谢。
猜你喜欢
  • 1970-01-01
  • 2014-03-26
  • 1970-01-01
  • 2015-08-21
  • 2014-06-21
  • 1970-01-01
  • 1970-01-01
  • 2013-09-12
  • 1970-01-01
相关资源
最近更新 更多