Tento článek vám poskytuje podrobného průvodce a ukázky kódu pro programové šifrování a dešifrování souborů PDF v Javě.
V různých případech jsou dokumenty PDF před sdílením mezi zúčastněnými stranami zašifrovány. Díky šifrování je dokument zabezpečen před neoprávněným přístupem a manipulací s obsahem. Existuje několik populárních způsobů zabezpečení dokumentů PDF – šifrování PDF heslem nebo omezení přístupových oprávnění uživatele, jako je tisk, úpravy, kopírování atd. Tento článek ukazuje, jak šifrovat nebo dešifrovat PDF v Javě. Kromě toho se dozvíte, jak omezit oprávnění uživatele v dokumentu PDF.
- Java knihovna pro šifrování nebo dešifrování PDF
- Zašifrujte soubor PDF pomocí Java
- Dešifrování souboru PDF pomocí Java
- Změňte bezpečnostní oprávnění v PDF pomocí Java
Java Library pro šifrování nebo dešifrování PDF – ke stažení zdarma
Aspose.PDF for Java je knihovna pro manipulaci s PDF s bohatými funkcemi, která vám umožní bezproblémově pracovat se šifrováním a dešifrováním PDF. Kromě toho vám umožňuje programově upravovat uživatelská oprávnění v dokumentech PDF. Knihovnu si můžete stáhnout zdarma nebo si ji můžete nainstalovat pomocí následujících konfigurací Maven.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>22.12</version>
<classifier>jdk17</classifier>
</dependency>
Šifrování souboru PDF v Javě
Šifrování dokumentu PDF vyžaduje nastavení hesla, které bude použito k otevření a přístupu k dokumentu. Spolu s tím si můžete vybrat jeden z následujících kryptografických algoritmů, které budou použity při šifrování.
Níže jsou uvedeny kroky k zašifrování souboru PDF v Javě.
- Načtěte dokument PDF pomocí třídy Document.
- Šifrujte PDF pomocí metody Document.encrypt(“heslo uživatele”, “heslo vlastníka”, 0, CryptoAlgorithm).
- Uložte zašifrované PDF pomocí metody Document.save(string).
Následující ukázka kódu ukazuje, jak zašifrovat dokument PDF pomocí Java.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-pdf/Aspose.Pdf-for-Java
// otevřít dokument
Document document = new Document("input.pdf");
// šifrovat PDF
document.encrypt("user", "owner", 0, CryptoAlgorithm.AESx256);
// uložit aktualizované PDF
document.save("Encrypted_output.pdf");
Po otevření zašifrovaného PDF se zobrazí následující dialog.
Dešifrování souboru PDF v Javě
Dešifrování zašifrovaného dokumentu PDF vyžaduje heslo uživatele nebo vlastníka. Níže jsou uvedeny kroky k dešifrování souboru PDF v Javě.
- Načtěte zašifrované PDF pomocí třídy Document zadáním hesla v konstruktoru.
- K dešifrování PDF zavolejte metodu Document.decrypt().
- Uložte dešifrovaný dokument PDF pomocí metody Document.save(string).
Následující ukázka kódu ukazuje, jak dešifrovat zašifrované PDF pomocí Java.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-pdf/Aspose.Pdf-for-Java
// otevřít dokument
Document document = new Document("input.pdf", "password");
// dešifrovat PDF
document.decrypt();
// uložit aktualizované PDF
document.save("output.pdf");
Změňte bezpečnostní oprávnění v PDF pomocí Java
Můžete také omezit přístup uživatele k provádění různých operací při šifrování dokumentů PDF. Níže jsou uvedena oprávnění, která můžete nastavit.
- Tisk dokumentu – Umožňuje tisk dokumentu.
- Upravit obsah – Umožňuje úpravu obsahu.
- Extrahovat obsah – umožňuje kopírování obsahu z dokumentu.
- Upravit textové anotace – Umožňuje přidávat nebo aktualizovat textové anotace.
- Vyplnit formulář – Umožňuje vyplňování interaktivních polí formuláře.
- Extrahovat obsah se zdravotním postižením – Umožňuje extrahování textu a grafiky (pro uživatele s postižením).
- Sestavit dokument – Umožňuje vkládání, otáčení nebo mazání stránek a vytváření záložek nebo miniatur.
- Kvalita tisku – Umožňuje tisk dokumentů ve vysokém rozlišení.
Následují kroky pro nastavení nebo úpravu oprávnění v dokumentu PDF.
- Načtěte PDF pomocí třídy Document.
- K nastavení oprávnění použijte třídu DocumentPrivilege.
- Zašifrujte PDF a uložte jej jako v předchozích příkladech.
Následující ukázka kódu ukazuje, jak upravit oprávnění v dokumentu PDF pomocí Java.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-pdf/Aspose.Pdf-for-Java
Document document = new Document("inputFile.pdf");
try /* JAVA: was using */
{
DocumentPrivilege documentPrivilege = DocumentPrivilege.getForbidAll();
documentPrivilege.setAllowScreenReaders(true);
documentPrivilege.setAllowPrint(true);
document.encrypt("user", "owner", documentPrivilege, CryptoAlgorithm.AESx128, false);
document.save("outputFile.pdf");
} finally {
if (document != null)
document.dispose();
}
Níže jsou uvedena oprávnění v zašifrovaném souboru PDF.
Zdarma Java PDF Encryption Library
Můžete získat bezplatnou dočasnou licenci a šifrovat nebo dešifrovat soubory PDF bez jakýchkoli omezení.
Prozkoumejte Java PDF Library
Knihovnu Java PDF můžete prozkoumat a dozvědět se více pomocí dokumentace.
Závěr
V tomto článku jste se naučili šifrovat nebo dešifrovat soubory PDF v Javě. Kromě toho jste viděli, jak upravit uživatelská oprávnění v dokumentu PDF programově v Javě. Poskytnuté ukázky kódu můžete snadno použít ve svých aplikacích Java.