Klausuladresserbar PAdES-profilpreflight

THotPDF.PreflightLoadedPAdES utvärderar en inläst signatur mot en kumulativ PAdES-baslinje eller utökad profil och returnerar varje tillämpligt krav, inklusive lyckade kontroller, med ursprung i standardklausuler och PDF-bevis

Fristående mål

Baslinjemål är palBaseline_B_B, palBaseline_B_T, palBaseline_B_LT och palBaseline_B_LTA, utökade mål är palExtended_E_BES, palExtended_E_EPES och palExtended_E_LTV

Det generiska palLegacy_adbePkcs7-värdet är inte en PAdES-profil och avvisas som ett mål

Utvärderingskontrakt

Strömöverlagringen bevarar den anropsägda källpositionen, medan filöverlagringen återöppnar den källa som användes av LoadFromFile. Ett True-funktionsresultat betyder att utvärderingen slutfördes, använd THPDFPAdESPreflightReport.Compliant för att testa överensstämmelse

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;

Granskade bevis

Baslinje- och utökadekontroller granskar signaturordlistan, fullständigt /ByteRange-täckning, CMS-signaturgiltighet, kardinalitet för signerade attribut, innehållstyp, meddelandesammandrag, tidsbegränsningar för signering, /M, /Filter, /SubFilter, /Reason och förbjudna /Cert-poster

ESS-signing-certificate- och signing-certificate-v2-kontroller hashar det faktiska signerarcertifikatet och kräver en matchande ESSCertID-referens istället för att acceptera ett attribut enbart efter namn

Högre nivåer granskar utöver detta giltiga signatur- eller dokumenttidsstämplar, DSS-certifikat- och återkallningsarrayer, den revision som introducerade valideringsmaterial samt om en senare dokumenttidsstämpel täcker den DSS-revisionen

Strukturerade fynd

Varje THPDFPAdESPreflightRequirement rapporterar sin introducerande Profile, normativa Level, stabila RuleID, Clause, PDF-Path, ObjectNumber, RevisionIndex, Passed-status och diagnostiska Message

FailedRequirementCount räknar misslyckade ska-nivåregler, medan WarningCount räknar misslyckad borde-nivåvägledning. HighestConformingProfile identifierar den högsta kumulativa profil som passerade och är endast meningsfull när HasConformingProfile är sant

Se PAdES-signaturpolicyvalidering, signaturvalidering i batch och signaturbevisanskaffning