Preflight profilów PAdES z adresowaniem po klauzulach
THotPDF.PreflightLoadedPAdES ocenia załadowany podpis względem jednego skumulowanego profilu PAdES baseline lub extended i zwraca każde mające zastosowanie wymaganie, łącznie ze sprawdzeniami zaliczonymi, z pochodzeniem z klauzul norm i dowodów PDF
Obsługiwane cele
Celami baseline są palBaseline_B_B, palBaseline_B_T, palBaseline_B_LT i palBaseline_B_LTA, a celami extended palExtended_E_BES, palExtended_E_EPES i palExtended_E_LTV
Ogólna wartość palLegacy_adbePkcs7 nie jest profilem PAdES i jest odrzucana jako cel
Kontrakt oceny
Przeciążenie strumieniowe zachowuje pozycję źródła należącą do wywołującego, a przeciążenie plikowe otwiera ponownie źródło używane przez LoadFromFile. Wynik funkcji True oznacza ukończenie oceny; zgodność sprawdzaj przez THPDFPAdESPreflightReport.Compliant
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;
Badane dowody
Sprawdzenia baseline i extended badają słownik podpisu, pełne pokrycie /ByteRange, ważność podpisu CMS, liczebność atrybutów podpisanych, typ zawartości, message digest, ograniczenia czasu podpisania, /M, /Filter, /SubFilter, /Reason i zakazane wpisy /Cert
Sprawdzenia ESS signing-certificate i signing-certificate-v2 hashują rzeczywisty certyfikat podpisującego i wymagają pasującej referencji ESSCertID, zamiast akceptować atrybut z samej nazwy
Wyższe poziomy badają dodatkowo ważne znaczniki czasu podpisu lub dokumentu, tablice certyfikatów i revocacji DSS, rewizję, która wniosła materiał walidacyjny, oraz to, czy późniejszy znacznik czasu dokumentu pokrywa tę rewizję DSS
Ustrukturyzowane ustalenia
Każde THPDFPAdESPreflightRequirement raportuje wprowadzający je Profile, normatywny Level, stabilny RuleID, Clause, PDF-owy Path, ObjectNumber, RevisionIndex, status Passed i diagnostyczny Message
FailedRequirementCount liczy niezaliczone reguły poziomu shall, a WarningCount niezaliczone wytyczne poziomu should. HighestConformingProfile wskazuje najwyższy zaliczony profil skumulowany i ma znaczenie tylko wtedy, gdy HasConformingProfile jest true
Zobacz walidację polityki podpisu PAdES, walidację podpisów wsadowo i pozyskiwanie dowodów podpisu