SetSignProcessCustomSubFilter
ความปลอดภัยและลายเซ็น
คำอธิบาย
ตั้งรายการ SubFilter ด้วยสตริงกำหนดเองให้กระบวนการลงลายเซ็นดิจิทัล โดยระบุการเข้ารหัสของค่าลายเซ็น
คล้าย SetSignProcessSubFilter แต่ปรับรายการ Subfilter เองได้
เมื่อสตริงที่ให้มาขึ้นต้นด้วย ETSI. (ปกติคือ ETSI.CAdES.detached สำหรับลายเซ็น PAdES baseline หรือ ETSI.RFC3161 สำหรับ timestamp เอกสาร) ไลบรารีจะเพิ่มรายการ 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) จะถูกเพิ่มพร้อมกันด้วย การใส่นี้ทำซ้ำได้และไม่ลดระดับ ExtensionLevel ที่สูงกว่าอยู่แล้ว
การเลือก ETSI.CAdES.detached เปิดเส้นทางลงลายเซ็น PAdES-B-B เพิ่มด้วย: payload CMS ที่ได้จะพกแอตทริบิวต์ authenticated อย่าง content-type (id-data) กับ signing-certificate-v2 (RFC 5035 / RFC 5816) และตัดแอตทริบิวต์ signing-time ที่ Table 1 ของ EN 319 142-1 ห้ามออก เพราะไลบรารีส่งอาร์เรย์แอตทริบิวต์ของตัวเองให้ CryptSignMessage ใบรับรองที่ใช้ลงลายเซ็นถูกระบุด้วย digest SHA-256 (หรือ SHA-384 / SHA-512 เมื่อ SetSignProcessDigestAlgorithm เลือกแฮชใหญ่กว่า) และบิลด์ปัจจุบันยังรวมทูเพิล IssuerSerial เสริมไว้ด้วย (ชื่อผู้ออกแบบ DN บวกเลขซีเรียล) เพื่อให้ตัวตรวจ PAdES ที่เข้มงวดกว่าไล่เช็คใบรับรองที่ใช้ลงลายเซ็นเทียบกับ chain ผู้สมัครได้
ไวยากรณ์
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 |