const TsaMaxResponseBytes= 4* 1024* 1024;
function WinHttpAvailable: Boolean;
function PostTimeStampQuery(const TsaUrl: string; const ReqDer: TBytes;
out RespDer: TBytes): Boolean;
FPdfTsaWin est le transport d’horodatage spécifique à Windows utilisé par FPdfTsa. Il utilise l’API WinHttp pour publier un TimeStampReq encodé vers une URL d’autorité d’horodatage et collecter les octets TimeStampResp
WinHttpAvailable indique si les liaisons WinHttp se résolvent sur cette machine ; PostTimeStampQuery effectue l’échange HTTP effectif et renvoie False (au lieu de lever une exception) lorsque la requête échoue au niveau transport, ce qui permet à l’appelant d’appliquer sa propre politique de réessai
Toutes les liaisons de handle et de pointeur de fonction WinHttp se trouvent dans la section d’implémentation ; l’interface n’expose que la vérification de disponibilité et l’assistant de publication
| Function | Description |
|---|---|
WinHttpAvailable | Renvoie True lorsque les liaisons de transport WinHttp peuvent être résolues à l’exécution |
PostTimeStampQuery | Publie un TimeStampReq vers une URL TSA et renvoie le DER de réponse ; renvoie False en cas de défaillance du transport |
| Constant | Purpose |
|---|---|
TsaMaxResponseBytes | Limite supérieure d’une réponse d’horodatage, 4 Mo ; une réponse qui la dépasse est abandonnée plutôt qu’accumulée, afin qu’une autorité hostile ou défaillante ne puisse pas épuiser la mémoire. Les transports des autres plateformes appliquent la même limite |
Content-Type: application/timestamp-query et attend application/timestamp-replyPadesTsaAvailable = False sauf si un autre transport est enregistré via PadesTimestampOverride