Maison  >  Article  >  Java  >  Java implémente une méthode de cryptage ou de décryptage des documents PDF

Java implémente une méthode de cryptage ou de décryptage des documents PDF

王林
王林avant
2023-05-08 12:04:072320parcourir

Le cryptage des documents PDF est une fonctionnalité utilisée pour protéger le contenu des fichiers. Les documents cryptés nécessitent un mot de passe pour être ouverts et visualisés. Cette fonctionnalité empêche efficacement l’accès, la copie et la modification non autorisés des fichiers PDF. Free Spire.PDF pour Java prend en charge le cryptage et le décryptage programmatiques des documents PDF et ne nécessite pas l'installation de logiciels tiers pendant le processus.

Environnement du programme

Avant de continuer, veuillez importer le fichier jar dans le programme Java. Veuillez vous référer aux deux méthodes d'importation suivantes :

Méthode 1 : Si vous utilisez maven, vous pouvez ajouter le code suivant au pom du projet. .xml, importez le fichier jar dans l'application.

<repositories>
    <repository>
        <id>com.e-iceblue</id>
        <name>e-iceblue</name>
        <url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.pdf.free</artifactId>
        <version>5.1.0</version>
    </dependency>
</dependencies>

Méthode 2 : Si vous n'utilisez pas maven, vous pouvez télécharger Free Spire.PDF pour Java à partir de ce lien, recherchez Spire.PDF.jar dans le dossier lib et décompressez-le puis créez un nouveau projet dans IDEA, Cliquez sur "Fichier", "Structure du projet", "Modules", "Dépendances", puis cliquez sur la première option "fichier jar" sous le "+" vert à droite "JAR ou répertoires" (JAR ou répertoires), recherchez le décompressé Spire.PDF.jar, cliquez sur Confirmer pour l'importer dans le projet.

Crypter le document PDF

Créez une instance PdfDocument.

Utilisez la méthode PdfDocument.loadFromFile() pour charger l'exemple de document PDF.

Définissez le mot de passe d'ouverture, le mot de passe d'autorisation, la taille de la clé de cryptage et les autorisations.

Utilisez la méthode PdfDocument.getSecurity().encrypt(java.lang.String openPassword, java.lang.String permissionPassword, java.util.EnumSet permissions, PdfEncryptionKeySize keySize) pour crypter les fichiers PDF.

Utilisez la méthode PdfDocument.saveToFile() pour enregistrer le document résultant.

import java.util.EnumSet;

import com.spire.pdf.PdfDocument;
import com.spire.pdf.security.PdfEncryptionKeySize;
import com.spire.pdf.security.PdfPermissionsFlags;

public class EncryptPDF {

    public static void main(String[] args) {

        //创建PdfDocument实例
        PdfDocument pdf = new PdfDocument();

        //加载PDF示例文档
        pdf.loadFromFile("sample.pdf");

        //加密文档
        PdfEncryptionKeySize keySize = PdfEncryptionKeySize.Key_128_Bit;
        String openPassword = "123456";
        String permissionPassword = "abcdef";
        EnumSet flags = EnumSet.of(PdfPermissionsFlags.Print, PdfPermissionsFlags.Fill_Fields);
        pdf.getSecurity().encrypt(openPassword, permissionPassword, flags, keySize);

        //保存文档
        pdf.saveToFile("Encrypt.pdf");
        pdf.close();

    }

}

Java implémente une méthode de cryptage ou de décryptage des documents PDF

Déchiffrer le document PDF

Créez une instance PdfDocument.

Utilisez la méthode PdfDocument.loadFromFile(java.lang.String filename, java.lang.String password) pour charger le document PDF crypté.

Décryptez le PDF en utilisant PdfDocument.getSecurity().encrypt(java.lang.String openPassword, java.lang.String permissionPassword, java.util.EnumSet permissions, PdfEncryptionKeySize keySize, java.lang.String originalPermissionPassword) document de méthode .

Utilisez la méthode PdfDocument.saveToFile() pour enregistrer le fichier de résultat.

import com.spire.pdf.PdfDocument;
import com.spire.pdf.security.PdfEncryptionKeySize;
import com.spire.pdf.security.PdfPermissionsFlags;

public class DecryptPDF {

    public static void main(String[] args) throws Exception {

        //创建PdfDocument实例
        PdfDocument pdf = new PdfDocument();
        
        //加载加密文档
        pdf.loadFromFile("Encrypt.pdf", "123456");

        //解密文档
        pdf.getSecurity().encrypt("", "", PdfPermissionsFlags.getDefaultPermissions(), PdfEncryptionKeySize.Key_256_Bit, "abcdef");

        //保存文档
        pdf.saveToFile("Decrypt.pdf");
        pdf.close();
    }

Java implémente une méthode de cryptage ou de décryptage des documents PDF

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer