function TsaHttpAvailable: Boolean;
function TsaHttpBackendName: string;
function PostTimeStampQuery(const TsaUrl: string; const ReqDer: TBytes; out RespDer: TBytes): Boolean;
FPdfTsa sceglie questo trasporto per Delphi su piattaforme POSIX. L'implementazione usa System.Net.HttpClient per inviare un vero POST HTTP o HTTPS con Content-Type: application/timestamp-query e Accept: application/timestamp-reply
La facade delega a FPdfTsaWin su Windows e a FPdfTsaFpc con Free Pascal nativo; queste diramazioni evitano di aggiungere ai vecchi pacchetti Windows Delphi una dipendenza dall'implementazione HTTP POSIX
La disponibilità del trasporto descrive il backend HTTP selezionato. Non stabilisce la raggiungibilità della TSA, l'attendibilità del certificato del firmatario o la validità del timestamp
| Funzione | Descrizione |
|---|---|
TsaHttpAvailable | Indica se il trasporto HTTP della piattaforma selezionata è disponibile |
TsaHttpBackendName | Restituisce System.Net.HttpClient per Delphi POSIX o il nome segnalato dal trasporto Windows o Free Pascal delegato |
PostTimeStampQuery | Invia la richiesta DER del chiamante a TsaUrl, accetta una risposta 2xx non vuota entro i limiti e ne restituisce i byte in RespDer; le richieste fallite svuotano l'output e restituiscono False |
Il trasporto Delphi limita i body delle richieste e risposte a 4 MiB e gli URL a 8192 unità di codice di stringa. Accetta solo URL HTTP e HTTPS e disabilita i redirect
I timeout di connessione, invio e risposta sono 30000 millisecondi. Un worker di scadenza richiede l'annullamento della richiesta HTTP nativa al termine del limite complessivo di 30000 millisecondi; anche le scritture limitate dello stream di risposta e il controllo della risposta completa rifiutano tempi oltre soglia. La tempestività dell'annullamento nativo dipende dall'implementazione HTTP del sistema operativo
HTTPS mantiene i controlli della piattaforma su certificato e nome host. Un POST riuscito indica solo il successo del trasporto: FPdfTsa deve ancora analizzare la risposta RFC 3161, controllare imprint e nonce richiesti ed estrarre il token. La verifica di attendibilità PAdES verifica separatamente firma CMS, catena di certificati, prove di revoca e ruolo di timestamp del token originale
Una risposta 2xx può contenere un rifiuto DER della TSA, che il parser di risposta di livello superiore segnala come richiesta di timestamp fallita