Шифруйте файли PDF

Шифрування – це відомий і надійний спосіб захисту вмісту документів PDF. Коли документ зашифровано, його вміст стає нечитабельним, і лише авторизовані користувачі можуть розшифрувати документ, щоб отримати доступ до вмісту. Якщо ви захистите документи паролем, люди, які введуть правильний пароль, зможуть отримати доступ до файлу чи папки. Надійнішим методом захисту є шифрування, з поширеними типами 128-бітного ключа або 256-бітного шифрування AES. Зауважте, що шифрування перетворює вміст документа на нечитабельний зашифрований текст. Щоб розшифрувати документ, авторизованим користувачам потрібен ключ, яким зазвичай є пароль або цифровий сертифікат. У цій статті ми збираємося обговорити деталі того, як шифрувати та розшифровувати PDF-файли за допомогою Java cloud SDK.

У цьому блозі ми збираємося обговорити кроки та деталі, пов’язані з шифруванням і дешифруванням PDF-документів за допомогою Java REST API.

Java REST API

Aspose.PDF Cloud SDK for Java — це обгортка Aspose.PDF Cloud, яка дозволяє програмістам на Java використовувати всі переваги функцій, які зараз пропонуються в нашому Cloud API. Тож у вашому коді Java ви отримуєте можливості створювати, редагувати та перетворювати PDF файли в різні підтримувані формати документів.

монтаж

Першим кроком для використання SDK є інсталяція його у вашій системі. Cloud SDK доступний для завантаження через Maven і GitHub. Тепер додайте наступні відомості у свій файл pom.xml, щоб завантажити та використовувати Aspose.Pdf.jar у проекті збірки Maven.

<repositories>
 <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>http://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>
<dependencies>
 <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-pdf-cloud</artifactId>
        <version>21.1.0</version>
        <scope>compile</scope>
    </dependency>
 </dependencies>

Ми також рекомендуємо вам перейти за наведеним нижче посиланням, щоб отримати детальну інформацію про Як інсталювати Aspose.Cloud SDKs.

Безкоштовна підписка на Cloud Dashboard

Aspose.PDF Cloud SDK For Java – це безкоштовний Cloud SDK із відкритим кодом для обробки файлів PDF. Коли ми говоримо про безкоштовність, це означає, що повний вихідний код SDK доступний для завантаження в репозиторії GitHub. Таким чином, ви можете змінити його код відповідно до ваших вимог. Але для забезпечення конфіденційності та цілісності даних хмарні API доступні лише авторизованим людям, і вони мають доступ лише до свого конкретного хмарного сховища.

Тому вам спочатку потрібно відвідати інформаційну панель Aspose.Cloud і, якщо у вас є обліковий запис GitHub або Google, просто зареєструватися. В іншому випадку натисніть кнопку Створити новий обліковий запис і надайте необхідну інформацію.

Зашифруйте файл PDF за допомогою команди cURL

Команди cURL є одним із найпростіших і найкрутіших способів доступу до REST API. Отже, давайте поговоримо про додавання різних анотацій за допомогою команд cURL. Отже, щоб використовувати команди cURL, нам потрібно спочатку згенерувати маркер авторизації доступу JWT. Веб-токен JSON (JWT) базується на ідентифікаторі клієнта та секреті клієнта, які є унікальними ключами, згенерованими для кожного клієнта. Отже, увійдіть на інформаційну панель Aspose.Cloud, використовуючи свої облікові дані, розгорніть розділ «Програми» на панелі інструментів і прокрутіть униз до розділу «Облікові дані клієнта», щоб переглянути дані про ідентифікатор клієнта та секрет клієнта.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=a41d01ef-dfd5-4e02-ad29-bd85fe41e3e4&client_secret=d87269aade6a46cdc295b711e26809af" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Перш ніж продовжити, зауважте, що під час шифрування PDF-файлів ми встановлюємо паролі користувача та власника.

Пароль відкриття документа

Пароль для відкриття документа (також відомий як пароль користувача) вимагає від користувача введення пароля для відкриття PDF-файлу.

Пароль дозволу

Пароль дозволу (також відомий як головний пароль/пароль власника) потрібен для зміни параметрів дозволу. Використовуючи пароль дозволів, ви можете обмежити друк, редагування та копіювання вмісту PDF-файлу. Цей пароль потрібен для зміни обмежень, які ви вже застосували.

Якщо PDF-файл захищено обома типами паролів, його можна відкрити будь-яким паролем.

Зверніть увагу, що API приймає паролі власника та користувача у форматі Base64. У наведеній нижче команді cURL вказано пароль власника (b3duZXJcLy8/ICQxMl5QYXNzd29yZCEm) і пароль користувача (dXNlciAkXlBhc3N3b3JkISY=).

curl -v "https://api.aspose.cloud/v3.0/pdf/PdfWithTable.pdf/encrypt?userPassword=dXNlciAkXlBhc3N3b3JkISY%3D&ownerPassword=b3duZXJcLy8%2FICQxMl5QYXNzd29yZCEm&cryptoAlgorithm=AESx128&permissionsFlags=AssembleDocument&usePdf20=false" \
-X POST \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

Шифруйте файл PDF за допомогою Java

Ми не просто додаємо захист паролем до PDF-файлів, але використовуємо надійніший метод захисту – шифрування. Java REST API дозволяє вибрати один із наведених нижче методів шифрування, які перетворюють вміст документа на нечитабельний зашифрований текст.

| Ім’я | Опис |

| ———— | ———————– |

| RC4x40 | RC4 з довжиною ключа 40. |

| RC4x128 | RC4 з довжиною ключа 128. |

| AESx128 | AES з довжиною ключа 128. |

| AESx256 | AES з довжиною ключа 256. |

Використовуйте наведений нижче фрагмент коду, щоб додати userPassword і ownerPassword до файлів PDF, які вже доступні в хмарному сховищі.

  • Першим кроком є створення екземпляра PdfApi, передаючи деталі clientID і clientSecret як аргументи.
  • Завантажте PDF-файл у хмарне сховище за допомогою методу uploadFile(…) PdfApi.
  • Нарешті, викличте метод postEncryptDocumentInStorage(…) PdfApi, який приймає в якості аргументів назву PDF-файлу, користувача та власника, а також значення з переліку CryptoAlgorithm.
// Отримайте ClientID і ClientSecret з https://dashboard.aspose.cloud/
String clientId = "a41d01ef-dfd5-4e02-ad29-bd85fe41e3e4";
String clientSecret = "d87269aade6a46cdc295b711e26809af";
				
// екземпляр createPdfApi
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
				
// вхідний документ PDF
String name = "PdfWithTable.pdf";	        
			   
// Завантажте файл з локальної системи
File file = new File("/Users/nayyershahbaz/Downloads/" + name);
// завантажити файл у хмарне сховище
FilesUploadResult uploadResponse = pdfApi.uploadFile(name, file, null);
				
// паролі користувачів і власників у кодуванні base64
String userPasswordBase64encoded = "dXNlciAkXlBhc3N3b3JkISY="; //user $^Password!&
String ownerPasswordBase64encoded = "b3duZXJcLy8/ICQxMl5QYXNzd29yZCEm"; //owner\//? $12^Password!&

// виклик API для шифрування PDF
AsposeResponse response  = pdfApi.postEncryptDocumentInStorage(name, userPasswordBase64encoded, ownerPasswordBase64encoded,
			                CryptoAlgorithm.AESX128.getValue(), null, null, null, null);
// Друк відповіді API на консолі
System.out.println(response);

Коли ви спробуєте відкрити отриманий файл, з’явиться запит на введення деталей пароля.

Розшифруйте файл PDF за допомогою команди cURL

Команду cURL також можна використовувати для розшифровки існуючого закодованого документа PDF. У наведеному нижче прикладі здійснюється доступ до API PostDecryptDocumentInStorage, який приймає деталі пароля як аргумент.

curl -X POST "https://api.aspose.cloud/v3.0/pdf/PdfWithTable.pdf/decrypt?password=dXNlciAkXlBhc3N3b3JkISY%3D" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

Розшифруйте файл PDF за допомогою Java

Щоб розшифрувати PDF-файли за допомогою Java, виконайте наведені нижче дії

  • Створіть екземпляр PdfApi, передаючи clientSecret і clientID як аргументи.
  • Створити рядковий об’єкт, що визначає вхідний файл PDF.
  • Завантажте файл у хмарне сховище за допомогою методу uploadFile(….) класу PdfApi.
  • Нарешті, викличте метод postDecryptDocumentInStorage(…), надаючи ім’я вхідного PDF-файлу та пароль для розшифровки як аргументи.
// Отримайте ClientID і ClientSecret з https://dashboard.aspose.cloud/
String clientId = "a41d01ef-dfd5-4e02-ad29-bd85fe41e3e4";
String clientSecret = "d87269aade6a46cdc295b711e26809af";
				
// екземпляр createPdfApi
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
				
// вхідний документ PDF
String name = "PdfWithTable.pdf";	        
			   
// Завантажте файл з локальної системи
File file = new File("/Users/nayyershahbaz/Downloads/" + name);
// завантажити файл у хмарне сховище
FilesUploadResult uploadResponse = pdfApi.uploadFile(name, file, null);
				
// паролі користувачів і власників у кодуванні base64
String userPasswordBase64encoded = "dXNlciAkXlBhc3N3b3JkISY="; //user $^Password!&

// виклик API для розшифровки PDF
AsposeResponse response  = pdfApi.postDecryptDocumentInStorage(name, userPasswordBase64encoded, null,null);
// Друк відповіді API на консолі
System.out.println(response);

Розшифрований файл, використаний у прикладі вище, можна завантажити з PdfWithTable-Encrypted.pdf.

Висновок

У цьому блозі ми обговорили кроки щодо шифрування та розшифрування PDF-файлів за допомогою Java REST API. Ви можете легко зашифрувати вихідні файли та поділитися ними через Інтернет, не побоюючись крадіжки даних або неправомірного використання документів. Окрім функцій шифрування, Aspose.PDF Cloud SDK для Java надає безліч функцій, пов’язаних із форматом PDF. Ви можете перейти за наведеним нижче посиланням, щоб отримати додаткові відомості про хмарні функції Aspose.PDF.

Схожі статті

Ми також рекомендуємо вам прочитати наступний блог, щоб отримати інформацію про