PDF fájlok titkosítása

A titkosítás egy híres és megbízható módszer a PDF dokumentumok tartalmának védelmére. Amikor egy dokumentumot titkosítanak, annak tartalma olvashatatlanná válik, és csak az arra jogosult felhasználók dekódolhatják a dokumentumot, hogy hozzáférhessenek a tartalomhoz. Ha jelszóval védi a dokumentumokat, a megfelelő jelszót beíró személyek hozzáférhetnek a fájlhoz vagy mappához. Erősebb biztonsági módszer a titkosítás, amelynek gyakori típusai a 128 bites kulcs vagy a 256 bites AES titkosítás. Felhívjuk figyelmét, hogy a titkosítás olvashatatlan titkosított szöveggé változtatja a dokumentum tartalmát. A dokumentum visszafejtéséhez a jogosult felhasználóknak kulcsra van szükségük, amely általában egy jelszó vagy egy digitális tanúsítvány. Ebben a cikkben megvitatjuk a PDF-fájlok titkosításának és visszafejtésének részleteit a Java felhő SDK használatával.

Ebben a blogban a PDF-dokumentumok Java REST API használatával történő titkosításának és visszafejtésének lépéseit és részleteit tárgyaljuk.

Java REST API

Az Aspose.PDF Cloud SDK for Java az Aspose.PDF Cloud köré épülő csomag, amely lehetővé teszi a Java programozók számára, hogy teljes mértékben kihasználják a Cloud API-nkban jelenleg kínált funkciókat. Így közvetlenül a Java kódon belül megkapja a PDF fájlok létrehozásának, szerkesztésének és különféle támogatott dokumentumformátumokba való átalakításának lehetőségét.

Telepítés

Az SDK használatához az első lépés az, hogy telepítse a rendszerére. A Cloud SDK letölthető a Maven és a GitHub segítségével. Most adja hozzá a következő adatokat a pom.xml fájlhoz az Aspose.Pdf.jar letöltéséhez és a Maven build projektben való használatához.

<repositories>
 <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>https://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>

Azt is javasoljuk, hogy látogassa meg a következő linket az Aspose.Cloud SDK-k telepítése című részletes információkért.

Ingyenes előfizetés a Cloud Dashboardra

Az Aspose.PDF Cloud SDK for Java egy nyílt forráskódú ingyenes Cloud SDK PDF fájlfeldolgozáshoz. Ha az ingyeneset említjük, az azt jelenti, hogy az SDK teljes forráskódja letölthető a GitHub tárhelyről. Így a kódját igényei szerint módosíthatja. Az adatok bizalmas kezelésének és integritásának biztosítása érdekében azonban a Cloud API-k csak az arra jogosult személyek számára érhetők el, és csak az adott felhőalapú tárhelyükhöz férhetnek hozzá.

Ezért először meg kell látogatnia az Aspose.Cloud dashboard oldalt, és ha rendelkezik GitHub- vagy Google-fiókkal, egyszerűen regisztráljon. Ellenkező esetben kattintson az Új fiók létrehozása gombra, és adja meg a szükséges információkat.

PDF-fájl titkosítása a cURL paranccsal

A cURL parancsok az egyik legegyszerűbb és legmenőbb módja a REST API-k elérésének. Tehát beszéljünk arról, hogyan adhatjuk hozzá a különböző megjegyzéseket a cURL parancsokkal. Tehát a cURL parancsok használatához először létre kell hoznunk egy JWT hozzáférési jogosultsági tokent. A JSON Web Token (JWT) az ügyfélazonosítón és az ügyféltitkos adatain alapul, amelyek az egyes ügyfelek számára generált egyedi kulcsok. Tehát jelentkezzen be az Aspose.Cloud dashboard oldalra a hitelesítési adataival, és bontsa ki az Alkalmazások részt az irányítópulton, majd görgessen lefelé az Ügyfél hitelesítő adatai rész felé, hogy megtekinthesse az ügyfél-azonosítót és az ügyféltitkot.

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"

Mielőtt továbblépne, vegye figyelembe, hogy a PDF-fájlok titkosításakor felhasználói és tulajdonosi jelszavakat állítunk be.

Dokumentum megnyitási jelszava

A dokumentummegnyitási jelszó (más néven felhasználói jelszó) megköveteli, hogy a felhasználó beírjon egy jelszót a PDF megnyitásához.

Engedélyek jelszó

A jogosultsági jelszó (más néven mester/tulajdonosi jelszó) szükséges az engedélybeállítások módosításához. Az engedélyek jelszavának használata közben korlátozhatja a PDF-ben lévő tartalom nyomtatását, szerkesztését és másolását. Ez a jelszó szükséges a már alkalmazott korlátozások megváltoztatásához.

Ha a PDF mindkét típusú jelszóval védett, bármelyik jelszóval megnyitható.

Felhívjuk figyelmét, hogy az API elfogadja a tulajdonosi és felhasználói jelszavakat Base64 kódolt formátumban. A következő cURL parancsban a ownerPassword (b3duZXJcLy8/ICQxMl5QYXNzd29yZCEm) és a userPassword (dXNlciAkXlBhc3N3b3JkISY=) van megadva.

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 fájlok titkosítása Java használatával

Nem egyszerűen jelszavas védelmet adunk a PDF-fájlokhoz, hanem erősebb biztonsági módszert alkalmazunk a titkosítás. A Java REST API lehetővé teszi az alábbi titkosítási módszerek egyikének kiválasztását, amelyek a dokumentum tartalmát olvashatatlan titkosított szöveggé alakítják.

| Név | Leírás |

| ———— | ———————— |

| RC4x40 | RC4 40-es kulcshosszal. |

| RC4x128 | RC4 128-as kulcshosszal. |

| AESx128 | AES 128-as kulcshosszal. |

| AESx256 | AES 256-os kulcshosszal. |

Használja a következő kódrészletet a userPassword és a ownerPassword hozzáadásához a felhőalapú tárhelyen már elérhető PDF-fájlokhoz.

  • Az első lépés egy PdfApi-példány létrehozása, miközben argumentumként adja át a clientID és a clientSecret adatokat.
  • Töltse fel a PDF-fájlt felhőtárhelyre a PdfApi uploadFile(…) metódusával.
  • Végül hívja meg a PdfApi postEncryptDocumentInStorage(…) metódusát, amely argumentumként veszi a PDF-fájl nevét, a felhasználói és tulajdonosi jelszavakat, valamint a CryptoAlgorithm felsorolásából származó értéket.
// Szerezze be a ClientID-t és a ClientSecret-et a https://dashboard.aspose.cloud/ webhelyről
String clientId = "a41d01ef-dfd5-4e02-ad29-bd85fe41e3e4";
String clientSecret = "d87269aade6a46cdc295b711e26809af";
				
// createPdfApi példány
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
				
// PDF dokumentum bevitele
String name = "PdfWithTable.pdf";	        
			   
// Töltse be a fájlt a helyi rendszerről
File file = new File("/Users/nayyershahbaz/Downloads/" + name);
// töltse fel a fájlt a felhőtárhelyre
FilesUploadResult uploadResponse = pdfApi.uploadFile(name, file, null);
				
// base64 kódolású felhasználói és tulajdonosi jelszavak
String userPasswordBase64encoded = "dXNlciAkXlBhc3N3b3JkISY="; //user $^Password!&
String ownerPasswordBase64encoded = "b3duZXJcLy8/ICQxMl5QYXNzd29yZCEm"; //owner\//? $12^Password!&

// hívja az API-t a PDF titkosításához
AsposeResponse response  = pdfApi.postEncryptDocumentInStorage(name, userPasswordBase64encoded, ownerPasswordBase64encoded,
			                CryptoAlgorithm.AESX128.getValue(), null, null, null, null);
// API válasz nyomtatása a konzolon
System.out.println(response);

Amikor megpróbálja megnyitni az eredményül kapott fájlt, megjelenik a jelszó megadására vonatkozó felszólítás.

A PDF fájl visszafejtése a cURL paranccsal

A cURL parancs egy meglévő kódolt PDF-dokumentum visszafejtésére is használható. Az alábbi példában a PostDecryptDocumentInStorage API érhető el, amely argumentumként veszi a jelszó részleteit.

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>"

A PDF fájl visszafejtése Java használatával

A PDF fájlok Java használatával történő visszafejtéséhez kövesse az alábbi lépéseket

  • Hozzon létre PdfApi-példányt, miközben argumentumként adja át a clientSecret és az ügyfélazonosítót.
  • Hozzon létre karakterlánc-objektumot, amely meghatározza a bemeneti PDF-fájlt.
  • Töltse fel a fájlt a felhőtárhelyre a PdfApi osztály uploadFile(….) metódusával.
  • Végül hívja meg a postDecryptDocumentInStorage(…) metódust, miközben argumentumként adja meg a bemeneti PDF-fájl nevét és a visszafejtési jelszót.
// Szerezze be a ClientID-t és a ClientSecret-et a https://dashboard.aspose.cloud/ webhelyről
String clientId = "a41d01ef-dfd5-4e02-ad29-bd85fe41e3e4";
String clientSecret = "d87269aade6a46cdc295b711e26809af";
				
// createPdfApi példány
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
				
// PDF dokumentum bevitele
String name = "PdfWithTable.pdf";	        
			   
// Töltse be a fájlt a helyi rendszerről
File file = new File("/Users/nayyershahbaz/Downloads/" + name);
// töltse fel a fájlt a felhőtárhelyre
FilesUploadResult uploadResponse = pdfApi.uploadFile(name, file, null);
				
// base64 kódolású felhasználói és tulajdonosi jelszavak
String userPasswordBase64encoded = "dXNlciAkXlBhc3N3b3JkISY="; //user $^Password!&

// hívja meg az API-t a PDF visszafejtéséhez
AsposeResponse response  = pdfApi.postDecryptDocumentInStorage(name, userPasswordBase64encoded, null,null);
// API válasz nyomtatása a konzolon
System.out.println(response);

A fenti példában használt dekódolt fájl letölthető a PdfWithTable-Encrypted.pdf oldalról.

Következtetés

Ebben a blogban megvitattuk a PDF-fájlok titkosításának és visszafejtésének lépéseit a Java REST API használatával. Könnyedén titkosíthatja forrásfájljait, és megoszthatja azokat az interneten anélkül, hogy félne az adatlopástól vagy a dokumentumokkal való visszaéléstől. A titkosítási funkciókon kívül az Aspose.PDF Cloud SDK for Java a PDF formátumhoz kapcsolódó funkciók sokaságát kínálja. Az Aspose.PDF Cloud features további részleteiért érdemes meglátogatni a következő linket.

Kapcsolódó cikkek

Javasoljuk továbbá, hogy olvassa el a következő blogot, ahol további információkra van szüksége