THPDFSignatureInfo Record

Descrive una firma PDF caricata, dalle identità dei certificati alla copertura del byte range fino al verdetto di verifica

Dichiarazione

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;

Unità

HPDFSignVerify

Campi

CampoScopo
FieldNameNome parziale del campo modulo della firma
SubFilterValore della voce /SubFilter nel dizionario della firma
SignerNameCN del soggetto del certificato del firmatario
SubjectDNDistinguished name del soggetto del certificato, in forma resa
IssuerDNDistinguished name dell'emittente del certificato, in forma resa
SerialNumberHexNumero di serie del certificato, codificato in esadecimale
ValidFromnotBefore del certificato, 0 quando assente
ValidTonotAfter del certificato, 0 quando assente
SigningTimeAttributo firmato 1.2.840.113549.1.9.5, altrimenti la voce /M, altrimenti 0
HashAlgorithmNome della famiglia di digest: SHA-1, SHA-2, SHA-3 o SHAKE256
DigestAlgorithmOIDIdentificatore d'oggetto dell'algoritmo di digest
DigestConsistencyIssueDisallineamento rilevato tra gli algoritmi di digest dentro la struttura CMS
SignaturePolicyDettagli della politica di firma quando la firma ne porta una
ReasonValore della voce /Reason
LocationValore della voce /Location
ContactInfoValore della voce /ContactInfo
ByteRangeCoppie offset/lunghezza del /ByteRange che descrivono gli intervalli di byte coperti
CoversWholeDocumentTrue quando il byte range copre l'intero file tranne il varco del /Contents
SignedRevisionLengthLunghezza del prefisso della sorgente coperto da questa firma
UnsignedTrailingBytesByte aggiunti dopo la revisione firmata
CertificateTimeValiditySe l'ora di firma cade dentro la finestra di validità del certificato
StatusVerdetto di verifica di tipo THPDFSignatureVerifyStatus
PublicKeyAlgorithmFamiglia di chiave pubblica: RSA, ECDSA, EdDSA o ML-DSA
SignatureAlgorithmNome dell'algoritmo di firma CMS
SignatureAlgorithmOIDIdentificatore d'oggetto dell'algoritmo di firma
CurveNameNome della curva ECDSA, come P-256
TimestampDettagli del timestamp di firma o di documento RFC 3161
CMSAttributesRiepilogo degli attributi CMS firmati
CertificateValidationEsito della validazione della catena di certificati

Note sull'utilizzo

API correlate