Class ProtectionPolicy

java.lang.Object
org.apache.pdfbox.pdmodel.encryption.ProtectionPolicy
Direct Known Subclasses:
PublicKeyProtectionPolicy, StandardProtectionPolicy

public abstract class ProtectionPolicy extends Object
This class represents the protection policy to apply to a document. Objects implementing this abstract class can be passed to the protect method of PDDocument to protect a document.
See Also:
  • Field Details

    • DEFAULT_KEY_LENGTH

      private static final short DEFAULT_KEY_LENGTH
      See Also:
    • encryptionKeyLength

      private short encryptionKeyLength
    • preferAES

      private boolean preferAES
  • Constructor Details

    • ProtectionPolicy

      public ProtectionPolicy()
  • Method Details

    • setEncryptionKeyLength

      public void setEncryptionKeyLength(int l)
      set the length in (bits) of the secret key that will be used to encrypt document data. The default value is 40 bits, which provides a low security level but is compatible with old versions of Acrobat Reader.
      Parameters:
      l - the length in bits (must be 40, 128 or 256)
    • getEncryptionKeyLength

      public int getEncryptionKeyLength()
      Get the length of the secrete key that will be used to encrypt document data.
      Returns:
      The length (in bits) of the encryption key.
    • isPreferAES

      public boolean isPreferAES()
      Tell whether AES encryption is preferred when several encryption methods are available for the chosen key length. The default is false. This setting is only relevant if the key length is 128 bits.
      Returns:
      true if AES encryption is preferred
    • setPreferAES

      public void setPreferAES(boolean preferAES)
      Set whether AES encryption is preferred when several encryption methods are available for the chosen key length. The default is false. This setting is only relevant if the key length is 128 bits.
      Parameters:
      preferAES -