السجل THPDFSignatureInfo

يصف توقيع PDF محمَّلًا واحدًا من هويات الشهادة مرورًا بتغطية نطاق البايتات وانتهاءً بحكم التحقق

التصريح

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;

الوحدة

HPDFSignVerify

الحقول

الحقلالغرض
FieldNameالاسم الجزئي لحقل نموذج التوقيع
SubFilterقيمة مدخل /SubFilter في قاموس التوقيع
SignerNameالاسم الشائع (CN) لموضوع شهادة الموقّع
SubjectDNالاسم المميز لموضوع الشهادة بصيغته المعروضة
IssuerDNالاسم المميز لمُصدِر الشهادة بصيغته المعروضة
SerialNumberHexالرقم التسلسلي للشهادة بترميز ست عشري
ValidFromقيمة notBefore للشهادة، وصفر عند غيابها
ValidToقيمة notAfter للشهادة، وصفر عند غيابها
SigningTimeالسمة الموقعة 1.2.840.113549.1.9.5، وإلا فمدخل /M، وإلا فصفر
HashAlgorithmاسم عائلة الملخص: SHA-1 أو SHA-2 أو SHA-3 أو SHAKE256
DigestAlgorithmOIDمعرف الكائن لخوارزمية الملخص
DigestConsistencyIssueعدم اتساق مكتشف بين خوارزميات الملخص داخل بنية CMS
SignaturePolicyتفاصيل سياسة التوقيع عندما يحمل التوقيع سياسة
Reasonقيمة مدخل /Reason
Locationقيمة مدخل /Location
ContactInfoقيمة مدخل /ContactInfo
ByteRangeأزواج الإزاحة والطول لـ /ByteRange التي تصف مجالات البايتات المغطاة
CoversWholeDocumentصحيح عندما يمتد نطاق البايتات على الملف كله باستثناء فجوة /Contents
SignedRevisionLengthطول بادئة المصدر التي يغطيها هذا التوقيع
UnsignedTrailingBytesالبايتات الملحقة بعد النسخة الموقعة
CertificateTimeValidityما إذا كان وقت التوقيع يقع داخل نافذة صلاحية الشهادة
Statusحكم التحقق من النوع THPDFSignatureVerifyStatus
PublicKeyAlgorithmعائلة المفتاح العام: RSA أو ECDSA أو EdDSA أو ML-DSA
SignatureAlgorithmاسم خوارزمية توقيع CMS
SignatureAlgorithmOIDمعرف الكائن لخوارزمية التوقيع
CurveNameاسم منحنى ECDSA، مثل P-256
Timestampتفاصيل الطابع الزمني للتوقيع أو للمستند وفق RFC 3161
CMSAttributesملخص سمات CMS الموقعة
CertificateValidationنتيجة التحقق من سلسلة الشهادات

ملاحظات الاستخدام

واجهات برمجة التطبيقات ذات الصلة