时间戳服务器 API(signtool 使用的)

问题描述 投票:0回答:2

(代码签名)时间戳服务器期望的输入是什么?回复是什么格式?

我搜索了 VeriSign 的网站(以及更多网站),但除了使用 signtool 等工具的说明外,什么也没找到。我想要的是能够从头开始创建类似 signtool 的东西。

visual-studio security digital-signature signtool
2个回答
0
投票

要从头开始创建 signtool,请从 osslsigncode source 开始,因为它的作用大致相同。

对于 RFC 3161 时间戳服务器(由 signtool 支持),请求和响应格式公开记录并由 Openssl 支持。如果您使用 Wireshark 检查由 signtool 发送到时间戳服务器的网络数据包,您会发现它们与 openssl ts 输出非常相似。


0
投票

有两种时间戳协议:

  • a Microsoft 特定的,客户端 POST 以下 base64 编码的 ASN.1 结构并接收 PKCS#7 SignedData 对象:

    TimeStampRequest ::= SEQUENCE {
      countersignatureType OBJECT IDENTIFIER, // 1.3.6.1.4.1.311.3.2.1
      attributes Attributes OPTIONAL, 
      content  ContentInfo
    }
    
  • RFC 3161 协议

这两种协议都由开源的Jsign支持,所以你可以看到它是如何实现的。

© www.soinside.com 2019 - 2024. All rights reserved.