ApplyPAdESLongTermValidation
חתימות דיגיטליות
תיאור
מקדם PDF שכבר חתום אל PAdES-B-LT בקריאה אחת וכותב את התוצאה לקובץ
תחביר
Delphi
Function TPDFlib.ApplyPAdESLongTermValidation(Const InputFile, Password, OutputFile, FieldName: WideString; Options: Integer): Integer;פרמטרים
| InputFile | ה-PDF החתום |
|---|---|
| Password | הסיסמה לפתיחתו, או מחרוזת ריקה |
| OutputFile | ה-PDF המוגבר לכתיבה |
| FieldName | שדה חתימה לעיבוד, או מחרוזת ריקה כדי לעבד כל חתימה לגרסה אחת. |
| Options | A PADES_LTV_* bit mask; 0 selects PADES_LTV_DEFAULT. |
אפשרויות
PADES_LTV_WRITE_VRI (1) | כתיבת כניסת VRI עבור כל חתימה |
|---|---|
PADES_LTV_FETCH_OCSP (2) | לשאול את מגיב ה-OCSP של כל קישור |
PADES_LTV_FETCH_CRL (4) | לחזור ל-CRL כאשר ה-OCSP לא החזיר דבר |
PADES_LTV_FOLLOW_AIA (8) | לעקוב אחרי כתובות המנפיק כדי להשלים את השרשרת |
PADES_LTV_SKIP_EXISTING (16) | אל תוסיפו שוב חומר שבייטיו כבר הוצבו. |
PADES_LTV_SKIP_ROOT_REVOCATION (32) | אל תבקשו את מצבו של שורש שהונפק-עצמאית. |
PADES_LTV_DEFAULT (63) | כל האמור לעיל; נבחר כאשר Options הוא 0 |
ערכי החזרה
| 1 | הקידום הצליח. |
|---|---|
| 2 | לא ניתן היה לקרוא את קובץ הקלט |
| 3 | לא ניתן היה לנתח את ה-PDF הנכנס |
| 10 | לא ניתן היה לכתוב את הפלט |
| 11 | לא ניתן היה להוסיף את חנות האבטחה של המסמך (DSS) |
| 20 | אין שדה חתימה כזה. |
| 21 | אף חתימה מעובדת לא נשאה תעודה קריאה. |
GetPAdESLTVError נושאת את הסיבה עבור כל ערך שאינו 1
הערות
The signer certificate path is built from the signature's own CMS, and the remaining issuers are followed through the caIssuers addresses the certificates name when PADES_LTV_FOLLOW_AIA is set. Revocation is gathered for each link - OCSP first, then a CRL - and, with the certificates, written into the document security store by a single incremental update.
חומר זהה למה שכבר הועמד נכתב פעם אחת ומופנה על ידי כל חתימה שזקוקה לו, כך שרשות אישורים המשותפת לנתיב או לחתימות אינה מופיעה פעמיים; רשומת VRI נכתבת רק כאשר יש לה תעודה להצביע עליה, ולכן רשומה ריקה לעולם אינה נוצרת
מגיב שאינו נגיש לא מכשיל את הקריאה: הקידום ממשיך עם מה שנאסף, ו-GetPAdESLTVCertificateCount, GetPAdESLTVCRLCount, GetPAdESLTVOCSPCount ו-GetPAdESLTVError מדווחים מה התקבל ומדוע משהו הוחמץ.
דוגמה
PDF.SetTimeStampOptions(2, 1, 1, 15000, '');
if PDF.ApplyPAdESLongTermValidation('signed.pdf', '', 'signed-lt.pdf', '', 0)<> 1 then
ShowMessage(PDF.GetPAdESLTVError);ראו גם
ApplyPAdESLongTermValidationToStream, GetSignatureCertificateChainLength, AddPAdESDSSOCSPFromCertificates