PDFium Delphi Component Docs

FPdfTsaPosix unit

Unit: FPdfTsaPosix
Native Delphi POSIX HTTP-transport voor RFC 3161-timestampverzoeken

Syntax

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

Description

FPdfTsa kiest dit transport voor Delphi op POSIX-platforms. De implementatie gebruikt System.Net.HttpClient om een echte HTTP- of HTTPS-POST te sturen met Content-Type: application/timestamp-query en Accept: application/timestamp-reply

De façade delegeert aan FPdfTsaWin op Windows en aan FPdfTsaFpc voor native Free Pascal. Die vertakkingen houden oudere Windows-Delphi-pakketten vrij van een afhankelijkheid van de POSIX-HTTP-implementatie

Transportbeschikbaarheid beschrijft de geselecteerde HTTP-backend. Hij zegt niets over het bereiken van de TSA, een vertrouwd ondertekenaarscertificaat of de geldigheid van de timestamp

Functions

FunctieBeschrijving
TsaHttpAvailableMeldt of de geselecteerde platform-HTTP-transport beschikbaar is
TsaHttpBackendNameGeeft System.Net.HttpClient terug voor Delphi op POSIX, of de naam die het gedelegeerde Windows- of Free Pascal-transport meldt
PostTimeStampQueryVerstuurt de DER-query van de aanroeper naar TsaUrl, accepteert een niet-lege, begrensde 2xx-respons en geeft diens bytes terug in RespDer; mislukte verzoeken maken de uitvoer leeg en geven False terug

Limits and verification

Het Delphi-transport begrenst verzoek- en responsinstanties op 4 MiB en URL's op 8192 string-code-eenheden. Alleen HTTP- en HTTPS-URL's worden geaccepteerd, en redirects zijn uitgeschakeld

Time-outinstellingen voor verbinding, verzending en respons staan op 30000 milliseconden. Een deadline-worker vraagt annulering van het native HTTP-verzoek aan na het totale budget van 30000 milliseconden; begrensde schrijfbewerkingen naar de responsstream en de controle van de voltooide respons wijzen eveneens overschrijdingen van het budget af. De HTTP-implementatie van het besturingssysteem bepaalt hoe snel het annuleren van het native verzoek doorwerkt

HTTPS behoudt de certificaat- en hostnaamcontroles van het platform. Een geslaagde POST is alleen transportsucces: FPdfTsa parseert de RFC 3161-respons nog steeds, controleert de gevraagde imprint en nonce en extraheert het token. De PAdES-vertrouwensvalidatie verifieert de CMS-handtekening van dat oorspronkelijke token, de certificaatketen, intrekkingsbewijs en timestamprol apart

Een 2xx-respons kan een DER-weigering van de TSA bevatten, die de parser op hoger niveau rapporteert als een mislukte timestampaanvraag

See Also

FPdfTsa, FPdfTsaFpc, FPdfTsaWin, TPdf.ValidatePadesTrust