function WinHttpAvailable: Boolean;
function PostTimeStampQuery(const TsaUrl: string; const ReqDer: TBytes;
out RespDer: TBytes): Boolean;
FPdfTsaWin 是 FPdfTsa 所使用的 Windows 专用时间戳传输。它使用 WinHttp API 将已编码的 TimeStampReq 以 POST 方式发送到时间戳机构 URL,并收集 TimeStampResp 字节
WinHttpAvailable 报告本机上 WinHttp 绑定是否可解析;PostTimeStampQuery 执行实际的 HTTP 交换,并在传输层失败时返回 False(而非抛出异常),让调用方可以应用自身的重试策略
所有 WinHttp 句柄和函数指针绑定都位于实现节中;接口仅公开可用性检查和 POST 辅助函数
| Function | Description |
|---|---|
WinHttpAvailable | 当 WinHttp 传输绑定可在运行时解析时返回 True |
PostTimeStampQuery | 将 TimeStampReq 以 POST 方式发送到 TSA URL 并返回响应 DER;传输失败时返回 False |
| 常量 | 用途 |
|---|---|
TsaMaxResponseBytes | 时间戳响应的上限为 4 MB;超过上限的响应会被直接放弃而不是持续累积,因此恶意或损坏的权威机构无法耗尽内存。其他平台上的传输实现也执行同样的限制 |
Content-Type: application/timestamp-query 发送,并期望返回 application/timestamp-replyPadesTimestampOverride 注册了其他传输,否则 FPdfTsa 会报告 PadesTsaAvailable = False