SetSignProcessCustomSubFilter

الأمان والتواقيع

الوصف

يضبط مدخل SubFilter بسلسلة مخصصة لعملية توقيع رقمي، محددًا ترميز قيمة التوقيع

مشابه لـ SetSignProcessSubFilter لكن مدخل Subfilter قابل للتخصيص

عندما تبدأ السلسلة المقدمة بـ ETSI.‏ (عادة ETSI.CAdES.detached لتواقيع PAdES الأساسية أو ETSI.RFC3161 لأطواق زمن المستند) تضيف المكتبة تلقائيًا مدخل PAdES‏ /Extensions /ESIC <</BaseVersion /1.7 /ExtensionLevel 2>> إلى كتالوج المستند كما تطلبه ETSI EN 319 142-1 v1.2.1 §5.6. ولملفات PDF المؤلفة عبر TPDFlib يُضاف بالتوازي الإعلان المكافئ من Adobe‏ (/Extensions /ADBE عند /ExtensionLevel 8). والحقن غير مكرر الأثر ولا يخفض أبدًا مستوى امتداد أعلى موجود

يؤدي اختيار ETSI.CAdES.detached أيضًا إلى تفعيل مسار التوقيع PAdES-B-B: يحمل حمولة CMS الناتجة خصائص المصادقة content-type‏ (id-data) وsigning-certificate-v2‏ (RFC 5035 / RFC 5816)، وتُحذف خاصية signing-time التي يحظرها الجدول 1 من EN 319 142-1 لأن المكتبة تمرر مصفوفة خصائصها الخاصة إلى CryptSignMessage. ويُحدد شهادة التوقيع بملخص SHA-256 الخاص بها (أو SHA-384 / SHA-512 عندما تختار SetSignProcessDigestAlgorithm دالة تجزئة أكبر)، وتتضمن البناءات الحالية أيضًا بنية IssuerSerial الاختيارية (الاسم المميز للمُصدر مع الرقم التسلسلي) ليتمكن مدققو PAdES الأشد صرامة من مطابقة شهادة التوقيع مع سلسلة مرشحيها

الصيغة

Delphi

Function TPDFlib.SetSignProcessCustomSubFilter(SignProcessID: Integer; SubFilterStr: WideString): Integer;

ActiveX

Function PDFlib::SetSignProcessCustomSubFilter(SignProcessID As Long, SubFilterStr As String) As Long

DLL

int DLSetSignProcessCustomSubFilter(int InstanceID, int SignProcessID, const wchar_t * SubFilterStr);

المعاملات

SignProcessIDقيمة تُرجعها الدالات NewSignProcessFromFile أو NewSignProcessFromStream أو NewSignProcessFromString
SubFilterStrتاريخ الإنشاء (سلسلة تاريخ PDF، مثل D:20260101120000+00'00')

قيم الإرجاع

0قيمة المعامل SignProcessID غير صالحة أو أن قيمة المعامل SubFilter خارج النطاق
1Success