GetSignatureModificationVerdict
Firme digitali
Descrizione
Indica se gli aggiornamenti aggiunti dopo una firma erano consentiti dal livello di certificazione del documento'
Sintassi
Delphi
Function TPDFlib.GetSignatureModificationVerdict(Const InputFile, Password, FieldName: WideString): Integer;Parametri
| InputFile | Il documento firmato |
|---|---|
| Password | La password per aprirlo oppure una stringa vuota |
| FieldName | Il campo firma da valutare |
Valori restituiti
| 1 | Non è stato aggiunto nulla dopo la firma |
|---|---|
| 2 | Sono state aggiunte solo modifiche consentite dal livello di certificazione |
| 3 | È stato aggiunto qualcosa che il livello non consente |
| 4 | Impossibile determinare la risposta |
| 5 | La firma non termina al limite di revisione, quindi alcuni byte ricadono nell'intervallo dichiarato |
| 0 | Impossibile leggere il file o il campo |
Note
ISO 32000-1 §12.8.2.2 assegna a una firma di certificazione un livello di autorizzazione: 1 non consente modifiche successive, 2 consente inoltre la compilazione dei campi e la firma, 3 consente anche le annotazioni. Materiale di convalida e marche temporali del documento sono consentiti a ogni livello, quindi la promozione di una firma alla convalida a lungo termine non appare come manomissione
Un risultato 4 non è un'approvazione. Viene restituito quando non è verificabile la struttura della certificazione, un blocco campo impedisce di tracciare i campi modificati, una revisione successiva è illeggibile o esistono byte fuori dall'intervallo firmato senza revisione riconoscibile. In tali casi mancano informazioni sostanziali e considerarli consentiti sarebbe errato
GetSignatureModificationDetail indica la revisione e il tipo di modifica alla base della risposta, mentre GetSignatureEffectiveMDPLevel segnala il livello applicato
Esempio
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;Vedere anche
GetSignatureEffectiveMDPLevel, GetSignatureModificationDetail, GetSignatureRevisionIndex, GetDocumentRevisionKind