ApplyPAdESLongTermValidation
Digitale signaturer
Beskrivelse
Promoterer en allerede signert PDF til PAdES-B-LT i ett kall, og skriver resultatet til en fil
Syntaks
Delphi
Function TPDFlib.ApplyPAdESLongTermValidation(Const InputFile, Password, OutputFile, FieldName: WideString; Options: Integer): Integer;Parametere
| InputFile | Den signerte PDF-en |
|---|---|
| Password | Passordet for å åpne den, eller en tom streng |
| OutputFile | Den utvidede PDF-en som skal skrives |
| FieldName | Et signaturfelt som skal behandles, eller en tom streng for å behandle alle signaturer til én revisjon |
| Options | A PADES_LTV_* bit mask; 0 selects PADES_LTV_DEFAULT. |
Alternativer
PADES_LTV_WRITE_VRI (1) | Skriver en VRI-oppføring for hver signatur |
|---|---|
PADES_LTV_FETCH_OCSP (2) | Spør hver lenkes OCSP-responder. |
PADES_LTV_FETCH_CRL (4) | Fall tilbake til CRL når OCSP ikke svarte |
PADES_LTV_FOLLOW_AIA (8) | Følg utstederadressene for å fullføre kjeden |
PADES_LTV_SKIP_EXISTING (16) | Do not re-add material whose bytes are already staged. |
PADES_LTV_SKIP_ROOT_REVOCATION (32) | Ikke spør etter statusen til en selvutstedt rot |
PADES_LTV_DEFAULT (63) | Alt det ovenfor; velges når Options er 0 |
Returverdier
| 1 | Oppgraderingen lyktes |
|---|---|
| 2 | Inndatafilen kunne ikke leses |
| 3 | Inndata-PDF-en kunne ikke tolkes |
| 10 | Utdataene kunne ikke skrives |
| 11 | Dokumentets sikkerhetslager kunne ikke legges til |
| 20 | No such signature field. |
| 21 | No processed signature carried a readable certificate. |
GetPAdESLTVError bærer årsaken til enhver verdi annet enn 1
Merknader
Signerens sertifikatssti bygges fra signaturens egen CMS, og de resterende utstederne følges via caIssuers-adressene sertifikatene oppgir når PADES_LTV_FOLLOW_AIA er satt. Opphevelse samles inn for hver lenke - OCSP først, deretter en CRL - og skrives sammen med sertifikatene inn i dokumentets sikkerhetslager ved én enkelt inkrementell oppdatering
Materiale identisk med noe som allerede er klargjort skrives én gang og refereres av hver signatur som trenger det, så en sertifikatmyndighet delt på tvers av banen eller på tvers av signaturer vises ikke to ganger. En VRI-oppføring skrives bare når den har et sertifikat å peke på, så en tom oppføring produseres aldri
En uåbar responder lar ikke kallet feile: promoteringen fortsetter med det som ble samlet inn, og GetPAdESLTVCertificateCount, GetPAdESLTVCRLCount, GetPAdESLTVOCSPCount og GetPAdESLTVError rapporterer hva som ble innhentet og hvorfor noe manglet
Eksempel
PDF.SetTimeStampOptions(2, 1, 1, 15000, '');
if PDF.ApplyPAdESLongTermValidation('signed.pdf', '', 'signed-lt.pdf', '', 0)<> 1 then
ShowMessage(PDF.GetPAdESLTVError);Se også
ApplyPAdESLongTermValidationToStream, GetSignatureCertificateChainLength, AddPAdESDSSOCSPFromCertificates