
Шифрування PDF використовується для захисту документа PDF від несанкціонованого доступу. Якщо PDF-документ зашифровано, його потрібно розшифрувати, щоб отримати доступ до його вмісту, інакше він залишиться нечитабельним. Найчастіше PDF-документи зашифровані паролем, необхідним для відкриття документа. З іншого боку, ви також можете обмежити права доступу до різних операцій, таких як друк, редагування, копіювання тощо. PDF-бібліотека Aspose, Aspose.PDF for .NET, надає кілька простих способів шифрування та дешифрування PDF-файли з використанням C# і VB.NET. У цій статті я покажу вам, як виконувати операції шифрування та дешифрування PDF за допомогою C#.
- Шифруйте файл PDF за допомогою C#
- Розшифруйте файл PDF за допомогою C#
- Змініть дозволи безпеки у файлі PDF
C# PDF Encryption and Decryption API – встановлення
Aspose.PDF for .NET розміщено на NuGet і його можна легко встановити за допомогою диспетчера пакетів NuGet. Крім того, ви можете завантажити DLL API з розділу Завантаження.
Шифруйте PDF-файли на C#
Щоб зашифрувати PDF-файл, вам потрібно встановити пароль, який буде потрібен для відкриття та перегляду документа. Крім того, ви повинні вказати бажаний криптографічний алгоритм як метод шифрування. Aspose.PDF for .NET підтримує такі методи шифрування:
- RC4 з 40-бітним ключем.
- RC4 зі 128-бітним ключем.
- AES з 128-бітним ключем.
- AES з 256-бітним ключем.
Кроки для шифрування файлу PDF
Нижче наведено прості кроки для шифрування документа PDF за допомогою C#.
- Завантажте PDF-документ за допомогою класу Document.
- Зашифруйте PDF-документ за допомогою пароля та криптографічного алгоритму за допомогою методу Document.Encrypt.
- Збережіть зашифрований PDF-документ за допомогою методу Document.Save.
У наведеному нижче прикладі коду показано, як зашифрувати PDF-документ за допомогою C#.
// відкритий документ
Document document = new Document("Encrypt.pdf");
// Зашифрувати PDF
document.Encrypt("user_password", "owner_password", 0 /*permissions*/, CryptoAlgorithm.RC4x128);
// Збережіть оновлений PDF
document.Save("Encrypted PDF.pdf");
Коли ви відкриєте цей зашифрований PDF-документ в Adobe Reader, з’явиться наступне діалогове вікно.

Розшифруйте файл PDF за допомогою C#
Щоб розшифрувати PDF-документ, ви повинні мати пароль користувача або власника документа. Нижче наведено прості кроки, щоб розшифрувати PDF-документ:
- Завантажте PDF-документ за допомогою класу Document, вказавши пароль користувача або власника.
- Викличте метод Document.Decrypt().
- Збережіть розшифрований документ PDF.
У наведеному нижче прикладі коду показано, як розшифрувати PDF-документ за допомогою C#.
// Відкрийте документ, вказавши пароль користувача або власника
Document document = new Document("Encrypted PDF.pdf", "user_password");
// Розшифрувати PDF
document.Decrypt();
// Збережіть оновлений PDF
document.Save("Decrypted PDF.pdf");
Зміна дозволів безпеки PDF-файлу в C#
Ви можете посилити безпеку документа PDF, обмеживши дозволи користувача. У такому випадку ви можете вказати операції, дозволені для користувачів. Нижче наведено список дозволів, які можна надати для користувача.
- Друк документа - дозволяє роздрукувати документ.
- Змінити вміст - дозволяє змінювати вміст документа.
- Витягти вміст – дозволяє скопіювати вміст із документа.
- Змінити текстові анотації - дозволяє додавати або змінювати текстові анотації.
- Заповнити форму – дозволяє заповнювати поля інтерактивної форми.
- Extract Content with Disabilities - дозволяє видобувати текст і графіку (для користувачів з обмеженими можливостями).
- Зберіть документ – дозволяє вставляти, обертати або видаляти сторінки та створювати закладки чи мініатюри зображень.
- Якість друку - дозволяє друкувати документи з високою роздільною здатністю.
Кроки для зміни дозволів безпеки PDF-файлу
Нижче наведено кроки, щоб змінити дозволи безпеки документа PDF.
- Завантажте документ PDF.
- Встановіть дозволи безпеки за допомогою методу Document.Encrypt.
- Збережіть зашифрований документ PDF.
У наведеному нижче прикладі коду показано, як змінити дозволи PDF-документа за допомогою C#.
// відкритий документ
Document document = new Document("Encrypt.pdf");
// Шифруйте PDF із дозволом на друк
document.Encrypt("user_password", "owner_password", Permissions.PrintDocument | Permissions.PrintingQuality, CryptoAlgorithm.RC4x128);
// Збережіть оновлений PDF
document.Save("Encrypted PDF.pdf");
Ще один спосіб встановити або змінити привілеї PDF-документів — це використовувати клас DocumentPrivilege. Клас DocumentPrivilege дозволяє визначати дозволи або привілеї для користувачів. У наведеному нижче прикладі коду показано, як установити дозволи безпеки PDF-документа за допомогою класу DocumentPrivilege у C#.
// відкритий документ
Document document = new Document("Encrypt.pdf");
// Застосуйте обмеження для всіх привілеїв
DocumentPrivilege privileges = DocumentPrivilege.ForbidAll;
// Надайте бажані привілеї
privileges.AllowScreenReaders = true;
privileges.AllowPrint = true;
// Зашифрувати PDF
document.Encrypt("user_password", "owner_password", privileges, CryptoAlgorithm.RC4x128, false);
// Збережіть оновлений PDF
document.Save("Encrypted PDF.pdf");
Нижче наведено деталі безпеки PDF-документа, який ми зашифрували в цьому розділі.

Висновок
У цій статті ви пройшли кроки, як зашифрувати та розшифрувати PDF-документи за допомогою C#. Крім того, ви також навчилися встановлювати або змінювати дозволи безпеки PDF-документа в C#. Ці функції безпеки дозволяють захистити конфіденційні документи PDF за допомогою пароля та криптографічних алгоритмів, а також обмежити доступ користувача до операцій, пов’язаних із документом. Ви можете переглянути документацію, щоб дізнатися більше про нашу бібліотеку .NET PDF.