Restricciones de seed de firmas headless

SignToFile y SignPFXToFile resuelven el diccionario SV del campo de firma a través de su cadena de padres y validan los valores de seed requeridos antes de publicar la salida firmada

El perfil de firma respeta el manejo requerido de Adobe.PPKLite, la codificación adbe.pkcs7.detached o ETSI.CAdES.detached, las versiones de capability de seeds 1 a 3, la selección SHA256/SHA384/SHA512, las razones de firma, los valores MDP de aprobación frente a certificación y los timestamps RFC 3161 autenticados

Establece THPDFHeadlessCMSOptions.DigestMethod y Reason para seleccionar el digest CMS real correspondiente y la entrada Reason de la firma; una lista requerida de razones de un solo período suprime la entrada Reason

Un valor requerido LockDocument true escribe una transformación FieldMDP All efectiva; un valor false requerido rechaza un lock de todos los campos en conflicto

Las restricciones de seed LegalAttestation se aplican a las firmas de certificación; LegalAttestation selecciona una clarificación Unicode permitida para el diccionario estándar Catalog Legal/Attestation, preservando los detalles existentes de contenido legal

Las firmas de aprobación ignoran las restricciones de seed LegalAttestation exclusivas de certificación; suministrar una clarificación legal con una solicitud de aprobación se rechaza

Restricciones de certificados

HPDFReadHeadlessCertificatePolicy lee el modelo SVCert, y HPDFValidateHeadlessCertificatePolicy lo evalúa contra el certificado leaf real y los certificados intermedios PEM

RestricciónComportamiento requerido
SubjectEl leaf coincide con un certificado DER completo
IssuerUna cadena directa o indirecta criptográficamente válida y actualmente válida alcanza un issuer permitido; un intermedio permitido puede terminar la cadena
OIDCada OID de política configurado ocurre en la extensión de políticas del certificado leaf; esta restricción aplica cuando Issuer se suministra
SubjectDNUna alternativa contiene atributos que coinciden con el subject del leaf; se permiten atributos adicionales del leaf, con comparación canónica X.509 y soporte Unicode
KeyUsageUna extensión existente coincide con un patrón aceptable de nueve posiciones; 0 exige un bit sin activar, 1 exige un bit activado, y los demás caracteres o los faltantes son comodines
URLCredentialSourceURL es igual a la URL de enrollment configurada cuando se requiere

El matching de restricciones de certificados usa los issuers del seed como restricciones explícitas de enrollment; el trust ordinario de negocio CMS sigue controlado por separado por TrustedCAFile

CredentialSourceURL es la procedencia suministrada por la aplicación que obtuvo la identidad de firma; la librería no realiza solicitudes de red de enrollment y no puede derivar esa procedencia de los bytes X.509

TimestampServerURL identifica el endpoint enrutado por Timestamp.Transport; los timestamps requeridos pasan además por una validación real de imprint, nonce, certificado del TSA y trust

Límites

Un AddRevInfo requerido true exige UseAdobeRevocationInfo con evidencia autenticada y un archivo explícito de CA de confianza; un false requerido rechaza ese perfil, y los valores opcionales no sobrescriben el perfil seleccionado

El atributo Adobe contiene CRLs y valores BasicOCSPResponse como atributos firmados; todas las cadenas del signer y del TSA incluido deben tener cobertura de revocación autenticada actualmente válida antes de la publicación de la salida

Un AppearanceFilter requerido no vacío debe coincidir con el perfil integrado realmente seleccionado por SetSignatureFieldAppearance en la instancia actual del documento; los metadatos de perfil desconocidos, reemplazados o meramente recargados no satisfacen la restricción

Los diccionarios malformados, las claves semánticas duplicadas, el DER o PEM malformado, los flags reservados de certificados, las restricciones fuera de presupuesto y la cancelación producen fallos sin reemplazar una salida existente

Las opciones independientes de política de certificados acotan los bytes totales de certificados, los bytes agregados de restricciones, las entradas y los certificados de cadena; el resultado separa los flags provided y matched de Accepted