Den här artikeln ger dig en steg-för-steg-guide och kodexempel för att kryptera och dekryptera PDF-filer programmatiskt i Java.
I olika fall krypteras PDF dokument innan de delas mellan intressenterna. Krypteringen gör dokumentet säkert från obehörig åtkomst samt innehållsmanipulation. Det finns ett par populära sätt att säkra PDF-dokument - kryptera PDF med ett lösenord eller begränsa användarens åtkomstbehörigheter som att skriva ut, redigera, kopiera, etc. Den här artikeln visar hur man krypterar eller dekrypterar en PDF i Java. Dessutom får du lära dig hur du begränsar användarens privilegier i ett PDF-dokument.
- Java-bibliotek för att kryptera eller dekryptera PDF
- Kryptera en PDF-fil med Java
- Dekryptera en PDF-fil med Java
- Ändra säkerhetsbehörigheter i en PDF-fil med Java
Java-bibliotek för att kryptera eller dekryptera PDF - Gratis nedladdning
Aspose.PDF for Java är ett funktionsrikt PDF-manipuleringsbibliotek som låter dig arbeta med PDF-kryptering och dekryptering sömlöst. Dessutom låter den dig ändra användarens privilegier i PDF-dokument programmatiskt. Du kan ladda ner biblioteket gratis eller få det installerat med hjälp av följande Maven-konfigurationer.
<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>
Kryptera en PDF-fil i Java
Kryptering av ett PDF-dokument kräver att du ställer in ett lösenord som kommer att användas för att öppna och komma åt dokumentet. Tillsammans med detta kan du välja en av följande kryptografiska algoritmer som ska användas i krypteringen.
- RC4 med en 40-bitars nyckel
- RC4 med en 128-bitars nyckel
- AES med en 128-bitars nyckel
- AES med en 256-bitars nyckel
Följande är stegen för att kryptera en PDF-fil i Java.
- Ladda PDF-dokumentet med klassen Document.
- Kryptera PDF med metoden Document.encrypt(“användarlösenord”, “ägarelösenord”, 0, CryptoAlgorithm).
- Spara den krypterade PDF-filen med metoden Document.save(string).
Följande kodexempel visar hur man krypterar ett PDF-dokument med Java.
// För fullständiga exempel och datafiler, gå till https://github.com/aspose-pdf/Aspose.Pdf-for-Java
// öppet dokument
Document document = new Document("input.pdf");
// kryptera PDF
document.encrypt("user", "owner", 0, CryptoAlgorithm.AESx256);
// spara uppdaterad PDF
document.save("Encrypted_output.pdf");
Följande dialogruta visas när du öppnar den krypterade PDF-filen.
Dekryptera en PDF-fil i Java
Dekrypteringen av ett krypterat PDF-dokument kräver användarens eller ägarens lösenord. Följande är stegen för att dekryptera en PDF-fil i Java.
- Ladda den krypterade PDF-filen med klassen Document genom att ange lösenordet i konstruktorn.
- Anropa metoden Document.decrypt() för att dekryptera PDF:en.
- Spara det dekrypterade PDF-dokumentet med metoden Document.save(string).
Följande kodexempel visar hur man dekrypterar en krypterad PDF-fil med Java.
// För fullständiga exempel och datafiler, gå till https://github.com/aspose-pdf/Aspose.Pdf-for-Java
// öppet dokument
Document document = new Document("input.pdf", "password");
// dekryptera PDF
document.decrypt();
// spara uppdaterad PDF
document.save("output.pdf");
Ändra säkerhetsbehörigheter i en PDF-fil med Java
Du kan också begränsa användarens åtkomst för att utföra olika operationer samtidigt som du krypterar PDF-dokumenten. Följande är de behörigheter du kan ställa in.
- Skriv ut dokument – Tillåter utskrift av dokument.
- Ändra innehåll – Tillåter modifiering av innehållet.
- Extrahera innehåll – Tillåter kopiering av innehållet från dokumentet.
- Ändra textkommentarer – Tillåter att lägga till eller uppdatera textkommentarer.
- Fyll i formulär – tillåter att de interaktiva formulärfälten fylls i.
- Extrahera innehåll med funktionshinder – Tillåter extrahering av text och grafik (för användare med funktionshinder).
- Montera dokument – Gör det möjligt att infoga, rotera eller ta bort sidor och skapa bokmärken eller miniatyrbilder.
- Utskriftskvalitet – Tillåter högupplösta utskrifter av dokument.
Följande är stegen för att ställa in eller ändra behörigheter i ett PDF-dokument.
- Ladda PDF:en med klassen Document.
- Använd klassen DocumentPrivilege för att ställa in behörigheterna.
- Kryptera PDF:en och spara den som du har gjort i de tidigare exemplen.
Följande kodexempel visar hur man ändrar behörigheter i ett PDF-dokument med Java.
// För fullständiga exempel och datafiler, gå till 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();
}
Följande är behörigheterna i den krypterade PDF-filen.
Gratis Java PDF-krypteringsbibliotek
Du kan få en gratis tillfällig licens och kryptera eller dekryptera PDF-filer utan några begränsningar.
Utforska Java PDF-bibliotek
Du kan utforska och lära dig mer om Java PDF-biblioteket med dokumentation.
Slutsats
I den här artikeln har du lärt dig hur du krypterar eller dekrypterar PDF-filer i Java. Dessutom har du sett hur man ändrar användarens privilegier i ett PDF-dokument programmatiskt i Java. Du kan enkelt använda de medföljande kodexemplen i dina Java-applikationer.