Preflight de perfiles PAdES direccionable por cláusula
THotPDF.PreflightLoadedPAdES evalúa una firma cargada contra un perfil PAdES baseline o extended acumulativo y devuelve cada requisito aplicable, incluidas las verificaciones exitosas, con proveniencia de cláusula de estándares y de evidencia PDF
Targets soportados
Los targets baseline son palBaseline_B_B, palBaseline_B_T, palBaseline_B_LT y palBaseline_B_LTA; los targets extended son palExtended_E_BES, palExtended_E_EPES y palExtended_E_LTV
El valor genérico palLegacy_adbePkcs7 no es un perfil PAdES y se rechaza como target
Contrato de evaluación
La sobrecarga con stream preserva la posición de origen propiedad del llamador, mientras que la sobrecarga con archivo reabre la fuente usada por LoadFromFile. Un resultado True de la función significa que la evaluación se completó; use THPDFPAdESPreflightReport.Compliant para probar la conformidad
var
Report: THPDFPAdESPreflightReport;
Requirement: THPDFPAdESPreflightRequirement;
begin
PDF.LoadFromFile('Signed.pdf');
if not PDF.PreflightLoadedPAdES(0, palBaseline_B_LT, Report) then
raise Exception.Create(string(Report.Issue));
for Requirement in Report.Requirements do
WriteLn(string(Requirement.RuleID), ': ',
BoolToStr(Requirement.Passed, True), ' at ',
string(Requirement.Clause), ' object ',
Requirement.ObjectNumber, ' revision ',
Requirement.RevisionIndex);
end;
Evidencia inspeccionada
Las verificaciones baseline y extended inspeccionan el diccionario de firma, la cobertura completa de /ByteRange, la validez de la firma CMS, la cardinalidad de atributos firmados, el content type, el message digest, las restricciones de signing-time, /M, /Filter, /SubFilter, /Reason y las entradas /Cert prohibidas
Las verificaciones ESS signing-certificate y signing-certificate-v2 hacen hashing del certificado real del firmante y exigen una referencia ESSCertID coincidente, en lugar de aceptar un atributo solo por nombre
Los niveles superiores adicionalmente inspeccionan timestamps válidos de firma o de documento, los arreglos de certificados y revocación del DSS, la revisión que introdujo el material de validación y si un timestamp de documento posterior cubre esa revisión del DSS
Hallazgos estructurados
Cada THPDFPAdESPreflightRequirement reporta su Profile de introducción, el Level normativo, el RuleID estable, la Clause, el Path del PDF, ObjectNumber, RevisionIndex, el status Passed y el Message de diagnóstico
FailedRequirementCount cuenta las reglas de nivel shall fallidas, mientras que WarningCount cuenta la guía de nivel should fallida. HighestConformingProfile identifica el perfil acumulativo más alto que pasó y solo tiene sentido cuando HasConformingProfile es true
Consulte la validación de política de firma PAdES, la validación de firmas en lote y la adquisición de evidencia de firmas