SetSignProcessCustomSubFilterA
امنیت و امضا
توضیحات
حرف A در انتهای نام، entry point مربوط به DLL از نوع ANSI (char) را نشان میدهد؛ سطح ActiveX/COM فقط فرم Unicode را ارائه میکند. رفتار با SetSignProcessCustomSubFilter یکسان است و آرگومانهای رشتهای با استفاده از code page فعلی SetAnsiMode تفسیر میشوند
مدخل SubFilter را با رشتهٔ سفارشی برای فرایند امضای دیجیتال تنظیم میکند و کدگذاری مقدار امضا را مشخص میکند
شبیه SetSignProcessSubFilter است اما مدخل Subfilter قابل سفارشیسازی است
وقتی رشتهٔ دادهشده با ETSI. آغاز شود (معمولاً ETSI.CAdES.detached برای امضاهای پایه PAdES یا ETSI.RFC3161 برای مهر زمانی سند) کتابخانه طبق الزام ETSI EN 319 142-1 v1.2.1 §5.6 مدخل PAdES یعنی /Extensions /ESIC <</BaseVersion /1.7 /ExtensionLevel 2>> را خودکار به catalog سند اضافه میکند. برای PDFهایی که از طریق TPDFlib تألیف شدهاند اعلام معادل Adobe یعنی /Extensions /ADBE در /ExtensionLevel 8 همزمان اضافه میشود. تزریق idempotent است و هرگز سطح پسوند بالاتر موجود را پایین نمیآورد
انتخاب 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 میدهد. گواهی امضاکننده با digest آن یعنی SHA-256 (یا SHA-384 / SHA-512 وقتی SetSignProcessDigestAlgorithm هش بزرگتری انتخاب کند) شناسایی میشود و ساختهای فعلی تاپل اختیاری IssuerSerial (نام متمایز صادرکننده بهعلاوهٔ شمارهٔ سریال) را هم شامل میشوند تا اعتبارسنجهای سختگیرانهتر PAdES بتوانند گواهی امضاکننده را با زنجیرهٔ نامزدشان چک کنند
نحو
Delphi
Function DLSetSignProcessCustomSubFilterA(InstanceID, SignProcessID: Integer; SubFilterStr: PAnsiChar): Integer;
DLL
int DLSetSignProcessCustomSubFilterA(int InstanceID, int SignProcessID, const char * SubFilterStr);
پارامترها
| SignProcessID | مقداری که توسط توابع NewSignProcessFromFile، NewSignProcessFromStream یا NewSignProcessFromString بازگردانده میشود |
|---|---|
| SubFilterStr | ورودی رشتهٔ سفارشی SubFilter |
مقادیر بازگشتی
| 0 | پارامتر SignProcessID نامعتبر بود یا پارامتر SubFilter خارج از بازه بود |
|---|---|
| 1 | Success |