OpenSSl 证书管理

OpenSSl 证书管理

我正在尝试完成请求/验证可信时间戳的整个过程。我正在使用 TSA 服务器,并且能够创建有效的时间戳请求。我知道它是有效的,因为 tsa 所有者有一个专门用于时间戳请求验证的网页。无论如何,我必须以编程方式执行此过程,因此我使用 openssl 进行验证:

openssl ts -verify -queryfile request.tsq -in result.tsr -CAfile tsaownercert.pem

此命令总是产生:

TS_VERIFY_CERT:certificate verify error:unable to get local issuer certificate

我在本地使用 Mamp 工作,但也在 CentOs 服务器上在线工作,行为是相同的。

  • 命令中涉及的文件是可访问的。
  • tsaownercert.pem这是我从 TSA 所有者那里获得的证书,他们说“这是带有时间戳签名的证书”

也许我必须在系统中安装某种证书才能使用?如何在 Mamp 中执行此操作?如何在服务器中执行此操作?

答案1

来自 OpenSSL 的手册页:

-CA文件trusted_certs.pem

包含一组 PEM 格式的受信任自签名 CA 证书的文件的名称。有关更多详细信息,请参阅 verify(1) 的类似选项。必须指定此选项或 -CApath。(可选)

-不受信任的证书文件.pem

一组额外的不受信任的 PEM 格式证书,在为 TSA 签名证书构建证书链时可能需要这些证书。此文件必须包含 TSA 签名证书和所有中间 CA 证书,除非响应中包含这些证书。(可选)

因此,应该指向自签名的根 CA,而所有从属 CA(包括 TS 签名证书)如果不在原始响应 () 中,则-CAfile应该位于指向的文件中。-untrustedresult.tsr

相关内容