PDFium Delphi Component Docs

Unidad FPdfTsaPosix

Unidad: FPdfTsaPosix
Transporte HTTP nativo de Delphi POSIX para solicitudes de sello de tiempo RFC 3161

Sintaxis

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

Descripción

FPdfTsa selecciona este transporte para Delphi en plataformas POSIX; la implementación usa System.Net.HttpClient para enviar un POST HTTP o HTTPS real con Content-Type: application/timestamp-query y Accept: application/timestamp-reply

La fachada delega en FPdfTsaWin en Windows y en FPdfTsaFpc para Free Pascal nativo; esas ramas evitan que los paquetes Delphi antiguos de Windows dependan de la implementación HTTP POSIX

La disponibilidad del transporte describe el backend HTTP seleccionado; no demuestra que la TSA sea accesible, que el certificado del firmante sea confiable ni que el sello de tiempo sea válido

Funciones

FunciónDescripción
TsaHttpAvailableIndica si está disponible el transporte HTTP seleccionado para la plataforma
TsaHttpBackendNameDevuelve System.Net.HttpClient en Delphi POSIX, o el nombre informado por el transporte delegado de Windows o Free Pascal
PostTimeStampQueryEnvía la consulta DER del llamador a TsaUrl, acepta una respuesta 2xx no vacía dentro de los límites y devuelve sus bytes en RespDer; si la solicitud falla, vacía la salida y devuelve False

Límites y verificación

El transporte Delphi limita los cuerpos de solicitud y respuesta a 4 MiB y las URL a 8192 unidades de código de cadena; solo acepta URL HTTP y HTTPS, y deshabilita las redirecciones

Los tiempos de espera de conexión, envío y respuesta son de 30000 milisegundos; un worker de plazo solicita cancelar la petición HTTP nativa al superar el presupuesto total de 30000 milisegundos; las escrituras limitadas del flujo de respuesta y la comprobación de la respuesta completa también rechazan excesos de tiempo; la implementación HTTP del sistema operativo determina cuánto tarda en hacerse efectiva la cancelación nativa

HTTPS mantiene las comprobaciones de certificado y nombre de host de la plataforma; un POST exitoso solo confirma el transporte: FPdfTsa aún analiza la respuesta RFC 3161, comprueba la huella y el nonce solicitados y extrae el token; la validación de confianza PAdES verifica por separado la firma CMS del token original, la cadena de certificados, la evidencia de revocación y la función del sello de tiempo

Una respuesta 2xx puede contener un rechazo DER de la TSA, que el analizador de respuesta de nivel superior informa como solicitud de sello de tiempo fallida

Ver también

FPdfTsa, FPdfTsaFpc, FPdfTsaWin, TPdf.ValidatePadesTrust