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: ה-payload של ה-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 בוחר hash גדול יותר), ובניות נוכחיות כוללות גם את ה-tuple האופציונלי IssuerSerial (שם ה-distinguished name של המנפיק בתוספת המספר הסידורי), כך שמאמתי 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 | Custom SubFilter string entry |
ערכי החזרה
| 0 | הפרמטר SignProcessID אינו תקין או שהפרמטר SubFilter מחוץ לטווח |
|---|---|
| 1 | Success |