DAOpenFileWithEncryptionKey

Gestione dei documenti, funzionalità di accesso diretto, sicurezza

Descrizione

Apre un PDF cifrato per recupero o analisi autorizzati accettando direttamente la chiave di crittografia del file esadecimale invece di derivarla da una passwordIl file viene aperto tramite un handle con sorgente di sola lettura e non può essere esteso sul posto

Sintassi

Delphi

Function TPDFlib.DAOpenFileWithEncryptionKey(Const InputFileName, EncryptionKeyHex: WideString; Options: Integer = 0): Integer;

DLL

int DLDAOpenFileWithEncryptionKey(int InstanceID, const wchar_t * InputFileName, const wchar_t * EncryptionKeyHex, int Options);
int DLDAOpenFileWithEncryptionKeyA(int InstanceID, const char * InputFileName, const char * EncryptionKeyHex, int Options);

Parametri

InputFileNamePercorso e nome del PDF cifrato
EncryptionKeyHexChiave esadecimale ASCII di lunghezza pari senza prefisso né spazi; le revisioni da 2 a 4 richiedono la lunghezza esatta della chiave dichiarata dal dizionario di crittografia e le revisioni da 5 a 7 richiedono 32 byte
OptionsZero richiede un verificatore disponibile; PDF_RAW_KEY_ALLOW_UNVERIFIED consente una chiave altrimenti valida solo quando il documento non ha un verificatore utilizzabile

Valori restituiti

Non-zeroUn handle di file Direct Access
0L'input non poteva essere aperto; esaminare LastErrorCode, incluso PDFLIB_ERROR_RAW_ENCRYPTION_KEY_INVALID per sintassi, lunghezza, opzioni o verifica non valide

Osservazioni

I valori /U disponibili delle revisioni da 2 a 4 e i valori /Perms delle revisioni da 5 a 7 vengono sempre verificati; PDF_RAW_KEY_ALLOW_UNVERIFIED non accetta mai una mancata corrispondenzaChiamare

DAGetEncryptionKeyValidation dopo l'apertura per distinguere gli handle verificati da quelli esplicitamente non verificatiLa chiave è un materiale credenziale sensibile e va ottenuta, trasportata e archiviata con gli stessi controlli di una password del documento