THPDFSignatureInfo Record

Descreve uma assinatura PDF carregada, das identidades de certificados à cobertura de byte range e ao veredito de verificação

Declaração

THPDFSignatureInfo= record
  FieldName: AnsiString;       // signature form field partial name
  SubFilter: AnsiString;       // /SubFilter of the signature dictionary
  SignerName: AnsiString;      // CN of the signer certificate subject
  SubjectDN: AnsiString;       // rendered subject distinguished name
  IssuerDN: AnsiString;        // rendered issuer distinguished name
  SerialNumberHex: AnsiString; // certificate serial number, hex encoded
  ValidFrom: TDateTime;        // certificate notBefore (0 when absent)
  ValidTo: TDateTime;          // certificate notAfter (0 when absent)
  SigningTime: TDateTime;      // signed attribute 1.2.840.113549.1.9.5,
                               // else the /M entry, else 0
  HashAlgorithm: AnsiString;   // SHA-1, SHA-2, SHA-3, or SHAKE256
  DigestAlgorithmOID: AnsiString;
  DigestConsistencyIssue: THPDFCMSDigestConsistencyIssue;
  SignaturePolicy: THPDFSignaturePolicyInfo;
  Reason: AnsiString;          // /Reason from the signature dictionary
  Location: AnsiString;        // /Location
  ContactInfo: AnsiString;     // /ContactInfo
  ByteRange: array of Int64;   // /ByteRange pairs (offset, length, ...)
  CoversWholeDocument: boolean; // ByteRange spans the file except /Contents
  SignedRevisionLength: Int64; // source prefix covered by this signature
  UnsignedTrailingBytes: Int64; // bytes appended after the signed revision
  CertificateTimeValidity: THPDFSignatureTimeValidity;
  Status: THPDFSignatureVerifyStatus;
  PublicKeyAlgorithm: AnsiString; // RSA, ECDSA, EdDSA, or ML-DSA
  SignatureAlgorithm: AnsiString; // CMS signature algorithm name
  SignatureAlgorithmOID: AnsiString;
  CurveName: AnsiString;          // ECDSA curve, such as 'P-256'
  Timestamp: THPDFTimestampInfo;  // RFC 3161 signature or document timestamp
  CMSAttributes: THPDFCMSAttributeSummary;
  CertificateValidation: THPDFCertificateValidationInfo;
end;

Unidade

HPDFSignVerify

Campos

CampoFinalidade
FieldNameNome parcial do campo de formulário da assinatura
SubFilterValor da entrada /SubFilter no dicionário de assinatura
SignerNameCN do subject do certificado do signatário
SubjectDNSubject distinguished name renderizado do certificado
IssuerDNIssuer distinguished name renderizado do certificado
SerialNumberHexNúmero de série do certificado, codificado em hex
ValidFromnotBefore do certificado, 0 quando ausente
ValidTonotAfter do certificado, 0 quando ausente
SigningTimeAtributo assinado 1.2.840.113549.1.9.5, senão a entrada /M, senão 0
HashAlgorithmNome da família de digest: SHA-1, SHA-2, SHA-3 ou SHAKE256
DigestAlgorithmOIDIdentificador de objeto do algoritmo de digest
DigestConsistencyIssueDivergência detectada entre algoritmos de digest dentro da estrutura CMS
SignaturePolicyDetalhes da política de assinatura quando a assinatura carrega uma política
ReasonValor da entrada /Reason
LocationValor da entrada /Location
ContactInfoValor da entrada /ContactInfo
ByteRangePares de offset e comprimento do /ByteRange descrevendo os intervalos de bytes cobertos
CoversWholeDocumentTrue quando o byte range cobre o arquivo inteiro exceto a lacuna do /Contents
SignedRevisionLengthComprimento do prefixo da fonte coberto por esta assinatura
UnsignedTrailingBytesBytes anexados após a revisão assinada
CertificateTimeValiditySe o horário de assinatura cai dentro da janela de validade do certificado
StatusVeredito de verificação do tipo THPDFSignatureVerifyStatus
PublicKeyAlgorithmFamília de chave pública: RSA, ECDSA, EdDSA ou ML-DSA
SignatureAlgorithmNome do algoritmo de assinatura CMS
SignatureAlgorithmOIDIdentificador de objeto do algoritmo de assinatura
CurveNameNome da curva ECDSA, como P-256
TimestampDetalhes do timestamp de assinatura ou de documento RFC 3161
CMSAttributesResumo dos atributos CMS assinados
CertificateValidationDesfecho da validação da cadeia de certificados

Notas de uso

APIs relacionadas