SetSignProcessDocTimeStamp
安全和签名
描述
将签名过程切换为 ETSI EN 319 142-1 v1.2.1 第 5.4.3 条定义的 PAdES Document Time-stamp 模式。生成的签名字典使用 /Type /DocTimeStamp 和 /SubFilter /ETSI.RFC3161,并省略规范禁止用于纯时间戳签名的 /M、/Reason、/Location、/ContactInfo 和 /Name 键
由于 /Contents 中的 TimeStampToken(RFC 3161,由 RFC 5816 更新)由外部时间戳颁发机构提供而非在进程中构建,会自动启用直通。传入 0 作为 SignatureLength 可使用默认 8192 字节 Contents 预留,或指定适合预期 TSA 响应的显式值(典型响应为 2-6 KB DER)
调用 EndSignProcessTo* 后,使用 GetSignProcessByteRange 获取 ByteRange,计算覆盖字节的 SHA-256 消息印记,将其发送给 TSA,然后将返回的 TimeStampToken(十六进制编码并填充至预留的 Contents 大小)修补到输出流中
语法
Delphi
Function TPDFlib.SetSignProcessDocTimeStamp(SignProcessID, SignatureLength: Integer): Integer;
参数
| SignProcessID | 由某个 NewSignProcessFrom* 函数返回的值 |
|---|---|
| SignatureLength | /Contents 中 TimeStampToken 负载的预留大小(字节)。传递 0 以采用默认的 8192 字节 |