
La crittografia PDF viene utilizzata per proteggere il documento PDF da accessi non autorizzati. Se un documento PDF è crittografato, devi decrittografarlo per accedere al suo contenuto, altrimenti rimarrà illeggibile. Molto spesso, i documenti PDF vengono crittografati con una password necessaria per aprire il documento. D’altra parte, puoi anche limitare i permessi di accesso a varie operazioni come stampa, modifica, copia, ecc. La libreria PDF di Aspose, Aspose.PDF for .NET, fornisce alcuni semplici modi per crittografare e decrittografare File PDF utilizzando C# e VB.NET. In questo articolo, ti mostrerò come eseguire operazioni di crittografia e decrittografia PDF utilizzando C#.
- Crittografa un file PDF usando C#
- Decrittografa un file PDF usando C#
- Modifica le autorizzazioni di sicurezza in un file PDF
API di crittografia e decrittografia PDF C# - Installazione
Aspose.PDF per .NET è ospitato su NuGet e può essere facilmente installato utilizzando NuGet Package Manager. In alternativa, puoi scaricare la DLL dell’API dalla sezione Download.
Crittografa un file PDF in C#
Per crittografare un file PDF, è necessario impostare una password che sarà richiesta per aprire e visualizzare il documento. Inoltre, è necessario specificare l’algoritmo crittografico desiderato come metodo di crittografia. Aspose.PDF per .NET supporta i seguenti metodi di crittografia:
- RC4 con chiave a 40 bit.
- RC4 con chiave a 128 bit.
- AES con chiave a 128 bit.
- AES con chiave a 256 bit.
Passaggi per crittografare un file PDF
Di seguito sono riportati i semplici passaggi per crittografare un documento PDF utilizzando C#.
- Carica il documento PDF utilizzando la classe Document.
- Crittografa il documento PDF con una password e un algoritmo crittografico utilizzando il metodo Document.Encrypt.
- Salva il documento PDF crittografato utilizzando il metodo Document.Save.
L’esempio di codice seguente mostra come crittografare un documento PDF usando C#.
// Apri documento
Document document = new Document("Encrypt.pdf");
// Cripta PDF
document.Encrypt("user_password", "owner_password", 0 /*permissions*/, CryptoAlgorithm.RC4x128);
// Salva PDF aggiornato
document.Save("Encrypted PDF.pdf");
Quando aprirai questo documento PDF crittografato in Adobe Reader, verrà visualizzata la seguente finestra di dialogo.

Decrittografare un file PDF utilizzando C#
Per decrittografare un documento PDF, è necessario disporre della password dell’utente o del proprietario del documento. Di seguito sono riportati i semplici passaggi per decrittografare un documento PDF:
- Carica il documento PDF utilizzando la classe Document specificando la password dell’utente o del proprietario.
- Chiama il metodo Document.Decrypt().
- Salva il documento PDF decrittografato.
L’esempio di codice seguente mostra come decrittografare un documento PDF usando C#.
// Aprire il documento specificando la password dell'utente o del proprietario
Document document = new Document("Encrypted PDF.pdf", "user_password");
// Decrittografa PDF
document.Decrypt();
// Salva PDF aggiornato
document.Save("Decrypted PDF.pdf");
Modifica le autorizzazioni di sicurezza di un file PDF in C#
È possibile aumentare la sicurezza di un documento PDF limitando i permessi dell’utente. In tal caso, è possibile specificare le operazioni consentite agli utenti. Di seguito è riportato l’elenco delle autorizzazioni che è possibile impostare per consentire a un utente.
- Stampa documento - Consente di stampare il documento.
- Modifica contenuto - Consente di modificare il contenuto del documento.
- Estrai contenuto: consente di copiare il contenuto dal documento.
- Modifica annotazioni di testo - Consente di aggiungere o modificare annotazioni di testo.
- Compila modulo - Consente di compilare i campi del modulo interattivo.
- Estrai contenuto con disabilità: consente di estrarre testo e grafica (per utenti con disabilità).
- Assembla documento: consente di inserire, ruotare o eliminare pagine e creare segnalibri o immagini in miniatura.
- Qualità di stampa: consente di stampare documenti ad alta risoluzione.
Passaggi per modificare le autorizzazioni di sicurezza di un file PDF
Di seguito sono riportati i passaggi per modificare le autorizzazioni di sicurezza di un documento PDF.
- Carica il documento PDF.
- Imposta le autorizzazioni di sicurezza utilizzando il metodo Document.Encrypt.
- Salva il documento PDF crittografato.
L’esempio di codice seguente mostra come modificare le autorizzazioni di un documento PDF usando C#.
// Apri documento
Document document = new Document("Encrypt.pdf");
// Crittografa PDF con permesso di stampa
document.Encrypt("user_password", "owner_password", Permissions.PrintDocument | Permissions.PrintingQuality, CryptoAlgorithm.RC4x128);
// Salva PDF aggiornato
document.Save("Encrypted PDF.pdf");
Un altro modo per impostare o modificare i privilegi dei documenti PDF è utilizzare la classe DocumentPrivilege. La classe DocumentPrivilege consente di definire le autorizzazioni o i privilegi per gli utenti. L’esempio di codice seguente mostra come impostare le autorizzazioni di sicurezza di un documento PDF usando la classe DocumentPrivilege in C#.
// Apri documento
Document document = new Document("Encrypt.pdf");
// Applica restrizioni a tutti i privilegi
DocumentPrivilege privileges = DocumentPrivilege.ForbidAll;
// Consenti i privilegi desiderati
privileges.AllowScreenReaders = true;
privileges.AllowPrint = true;
// Cripta PDF
document.Encrypt("user_password", "owner_password", privileges, CryptoAlgorithm.RC4x128, false);
// Salva PDF aggiornato
document.Save("Encrypted PDF.pdf");
Di seguito sono riportati i dettagli di sicurezza del documento PDF che abbiamo crittografato in questa sezione.

Conclusione
In questo articolo, hai seguito i passaggi su come crittografare e decrittografare i documenti PDF utilizzando C#. Inoltre, hai anche imparato come impostare o modificare i permessi di sicurezza di un documento PDF in C#. Queste funzionalità di sicurezza consentono di proteggere i documenti PDF sensibili utilizzando la password e gli algoritmi crittografici, nonché di limitare l’accesso dell’utente alle operazioni relative ai documenti. Puoi consultare la documentazione per saperne di più sulla nostra libreria PDF .NET.