THPDFPDFMACValidationInfo Record
Resultado completo de uma validação de PDF MAC: status e mensagem, comprimentos de faixa de bytes e de MAC, detalhes de digest e de política, uso de AES-GCM, localização do MAC, vínculo com a assinatura e flags de cobertura de permissões
Declaração
THPDFPDFMACValidationInfo= record
Status: THPDFPDFMACStatus;
ByteRangeLength: Int64;
MACLength: Integer;
DigestAlgorithm: THPDFPDFMACDigestAlgorithm;
PolicyProfile: THPDFPDFMACPolicyProfile;
PolicyAccepted: boolean;
UsedAESGCM: boolean;
Message: string;
Location: THPDFPDFMACLocation;
SignatureObjectNumber: Integer;
SignatureGeneration: Integer;
SignatureDigestMatched: boolean;
FullFileCoverage: boolean;
PermissionsAuthenticated: boolean;
MACRequiredByPermissions: boolean;
end;
Unidade
HPDFDoc
Campos
| Campo | Finalidade |
|---|---|
Status | Veredito THPDFPDFMACStatus, pmsValid quando o MAC confere e estados de falha específicos caso contrário |
ByteRangeLength | Número de bytes do arquivo cobertos pelo /ByteRange do MAC |
MACLength | Comprimento do valor de MAC codificado |
DigestAlgorithm | Algoritmo de digest com o qual o MAC checado foi construído |
PolicyProfile | THPDFPDFMACPolicyProfile sob o qual o MAC foi avaliado |
PolicyAccepted | true quando a política de digest e AES-GCM das opções fornecidas aceitou o MAC |
UsedAESGCM | true quando o payload do MAC estava protegido com AES-GCM |
Message | Texto de desfecho legível por humanos, por exemplo que o MAC é válido, ou o motivo de não ser |
Location | THPDFPDFMACLocation: MAC standalone ou um anexado a uma assinatura |
SignatureObjectNumber / SignatureGeneration | Referência de objeto da assinatura a que o MAC se anexa, significativa quando Location reporta um MAC anexado |
SignatureDigestMatched | true quando o digest de um MAC anexado bateu com o digest de bytes da assinatura dele |
FullFileCoverage | true quando a faixa de bytes cobre o arquivo inteiro |
PermissionsAuthenticated | true quando os bits de permissão do documento estavam cobertos pelo MAC |
MACRequiredByPermissions | true quando as permissões do documento exigem um MAC, de modo que a ausência dele é em si uma falha de validação |
Notas de uso
- Preenchido por
THotPDF.ValidatePDFMACe pelo validador por revisão; o record é resetado antes do uso, então o inspecione mesmo quando a função retornarfalse - Confira
Statusprimeiro, depoisPolicyAccepted, para distinguir um MAC criptograficamente bom que falha no seu perfil de um MAC quebrado - Para MACs anexados, leia
SignatureObjectNumberjunto comSignatureDigestMatchedpara confirmar que o MAC cobre os mesmos bytes que a assinatura assinou