问题标签 [pades]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3871 浏览

node.js - 使用 node.js 创建签名的 PDF (PAdES)

我在 node.js 中生成 PDF。

我的目标是在继续之前对这些 PDF 进行数字签名,以确保这些文件中的任何操作都是可见的,并获得一些信任,因为用户能够在他的 pdf 应用程序中看到这些证书。

我不想使用其他服务,但找不到能够签署 PDF 的库。有什么提示吗?

0 投票
1 回答
846 浏览

pdf - iText Community 5.4.2 是否支持创建数字签名“PAdES”

“iText”社区版本 5.4.2 是否支持为 PDF 文件创建“PAdES”数字签名标准?

非常感谢您提前向泰国曼谷 Pearapon S. 致以最诚挚的问候

0 投票
1 回答
4048 浏览

pdf - 如何检查“PDF 数字签名”是否为“PAdES”标准?

我们如何检查我们在 PDF 上的数字签名是否符合“PAdES”标准?

最好的问候 Pearapon S。

泰国曼谷

0 投票
1 回答
704 浏览

java - 签名 PADES 顺序或并行

在签名 CAdES 中,可以按顺序或并行创建多个签名。

并行签名:在合同的情况下,当更多人必须签署同一份文件时。每个人都在同一份文件上签名,每个签名都被添加到文件中。

签名顺序:在此人签署整个文件(包括签名)以前从另一个人签署。

我的问题是:在签名 PAdES 中可以创建并行签名吗?对于签名 PAdES,我们使用 itext。

感谢帮助。萨拉

0 投票
0 回答
658 浏览

.net - 使用 iTextSharp 7 和智能卡对 PDF 文档进行 PAdeS 数字签名

我发现了许多关于如何使用 .NET 和 iTextSharp 使用 PAdeS 标准对 PDF 文档进行数字签名的文档/帖子/等,但直到该库的版本 5.x。现在使用 nuGet,建议使用该库的新版本 7,但没有可用的文档或帖子。试图适应 5.x 分支示例让我一无所获。官方文档/教程/示例仍然与旧版本相关联。我尝试使用 Java 示例,但有些类与 .NET 对应项没有直接关系,所以我被卡住了。有人对新版本做了什么吗?

谢谢你。

0 投票
1 回答
3753 浏览

java - 如何使用 iText 添加 PAdES-LTV

我正在尝试在没有 LTV 格式的已签名 PDF 文档中启用 LTV。我在所有情况下都找到了相同的示例,如链接How to enable LTV for a timestamp signature 中所述iText LTV enabled - how to add more CRLs? ,它定义了获得预期结果的过程。碰巧我没有工作,它没有给我任何错误,但我没有添加 LTV。

关于为什么在执行以下代码时没有给我任何错误的一些想法,但我仍然没有添加 LTV。

这是我尝试添加 LTV 的方法:

我正在使用的版本:

  • 正文:5.5.11
  • 爪哇:8
0 投票
1 回答
1528 浏览

pdf - 可以删除或撤销 PDF 文档上的数字签名吗?

我有一个关于 PAdES 的理论问题。我想知道是否可以撤销或删除 PDF 中的签名?

0 投票
1 回答
221 浏览

pdf - iText5.x 在不破坏 Seal 的情况下设置按钮外观

这是上下文:

  1. 我们将两个空页面添加到现有 pdf 中,每个页面都包含一个空按钮字段
  2. 我们在文件上使用具有所有修改权的 PAdES BB 印章
  3. 我们修改一个按钮以在其中插入图像

当我们尝试修改按钮外观以设置图像时,无论我们尝试什么,密封有效性都会因“未经授权的修改”而中断。

这是一个代码示例:

我们还尝试了文档中推荐的方式,但没有成功:

问题是:我不知道 iText 是否支持这种类型的修改,还是我们修改按钮的方式是错误的?

更新

如果认证被简单的签名代替,我们可以设置按钮外观而不破坏它。

0 投票
1 回答
908 浏览

java - 使用 ESIG/DSS 将数字签名添加到带有可见时间戳和原因字段的 PDF

我正在尝试了解和实施基于欧盟委员会赞助的数字签名服务项目的解决方案。在Nowina NexU客户端软件的帮助下,我目前已经成功地使用了前面提到的github链接中提到的DSS-DEMO应用程序提供的抽象。我的愿望是使用以下配置对 PDF 文档进行数字签名:

  • 没有容器
  • PAdES 签名表
  • 笼罩
  • PAdES_BASELINE_LT 签名级别
  • SHA256 摘要算法

我希望签名有一个可见的部分,即在文档的第一页上可以看到。这一点在这里有所体现。就个人而言,我需要实际的签名时间戳和她证书中的签名者姓名。在上面的演示中,这是通过向签名函数提供“参数”来完成的。

我还想填写签名的原因字段 - 随后在您使用 Adob​​e Acrobat Reader 等程序查看签名属性时显示。

到目前为止,我的问题如下,我似乎既找不到示例也找不到有关它们的其他类型的信息。

  1. 如果我想显示我将从时间戳授权服务获得的签名时间戳,我将如何获得它,因为与时间戳服务器的通信是在签名过程中完成的,即在指定上面提到的参数之后。我想我必须深入研究 DSS 代码并自己完成所有步骤。
  2. 目前,发生了一件奇怪的事情。当我指定硬编码的原因(如“testtest”)或根本没有原因时,签名似乎被认为是有效的,或者至少是未知的。当我从其他结果中填写它时,签名无效。因为这样的事情通常不会靠魔法发生,所以我一定是做错了什么。

代码大致是这样组织的——两台机器之间有一个 REST 通信——一个服务器和一个安装了 NexU 的客户端。NexU 与客户端计算机上的智能卡或任何其他证书存储进行所有通信 - 它与服务器交换摘要值和签名摘要值。服务器代码中有两个特定阶段:

  • getDataToSign - 这里是根据 PDF 内容计算摘要
  • signDocument - 这里是实际的签名 - (将签名嵌入到文档中,我猜?)发生。

我为这两个阶段提供了许多参数,其中包括指定签名时间戳、原因以及我希望出现在第一页上的文本的视觉参数。我在两个阶段使用相同的参数来执行此操作(因为我不确定应该在哪个阶段给出哪个)

我的签名日期 - 尽可能接近时间戳权威服务器的时间戳不是合乎逻辑的吗?好的 - 我在签名过程开始时将其设置为我自己服务器的当前时间戳。

我正在使用 PAdESSignatureParameters.setReason 设置原因。感谢任何有用的见解 - 谢谢。

0 投票
1 回答
948 浏览

java - 如何使用离线签名和 OCSP 响应创建 PADES

我很难仅从文档和源代码中找出 Esig DSS java 套件。(eu.europa.esig.dss.* 树)

我们连接到瑞典银行 ID 以签署 PDF 和简单的纯文本。响应是带有签名字段和 OCSP 响应的 SOAP XML。

最终目标是将这两个部分组合成一个对象“有效签名”,该对象可以嵌入到 PDF 中(使用 DSS 和 PDFbox)。

BankID Soap 字段的内容似乎具有适合 DSS 工具的格式:

签名可以加载

并且可以读取 OCSP 响应

我可以从对象中打印出各种信息,查找嵌入式证书等,因此格式看起来是合法的。

问题:如何从 ExternalResourcesOCSPSource 获取有效的 OCSPToken?

我一直在兜圈子,试图将两者组合成一个 AdvancedSignature(如果这是我可以用来嵌入 PDF 的话)。