Class PublicKeySecurityHandler
- java.lang.Object
-
- org.apache.pdfbox.pdmodel.encryption.SecurityHandler
-
- org.apache.pdfbox.pdmodel.encryption.PublicKeySecurityHandler
-
public final class PublicKeySecurityHandler extends SecurityHandler
This class implements the public key security handler described in the PDF specification.- Author:
- Benoit Guillon
- See Also:
to see how to protect document with this security handler.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
FILTER
The filter name.-
Fields inherited from class org.apache.pdfbox.pdmodel.encryption.SecurityHandler
encryptionKey, keyLength
-
-
Constructor Summary
Constructors Constructor Description PublicKeySecurityHandler()
Constructor.PublicKeySecurityHandler(PublicKeyProtectionPolicy publicKeyProtectionPolicy)
Constructor used for encryption.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
prepareDocumentForEncryption(PDDocument doc)
Prepare the document for encryption.void
prepareForDecryption(PDEncryption encryption, COSArray documentIDArray, DecryptionMaterial decryptionMaterial)
Prepares everything to decrypt the document.-
Methods inherited from class org.apache.pdfbox.pdmodel.encryption.SecurityHandler
computeVersionNumber, decrypt, decryptStream, encryptDataRC4, encryptDataRC4, encryptStream, encryptString, getCurrentAccessPermission, getEncryptionKey, getKeyLength, getProtectionPolicy, hasProtectionPolicy, isAES, setAES, setCurrentAccessPermission, setCustomSecureRandom, setDecryptMetadata, setEncryptionKey, setKeyLength, setProtectionPolicy, setStreamFilterName, setStringFilterName
-
-
-
-
Field Detail
-
FILTER
public static final java.lang.String FILTER
The filter name.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
PublicKeySecurityHandler
public PublicKeySecurityHandler()
Constructor.
-
PublicKeySecurityHandler
public PublicKeySecurityHandler(PublicKeyProtectionPolicy publicKeyProtectionPolicy)
Constructor used for encryption.- Parameters:
publicKeyProtectionPolicy
- The protection policy.
-
-
Method Detail
-
prepareForDecryption
public void prepareForDecryption(PDEncryption encryption, COSArray documentIDArray, DecryptionMaterial decryptionMaterial) throws java.io.IOException
Prepares everything to decrypt the document.- Specified by:
prepareForDecryption
in classSecurityHandler
- Parameters:
encryption
- encryption dictionary, can be retrieved viaPDDocument.getEncryption()
documentIDArray
- document id which is returned viaCOSDocument.getDocumentID()
(not used by this handler)decryptionMaterial
- Information used to decrypt the document.- Throws:
java.io.IOException
- If there is an error accessing data. If verbose mode is enabled, the exception message will provide more details why the match wasn't successful.
-
prepareDocumentForEncryption
public void prepareDocumentForEncryption(PDDocument doc) throws java.io.IOException
Prepare the document for encryption.- Specified by:
prepareDocumentForEncryption
in classSecurityHandler
- Parameters:
doc
- The document that will be encrypted.- Throws:
java.io.IOException
- If there is an error while encrypting.
-
-