C#/VB.NET: crittografa o decrittografa i file PDF

2023-08-07 03:34:04

Installato tramite NuGet

PM> Install-Package Spire.PDF

Link correlati

La crittografia dei PDF è un compito cruciale quando si tratta di condividere documenti riservati su Internet. Crittografando i file PDF con password complesse, è possibile proteggere i dati del file dall'accesso da parte di soggetti non autorizzati. In alcuni casi, potrebbe anche essere necessario rimuovere la password per rendere pubblico il documento. In questo articolo imparerai a programmaticamente crittografare o decrittografare un file PDF utilizzando Spire.PDF for .NET.

Installa Spire.PDF for .NET

Per cominciare, è necessario aggiungere i file DLL inclusi nel pacchetto Spire.PDF for.NET come riferimenti nel progetto .NET. I file DLL possono essere scaricati da questo link o installato tramite NuGet.

PM> Install-Package Spire.PDF

Crittografare un file PDF con password

Esistono due tipi di password per crittografare un file PDF: password di apertura e password di autorizzazione. Il primo è impostato per aprire il file PDF, mentre il secondo è impostato per limitare la stampa, la copia dei contenuti, i commenti, ecc. Se un file PDF è protetto con entrambi i tipi di password, può essere aperto con entrambe le password.

Il metodo PdfSecurity.Encrypt(string openPassword, string permissionPassword, PdfPermissionsFlags permissions, PdfEncryptionKeySize keySize) offerto da Spire.PDF for .NET consente di impostare sia la password di apertura che la password di autorizzazione per crittografare i file PDF. I passaggi dettagliati sono i seguenti.

  • Creare un oggetto PdfDocument.
  • Carica un file PDF di esempio utilizzando il metodo PdfDocument.LoadFromFile().
  • Ottiene i parametri di sicurezza del documento utilizzando la proprietà PdfDocument.Security.
  • Crittografare il file PDF con password di apertura e password di autorizzazione utilizzando il metodo PdfSecurity.Encrypt(string openPassword, string permissionPassword, PdfPermissionsFlags, PdfEncryptionKeySize keySize).
  • Salvare il file dei risultati utilizzando il metodo PdfDocument.SaveToFile().
  • C#
  • VB.NET
using Spire.Pdf;
    using Spire.Pdf.Security;
    
    namespace EncryptPDF
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a PdfDocument object
                PdfDocument pdf = new PdfDocument();
    
                //Load a sample PDF file
                pdf.LoadFromFile(@"E:\Files\sample.pdf");
    
                //Encrypt the PDF file with password
                pdf.Security.Encrypt("open", "permission", PdfPermissionsFlags.Print | PdfPermissionsFlags.CopyContent, PdfEncryptionKeySize.Key128Bit);
    
                //Save the result file
                pdf.SaveToFile("Encrypt.pdf", FileFormat.PDF);
            }
        }
    }

C#/VB.NET: Encrypt or Decrypt PDF Files

Rimuovi la password per decrittografare un file PDF

Quando è necessario rimuovere la password da un file PDF, è possibile impostare la password di apertura e la password di autorizzazione su vuoto durante la chiamata al metodo PdfSecurity.Encrypt(string openPassword, string permissionPassword, PdfPermissionsFlags, PdfEncryptionKeySize keySize, string originalPermissionPassword). I passaggi dettagliati sono i seguenti.

  • Creare un oggetto PdfDocument.
  • Caricare il file PDF crittografato con password utilizzando il metodo PdfDocument.LoadFromFile (nome file stringa, password stringa).
  • Ottiene i parametri di sicurezza del documento utilizzando la proprietà PdfDocument.Security.
  • Decrittografare il file PDF impostando la password di apertura e la password di autorizzazione su vuoto utilizzando PdfSecurity.Encrypt(string openPassword, string permissionPassword, PdfPermissionsFlags permissions, PdfEncryptionKeySize keySize, string originalPermissionPassword) metodo.
  • Salvare il file dei risultati utilizzando il metodo PdfDocument.SaveToFile().
  • C#
  • VB.NET
using Spire.Pdf;
    using Spire.Pdf.Security;
    
    namespace DecryptPDF
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a PdfDocument object
                PdfDocument pdf = new PdfDocument();
    
                //Load the encrypted PDF file with password
                pdf.LoadFromFile("Encrypt.pdf", "open");
    
                //Set the password as empty to decrypt PDF
                pdf.Security.Encrypt(string.Empty, string.Empty, PdfPermissionsFlags.Default, PdfEncryptionKeySize.Key128Bit, "permission");
    
                //Save the result file
                pdf.SaveToFile("Decrypt.pdf", FileFormat.PDF);
            }
        }
    } 

C#/VB.NET: Encrypt or Decrypt PDF Files

Richiedi una licenza temporanea

Se desideri rimuovere il messaggio di valutazione dai documenti generati o eliminare le limitazioni delle funzioni, per favore richiedere una licenza di prova di 30 giorni per te.

Guarda anche