GetSignatureModificationVerdict
Digitale signaturer
Beskrivelse
Angiver, om de opdateringer, der blev tilføjet efter en signatur, er blandt dem, som PDF'ens certificeringsniveau tillader
Syntaks
Delphi
Function TPDFlib.GetSignatureModificationVerdict(Const InputFile, Password, FieldName: WideString): Integer;Parametre
| InputFile | Det signerede dokument. |
|---|---|
| Password | Adgangskoden til at åbne den eller en tom streng |
| FieldName | Det signaturfelt, der skal vurderes |
Returværdier
| 1 | Intet blev tilføjet efter signaturen. |
|---|---|
| 2 | Kun ændringerne af certificeringsniveauets tilladelser blev tilføjet. |
| 3 | Noget, som niveauet ikke tillader, blev tilføjet. |
| 4 | Svaret kunne ikke bestemmes. |
| 5 | Signaturen slutter ikke ved en revisionsgrænse, så der ligger bytes inden for det område, den hævder at dække. |
| 0 | Filen eller feltet kunne ikke læses. |
Bemærkninger
ISO 32000-1 §12.8.2.2 giver en certificerende signatur et tilladelsesniveau: 1 tillader ingen senere ændringer, 2 tillader desuden udfyldning af formularfelter og signering, og 3 tillader desuden annotationer. Valideringsmateriale og dokumenttidsstempler er tilladt på alle niveauer, så opgradering af en signatur til langtidsvalidering aldrig fortolkes som manipulation
Resultatet 4 er ikke en godkendelse. Det returneres, når en certificering's egen struktur ikke kunne kontrolleres, når en feltlås er til stede, og det ikke kan spores, hvilke felter de senere opdateringer berørte, når en senere revision indeholder noget, der ikke kunne læses, eller når filen indeholder byte efter det signerede område, som ikke udgør en genkendelig revision. I alle disse tilfælde er noget væsentligt ukendt, og det ville være forkert at behandle det som tilladt.
GetSignatureModificationDetail angiver revisionen og ændringstypen bag svaret, og GetSignatureEffectiveMDPLevel rapporterer det anvendte niveau
Eksempel
case PDF.GetSignatureModificationVerdict('signed.pdf', '', 'Signature1') of
1, 2: ShowMessage('the signature still covers the document');
3: ShowMessage('not allowed: '+ PDF.GetSignatureModificationDetail);
else
ShowMessage('undetermined: '+ PDF.GetSignatureModificationDetail);
end;Se også
GetSignatureEffectiveMDPLevel, GetSignatureModificationDetail, GetSignatureRevisionIndex, GetDocumentRevisionKind