Record THPDFCMSAttributeSummary
Expone datos estructurales del CMS desde el parser de verificación para que el preflight de perfiles pueda reportar cardinalidades de atributos sin recorrer el ASN.1 dos veces
Declaración
THPDFCMSAttributeSummary= record
Parsed: boolean;
EncapsulatedContentTypeOID: AnsiString;
SignedContentTypeOID: AnsiString;
SignedAttributeCount: Integer;
UnsignedAttributeCount: Integer;
ContentTypeCount: Integer;
MessageDigestCount: Integer;
SigningTimeCount: Integer;
CommitmentTypeIndicationCount: Integer;
SigningCertificateCount: Integer;
SigningCertificateV2Count: Integer;
SigningCertificateReferenceValid: boolean;
SigningCertificateV2ReferenceValid: boolean;
SigningCertificateV2HashAlgorithmOID: AnsiString;
SignaturePolicyCount: Integer;
SignatureTimestampCount: Integer;
SignedDataCertificatesPresent: boolean;
SignerCertificateIncluded: boolean;
CertificateCount: Integer;
end;
Unidad
HPDFSignVerify
Campos
| Campo | Propósito |
|---|---|
Parsed | True cuando la estructura CMS se parseó con éxito; los demás campos solo tienen significado en ese caso |
EncapsulatedContentTypeOID | OID del tipo de contenido encapsulado que lleva el SignedData |
SignedContentTypeOID | Tipo de contenido declarado por el atributo signed content-type del firmante |
SignedAttributeCount | Número de atributos del conjunto de atributos firmados del firmante |
UnsignedAttributeCount | Número de atributos del conjunto de atributos no firmados del firmante |
ContentTypeCount | Número de atributos content-type encontrados |
MessageDigestCount | Número de atributos message-digest encontrados |
SigningTimeCount | Número de atributos signing-time encontrados |
CommitmentTypeIndicationCount | Número de atributos commitment-type indication encontrados |
SigningCertificateCount | Número de atributos ESS signing-certificate (v1) encontrados |
SigningCertificateV2Count | Número de atributos ESS signing-certificate-v2 encontrados |
SigningCertificateReferenceValid | True cuando la referencia de certificado del atributo v1 coincide con el certificado real del firmante |
SigningCertificateV2ReferenceValid | True cuando la referencia de certificado del atributo v2 coincide con el certificado real del firmante |
SigningCertificateV2HashAlgorithmOID | OID del algoritmo de hash usado por la referencia de certificado v2 |
SignaturePolicyCount | Número de atributos signature-policy encontrados |
SignatureTimestampCount | Número de atributos timestamp de firma encontrados |
SignedDataCertificatesPresent | True cuando el SignedData lleva un conjunto de certificados |
SignerCertificateIncluded | True cuando el certificado del propio firmante está entre los certificados embebidos |
CertificateCount | Número de certificados embebidos en el SignedData |
Notas de uso
- Todos los valores vienen de la única pasada del parser de verificación, así que el preflight de perfiles los lee en vez de parsear el ASN.1 una segunda vez
- El record se adjunta a
THPDFSignatureInfo.CMSAttributesen cada firma verificada, incluidos los counter-signers - Los conteos de atributos por encima de la cardinalidad esperada (por ejemplo, más de un atributo message-digest) son una señal rápida de malformación para las reglas de preflight