Préflight de profils PAdES adressables par clause
THotPDF.PreflightLoadedPAdES évalue une signature chargée par rapport à un profil PAdES de base ou étendu cumulatif unique et renvoie chaque exigence applicable, y compris les vérifications réussies, avec une provenance de clause de norme et de preuve PDF
Cibles prises en charge
Les cibles de base sont palBaseline_B_B, palBaseline_B_T, palBaseline_B_LT et palBaseline_B_LTA ; les cibles étendues sont palExtended_E_BES, palExtended_E_EPES et palExtended_E_LTV
La valeur générique palLegacy_adbePkcs7 n'est pas un profil PAdES et est rejetée comme cible
Contrat d'évaluation
La surcharge de flux préserve la position source appartenant à l'appelant, tandis que la surcharge de fichier rouvre la source utilisée par LoadFromFile. Un résultat de fonction True signifie que l'évaluation est terminée ; utilisez THPDFPAdESPreflightReport.Compliant pour tester la conformité
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;
Preuves inspectées
Les vérifications de base et étendues inspectent le dictionnaire de signature, la couverture complète /ByteRange, la validité de la signature CMS, la cardinalité des attributs signés, le type de contenu, le condensat de message, les contraintes de temps de signature, /M, /Filter, /SubFilter, /Reason et les entrées /Cert interdites
Les vérifications signing-certificate et signing-certificate-v2 de l'ESS hachent le certificat de signataire réel et exigent une référence ESSCertID correspondante au lieu d'accepter un attribut par son seul nom
Les niveaux supérieurs inspectent en plus les horodatages valides de signature ou de document, les tableaux de certificats et de révocations DSS, la révision qui a introduit le matériel de validation, et si un horodatage de document ultérieur couvre cette révision DSS
Constats structurés
Chaque THPDFPAdESPreflightRequirement rapporte son Profile introductif, son Level normatif, son RuleID stable, sa Clause, son Path PDF, son ObjectNumber, son RevisionIndex, son statut Passed et son Message de diagnostic
FailedRequirementCount compte les règles de niveau « shall » échouées, tandis que WarningCount compte les recommandations de niveau « should » non respectées. HighestConformingProfile identifie le profil cumulatif le plus élevé qui a réussi et n'a de sens que lorsque HasConformingProfile est vrai
Voir validation de la politique de signature PAdES, validation de signatures par lot, et acquisition de preuves de signature