절 주소형 PAdES 프로필 프리플라이트

THotPDF.PreflightLoadedPAdES는 로드된 서명을 누적 PAdES baseline 또는 extended 프로필 하나로 평가하고, 통과한 검사까지 포함해 적용 가능한 모든 요구 사항을 표준 절 및 PDF 증거 출처와 함께 반환합니다

지원 대상

baseline 대상은 palBaseline_B_B, palBaseline_B_T, palBaseline_B_LT, palBaseline_B_LTA이고, extended 대상은 palExtended_E_BES, palExtended_E_EPES, palExtended_E_LTV입니다

범용 palLegacy_adbePkcs7 값은 PAdES 프로필이 아니므로 대상으로 받지 않습니다

평가 계약

스트림 오버로드는 호출자 소유의 소스 위치를 유지하고, 파일 오버로드는 LoadFromFile이 쓴 소스를 다시 엽니다. 함수가 True를 반환하면 평가가 완료된 것이고, 적합 여부는 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;

검사하는 증거

baseline 및 extended 검사는 서명 사전, 완전한 /ByteRange 커버리지, CMS 서명 유효성, 서명 속성 카디널리티, content type, message digest, signing-time 제약, /M, /Filter, /SubFilter, /Reason, 금지된 /Cert 항목을 검사합니다

ESS signing-certificate 및 signing-certificate-v2 검사는 실제 서명자 인증서를 해싱하고 일치하는 ESSCertID 참조를 요구하며, 속성 이름만으로 받아들이지 않습니다

상위 레벨은 유효한 서명 또는 문서 타임스탬프, DSS 인증서 및 폐기 배열, 검증 자료가 들어온 리비전, 그리고 이후 문서 타임스탬프가 그 DSS 리비전을 덮는지를 추가로 검사합니다

구조화된 결과

각 THPDFPAdESPreflightRequirement는 자신을 도입한 Profile, 규범적 Level, 안정적인 RuleID, Clause, PDF Path, ObjectNumber, RevisionIndex, Passed 상태, 진단 Message를 보고합니다

FailedRequirementCount는 실패한 shall 수준 규칙을 세고, WarningCount는 실패한 should 수준 지침을 셉니다. HighestConformingProfile은 통과한 누적 프로필 중 가장 높은 것을 식별하며 HasConformingProfile이 true일 때만 의미가 있습니다

PAdES 서명 정책 검증, 배치 서명 검증, 서명 증거 획득을 참고하세요