السجل THPDFCMSVerifyOptions
يضبط حدود التحقق من توقيعات CMS والمزودين الخارجيين وتثبيت سياسة التوقيع وإعادة التحقق من الطوابع الزمنية
التصريح
THPDFCMSVerifyOptions= record
SignatureProvider: THPDFSignatureProvider;
AllowMLDSA: boolean;
OpenSSLLibraryPath: string;
MaxSignerCount: Integer;
MaxCounterSignatureDepth: Integer;
// Policy pinning is applied to primary SignerInfo values. Empty
// expected fields do not constrain the corresponding policy field
RequireSignaturePolicy: boolean;
ExpectedSignaturePolicyOID: AnsiString;
ExpectedSignaturePolicyHash: TBytes;
SignaturePolicyDocument: TBytes;
// Set this flag to hash an intentionally empty policy document
VerifySignaturePolicyDocumentHash: boolean;
RejectUnknownSignaturePolicyHash: boolean;
// Batch validation sets this when a shared timestamp cache already
// holds the verdict for the embedded signature timestamp token: token
// re-verification is skipped and the caller restores the cached
// THPDFTimestampInfo afterwards. Document timestamps (ETSI.RFC3161)
// never take this path because the token is the primary signature
SkipSignatureTimestampVerification: boolean;
class function Default: THPDFCMSVerifyOptions; static;
end;
الوحدة
HPDFSignVerify
الحقول
| الحقل | الغرض |
|---|---|
SignatureProvider | مزود THPDFSignatureProvider خارجي اختياري يُستخدم لعمليات التوقيع والتحقق الأساسية؛ وnil يختار التنفيذ المدمج |
AllowMLDSA | يسمح بتوقيعات ML-DSA أثناء التحقق |
OpenSSLLibraryPath | المجلد الذي يحوي مكتبات OpenSSL عندما يجري التحقق عبر خلفية OpenSSL |
MaxSignerCount | الحد الأعلى للموقِّعين الأساسيين المعالجين؛ ويضبط Default القيمة 256 |
MaxCounterSignatureDepth | حد التداخل للتوقيعات المضادة؛ ويضبط Default القيمة 8 |
RequireSignaturePolicy | عندما تكون True، تفشل التوقيعات بلا سياسة توقيع |
ExpectedSignaturePolicyOID | معرف OID للسياسة الذي يجب أن يقدمه SignerInfo أساسي؛ والقيمة الفارغة لا تقيّد |
ExpectedSignaturePolicyHash | ملخص السياسة المتوقع تثبيته؛ والقيمة الفارغة لا تقيّد |
SignaturePolicyDocument | بايتات وثيقة السياسة المستخدمة في مقارنة الملخص |
VerifySignaturePolicyDocumentHash | تلخيص وثيقة سياسة فارغة عمدًا عندما تكون True |
RejectUnknownSignaturePolicyHash | يفشل التحقق عندما لا يطابق ملخص السياسة المدمج أي قيمة متوقعة |
SkipSignatureTimestampVerification | يثق بحكم مخزَّن لرمز الطابع الزمني للتوقيع المدمج أثناء التحقق الدفعي |
Default | دالة فئة تُعيد سجلًا مصفَّرًا مع MaxSignerCount بقيمة 256 وMaxCounterSignatureDepth بقيمة 8 |
ملاحظات الاستخدام
- ابدأ دائمًا من
THPDFCMSVerifyOptions.Defaultبدلًا من متغير محلي مصفَّر حتى تنطبق فعليًا حدود الموقِّعين والعمق - تنطبق حقول تثبيت السياسة على قيم SignerInfo الأساسية فقط؛ والحقول المتوقعة الفارغة تترك فحص السياسة المقابل بلا قيد
- يضبط التحقق الدفعي
SkipSignatureTimestampVerificationعندما تكون ذاكرة الطوابع الزمنية المشتركة تحوي حكم الرمز أصلًا؛ ولا تسلك طوابع المستندات ذلك المسار قط