问题标签 [trusted-timestamp]

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 回答
322 浏览

json - 有没有办法使用 JSON 格式执行数字签名?与 XadES 类似,但更简单

我正在签署文件并使用 XadES-T 格式添加时间戳印章。我认为 JSON 格式会简化签名和验证过程,有没有办法签署文档并在 JSON 中添加时间戳印章?

0 投票
1 回答
742 浏览

digital-signature - Signtool.exe /dg /ds /di 选项和时间戳

我们正在使用 signtool.exe 摘要选项优化数字签名过程。到目前为止,工作流程如下所示:

  1. 在客户端上创建摘要:signtool.exe sign /f cert /fd sha256 /dg 。我的文件.dll
  2. MyFile.dll.dig摘要发送到我们的签名服务器。
  3. 签名服务器上的签名摘要:signtool.exe sign /f cert /fd sha256 /ds MyFile.dll.dig
  4. 将签名MyFile.dll.dig.signed发送回客户端。
  5. 在客户端创建签名:signtool.exe sign /di .MyFile.dll
  6. 在客户端添加时间戳:signtool.exe timestamp /tr http://some_timestamp_server /td sha256 MyFile.dll

有没有办法在签名服务器上执行时间戳?

0 投票
1 回答
714 浏览

c# - 来自时间戳服务器的签名 pdf 缺少时间戳

我尝试使用外部网络服务对 pdf 进行数字签名。此 Web 服务包含用户证书,用户可以使用其凭据和一次性密码生成代码访问该证书。

旁注:Web 服务应该期待 pdf 摘要(散列),但奇怪的是它接受了整个文件。

无论如何,实现如下:

pdf 已成功签名,但使用 Adob​​e Reader 并检查签名字段似乎缺少受信任的时间戳,如图所示:

无时间戳的数字签名

来自远程服务的响应似乎是一个签名对象,我只需将其嵌入到 PDF 文件中。

我的问题是:由于我收到的签名不包含来自时间戳服务器的时间戳,我是否可以在此时嵌入这样的时间戳,或者远程 Web 服务是否应该在将签名发送给我之前添加它?

谢谢!

0 投票
1 回答
28 浏览

trusted-timestamp - 可以将粗略时间用作时间戳权限吗?

roughtime协议现在提供了一个安全的时间戳。它可以用作时间戳权威,签署文件并在以后证明它在某个时间之前存在吗?

0 投票
1 回答
51 浏览

ssl - HTTP 上的时间戳签名是否容易受到攻击?

我正在使用 signtool 签署我的 Windows 二进制文件并使用 Digicert 的时间戳服务器http://timestamp.digicert.com

我注意到大多数时间戳服务器都托管在 HTTP 上。不比HTTPS安全吗?

时间戳响应是否已签名,signtool 是否验证响应未被篡改?

0 投票
0 回答
632 浏览

ssl - 如何验证文件的 SSL 时间戳

我想获得记录照片时间的外部证据。我正在考虑为此使用 ssl 时间戳和公共时间戳权威。它不能确切地证明照片是什么时候拍摄的,但可以证明照片在创建 TSA 签名的时间点存在,这足以满足我的需要。

我找到了 [本指南] ( https://www.freetsa.org/index_en.php )。说我想要时间戳的文件是image.png

  1. 生成文件的哈希。

openssl ts -query -data image.png -no_nonce -sha512 -out image.tsq

  1. 从 freetsa.org 获取签名的时间戳,例如:

curl -H "Content-Type: application/timestamp-query" --data-binary '@image.tsq' https://freetsa.org/tsr > image.tsr

然后我可以验证image.tsr(两者都是从 freetsa.org 下载的):cacert.pemtsa.crt

openssl ts -verify -in image.tsr -queryfile image.tsq -CAfile cacert.pem -untrusted tsa.crt

当我想验证图像文件本身时,问题就来了,但失败了:

openssl ts -verify -in image.tsr -data image.png -CAfile cacert.pem

我是签名和时间戳过程的新手,想了解我在这里做错了什么。

0 投票
0 回答
772 浏览

timestamp - 使用 PDFBox 为 PDF 签名添加时间戳时包括时间戳权限

我正在尝试使用 PDFBox 1.8.9 在 PDF 文档上的签名中添加时间戳。我收到错误消息说无法验证时间戳,当我尝试检查时间戳颁发机构的证书时,它显示为“不可用”

这是我在实现 SignatureInterface 的类中的方法签名,它调用方法 SignTimeStamps

SignTimeStamps 方法为每个 SignerInfo 调用方法 SignTimeStamp

然后我们从 SignerInfo 中获取签名,这是我们的 TimeStampToken 的消息印记,如 RFC 3161 的附录 A 中所述

所以我不确定我做错了什么,我该怎么做才能验证时间戳并且时间戳权限显示为可用?


编辑 这是我签署的 PDF 文件的链接https://www.dropbox.com/s/al3h8lorqisi34q/dummy_signed.pdf?dl=1。TSA 是免费的 TSA ( http://time.certum.pl/ )


编辑 2

这是我的 TSAClientBouncyCastle.cs 文件


编辑最终(解决方案)

感谢大家帮助我,正如 Tilman Hausherr 指出的那样,我根本没有对签名进行哈希处理。我换了

在我的 SignTimeStamp 方法中

我现在可以看到时间戳权限。再次非常感谢您!

0 投票
0 回答
234 浏览

pdf-generation - 如何在 Adob​​e 的 RevInfoArchival 属性中包含 PDF 签名的嵌入式时间戳授权链撤销信息以用于 LTV 目的?

我正在尝试使用 Apache 的 PDFBox Detached Signature 和用于加密签名本身的 BouncyCastle API 创建启用 LTV 的 PDF 签名。

到目前为止,我能够按照以下步骤使 Adob​​e Reader 显示“Signature is LTV enabled”消息:

  1. 检索签名证书的完整链和时间戳授权证书的完整链(用于在步骤 #4 中添加签名的时间戳)的撤销信息(CRL 和 OCSP 响应,当然根证书除外)

  2. 包括在步骤 #1 中检索到的撤销信息作为签名属性,以 Adob​​e OID“1.2.840.113583”格式计算:

  3. 执行签名

  4. 在第 3 步生成的签名中嵌入一个合格的时间戳

前面步骤的输出在 Adob​​e Reader 中为我提供了“LTV 已启用”状态:

Adobe LTV

当我检查 Adob​​e Reader 用于验证证书链有效性的数据时,它会显示预期的“所选证书被认为是有效的,因为它没有被撤销,因为它使用嵌入在签名中的在线证书状态协议 (OCSP) 响应进行了验证。 "

签名证书链吊销位置

但是,当我对时间戳权威的证书链执行相同的检查时,它会显示“所选证书被认为是有效的,因为它没有被撤销,因为它没有被撤销,因为它使用在线获得的在线证书状态协议 (OCSP) 进行了实时验证。”

时间戳证书链吊销位置

签名者的链嵌入式 CRL/OCSP 被成功使用,但嵌入式 TSA 的链 CRL/OCSP 没有成功使用。

这就引出了一些需要回答的问题:

  • 为什么不使用 TSA 嵌入式 CRL/OCSP?
  • 我必须将它们放在其他地方吗?如果有,在哪里?
  • 或者我是否必须要求时间戳授权将 CRL 和/或 OCSP 响应作为时间戳令牌中的签名属性返回?
0 投票
0 回答
28 浏览

trusted-timestamp - 免费时间戳服务器与付费时间戳服务器

我不知道免费时间戳服务器和付费时间戳服务器有什么区别。你能给我推荐付费时间戳服务器吗?

0 投票
0 回答
81 浏览

node.js - NodeJS中带有时间戳的数字签名

我需要使用时间戳服务器(如https://freetsa.org/tsr )验证带有时间戳的 PDF 文件的数字签名。在 Nodejs 或 Nestjs 中是否有任何用于此功能的库?