ApplyPAdESLongTermValidation
Skaitmeniniai parašai
Aprašymas
Vienu kvietimu pakelia jau pasirašytąjį PDF iki PAdES-B-LT, rezultatą rašydama į failą
Sintaksė
Delphi
Function TPDFlib.ApplyPAdESLongTermValidation(Const InputFile, Password, OutputFile, FieldName: WideString; Options: Integer): Integer;Parametrai
| InputFile | Pasirašytasis PDF |
|---|---|
| Password | Slaptažodis, kuriuo jis atveriamas, arba tuščia eilutė |
| OutputFile | Rašytinas papildytasis PDF |
| FieldName | Apdorojatinas parašo laukas arba tuščioji eilutė, kad kiekvienas parašas būtų apdorotas į vieną reviziją |
| Options | A PADES_LTV_* bit mask; 0 selects PADES_LTV_DEFAULT. |
Parinktys
PADES_LTV_WRITE_VRI (1) | Rašyti VRI įrašą kiekvienam parašui |
|---|---|
PADES_LTV_FETCH_OCSP (2) | Klauskite kiekvienos nuorodos OCSP atsakiklio. |
PADES_LTV_FETCH_CRL (4) | Grįžti prie CRL, kai OCSP negrąžino nieko |
PADES_LTV_FOLLOW_AIA (8) | Sekti išdavėjo adresus, kad kelias būtų užbaigtas |
PADES_LTV_SKIP_EXISTING (16) | Nepridėkite iš naujo medžiagos, kurios baitai jau paruošti |
PADES_LTV_SKIP_ROOT_REVOCATION (32) | Neklausti savęs išduotosios šaknies būsenos |
PADES_LTV_DEFAULT (63) | Visi aukščiau išvardyti; pasirenkama, kai Options yra 0 |
Grąžinamos reikšmės
| 1 | Pakėlimas pavyko |
|---|---|
| 2 | Įvesties failo nepavyko perskaityti |
| 3 | Įvesties PDF nepavyko išanalizuoti |
| 10 | Išvesties nepavyko įrašyti |
| 11 | Dokumento saugumo saugyklos (DSS) pridėti nepavyko |
| 20 | No such signature field. |
| 21 | No processed signature carried a readable certificate. |
GetPAdESLTVError neša bet kurios kitos nei 1 reikšmės priežastį
Pastabos
Pasirašiusiojo sertifikato kelias sudaromas iš paties parašo CMS, o likusieji išdavėjai sekami per caIssuers adresus, kuriuos įvardija sertifikatai, kai nustatyta PADES_LTV_FOLLOW_AIA. Atšaukimas surenkamas kiekvienai nuorodai – pirmiausia OCSP, tada CRL – ir, kartu su sertifikatais, rašomas į dokumento saugumo saugyklą vienu papildomuoju atnaujinimu
Medžiaga, identiška jau paruoštajai, įrašoma vieną kartą ir yra nurodoma kiekvieno jai reikalingo parašo, todėl kelio arba parašų bendrinama sertifikavimo įstaiga nepasirodo dukart. VRI įrašas rašomas tik tada, kai yra sertifikatas, į kurį jis galėtų rodyti, todėl tuščiasis įrašas niekada nesusidaro
Nepasiekiamasis atsakovas nepriverčia kvietimo nepavykti: pakėlimas tęsiasi su tai, kas surinkta, o GetPAdESLTVCertificateCount, GetPAdESLTVCRLCount, GetPAdESLTVOCSPCount ir GetPAdESLTVError praneša, kas gauta ir kodėl kažkas praleista
Pavyzdys
PDF.SetTimeStampOptions(2, 1, 1, 15000, '');
if PDF.ApplyPAdESLongTermValidation('signed.pdf', '', 'signed-lt.pdf', '', 0)<> 1 then
ShowMessage(PDF.GetPAdESLTVError);Taip pat žiūrėkite
ApplyPAdESLongTermValidationToStream, GetSignatureCertificateChainLength, AddPAdESDSSOCSPFromCertificates