ApplyPAdESLongTermValidation

Tanda tangan digital

Deskripsi

Menaikkan PDF yang sudah ditandatangani ke PAdES-B-LT dalam satu panggilan, menulis hasilnya ke file

Sintaks

Delphi

Function TPDFlib.ApplyPAdESLongTermValidation(Const InputFile, Password, OutputFile, FieldName: WideString; Options: Integer): Integer;

Parameter

InputFileThe signed PDF.
PasswordPassword untuk membukanya, atau string kosong
OutputFilePDF hasil augmentasi yang akan ditulis
FieldNameSignature field yang diproses, atau string kosong untuk memproses setiap signature menjadi satu revisi
OptionsA PADES_LTV_* bit mask; 0 selects PADES_LTV_DEFAULT.

Opsi

PADES_LTV_WRITE_VRI (1)Tulis entri VRI untuk setiap signature
PADES_LTV_FETCH_OCSP (2)Tanyakan responder OCSP dari setiap tautan.
PADES_LTV_FETCH_CRL (4)Beralih ke CRL saat OCSP tidak mengembalikan apa pun
PADES_LTV_FOLLOW_AIA (8)Ikuti alamat issuer untuk melengkapi path
PADES_LTV_SKIP_EXISTING (16)Do not re-add material whose bytes are already staged.
PADES_LTV_SKIP_ROOT_REVOCATION (32)Jangan menanyakan status root yang self-issued
PADES_LTV_DEFAULT (63)Semua yang di atas; dipilih saat Options bernilai 0

Nilai kembalian

1The promotion succeeded.
2File input gagal dibaca
3Input PDF gagal di-parse
10Output gagal ditulis
11Document security store gagal ditambahkan
20No such signature field.
21No processed signature carried a readable certificate.

GetPAdESLTVError membawa alasan untuk nilai selain 1

Catatan

Path certificate penandatangan dibangun dari CMS milik signature itu sendiri, dan issuer sisanya diikuti melalui alamat caIssuers yang disebut certificate saat PADES_LTV_FOLLOW_AIA diset. Revocation dikumpulkan untuk setiap link - OCSP lebih dulu, lalu CRL - dan bersama certificate-certificatenya ditulis ke document security store lewat satu incremental update

Material yang identik dengan yang sudah di-stage ditulis sekali dan direferensikan oleh setiap signature yang membutuhkannya, sehingga certificate authority yang dipakai bersama lintas path atau lintas signature tidak muncul dua kali. Entri VRI hanya ditulis saat ia punya certificate untuk ditunjuk, sehingga entri kosong tidak pernah dihasilkan

Responder yang tidak terjangkau tidak membuat panggilan gagal: promotion berlanjut dengan apa pun yang berhasil dikumpulkan, dan GetPAdESLTVCertificateCount, GetPAdESLTVCRLCount, GetPAdESLTVOCSPCount, serta GetPAdESLTVError melaporkan apa yang diperoleh dan mengapa ada yang terlewat

Contoh

PDF.SetTimeStampOptions(2, 1, 1, 15000, '');
if PDF.ApplyPAdESLongTermValidation('signed.pdf', '', 'signed-lt.pdf', '', 0)<> 1 then
  ShowMessage(PDF.GetPAdESLTVError);

Lihat juga

ApplyPAdESLongTermValidationToStream, GetSignatureCertificateChainLength, AddPAdESDSSOCSPFromCertificates