THPDFSignatureInfo Record
Beskriver én innlastet PDF-signatur, fra sertifikatsidentiteter via byteområde-dekning til verifiseringskjennelsen
Deklarasjon
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;
Enhet
HPDFSignVerify
Felt
| Felt | Formål |
|---|---|
FieldName | Delnavnet til signaturens skjemafelt |
SubFilter | Verdien av /SubFilter-oppføringen i signaturordboken |
SignerName | CN i signeringsertifikatets subjekt |
SubjectDN | Sertifikatets rendrede distinguished name for subjektet |
IssuerDN | Sertifikatets rendrede distinguished name for utstederen |
SerialNumberHex | Sertifikatets serienummer, heksadesimalt kodet |
ValidFrom | Sertifikatets notBefore, 0 når fraværende |
ValidTo | Sertifikatets notAfter, 0 når fraværende |
SigningTime | Signert attributt 1.2.840.113549.1.9.5, ellers /M-oppføringen, ellers 0 |
HashAlgorithm | Navnet på digest-familien: SHA-1, SHA-2, SHA-3 eller SHAKE256 |
DigestAlgorithmOID | Objektidentifikatoren til digest-algoritmen |
DigestConsistencyIssue | Avvik oppdaget mellom digest-algoritmene inne i CMS-strukturen |
SignaturePolicy | Detaljer om signaturpolicy når signaturen bærer en policy |
Reason | Verdien av /Reason-oppføringen |
Location | Verdien av /Location-oppføringen |
ContactInfo | Verdien av /ContactInfo-oppføringen |
ByteRange | /ByteRange-offset- og lengdepar som beskriver de dekkede byteintervallene |
CoversWholeDocument | True når byteområdet spenner over hele filen unntatt /Contents-hullet |
SignedRevisionLength | Lengden på kildeprefikset denne signaturen dekker |
UnsignedTrailingBytes | Byte lagt til etter den signerte revisjonen |
CertificateTimeValidity | Om signeringstidspunktet faller innenfor sertifikatets gyldighetsvindu |
Status | Verifiseringskjennelse av typen THPDFSignatureVerifyStatus |
PublicKeyAlgorithm | Familien til den offentlige nøkkelen: RSA, ECDSA, EdDSA eller ML-DSA |
SignatureAlgorithm | Navnet på CMS-signaturalgoritmen |
SignatureAlgorithmOID | Objektidentifikatoren til signaturalgoritmen |
CurveName | ECDSA-kurvenavnet, for eksempel P-256 |
Timestamp | Detaljer om RFC 3161-signatur- eller dokumenttidsstempel |
CMSAttributes | Oppsummering av de signerte CMS-attributtene |
CertificateValidation | Utfallet av sertifikatkjede-valideringen |
Bruksnotater
GetLoadedSignatureInforeturnerer de beskrivende feltene;VerifyLoadedSignatureogVerifyLoadedSignatureExfyller status- og valideringsfeltene etter å ha sjekket digesteneCoversWholeDocumentsammen medUnsignedTrailingBytesviser om senere revisjoner endret dokumentet etter signeringen- Samme record mater sertifikatvalideringen, så ett kall dekker identiteter, dekning, algoritmer og kjedekontroller