PDFium Delphi Component Docs

Unità FPdfTsaPosix

Unità: FPdfTsaPosix
Trasporto HTTP nativo Delphi POSIX per richieste di timestamp RFC 3161

Sintassi

function TsaHttpAvailable: Boolean;
function TsaHttpBackendName: string;
function PostTimeStampQuery(const TsaUrl: string; const ReqDer: TBytes; out RespDer: TBytes): Boolean;

Descrizione

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

Funzioni

FunzioneDescrizione
TsaHttpAvailableIndica se il trasporto HTTP della piattaforma selezionata è disponibile
TsaHttpBackendNameRestituisce System.Net.HttpClient per Delphi POSIX o il nome segnalato dal trasporto Windows o Free Pascal delegato
PostTimeStampQueryInvia 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

Limiti e verifica

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

Vedere anche

FPdfTsa, FPdfTsaFpc, FPdfTsaWin, TPdf.ValidatePadesTrust