Class PublicKeySecurityHandler
- java.lang.Object
-
- com.tom_roush.pdfbox.pdmodel.encryption.SecurityHandler
-
- com.tom_roush.pdfbox.pdmodel.encryption.PublicKeySecurityHandler
-
public final class PublicKeySecurityHandler extends SecurityHandler
This class implements the public key security handler described in the PDF specification.
-
-
Field Summary
Fields Modifier and Type Field Description static StringFILTERThe filter name.-
Fields inherited from class com.tom_roush.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 voidprepareDocumentForEncryption(PDDocument doc)Prepare the document for encryption.voidprepareForDecryption(PDEncryption encryption, COSArray documentIDArray, DecryptionMaterial decryptionMaterial)Prepares everything to decrypt the document.-
Methods inherited from class com.tom_roush.pdfbox.pdmodel.encryption.SecurityHandler
computeVersionNumber, decrypt, decryptStream, encryptDataRC4, encryptDataRC4, encryptStream, encryptString, getCurrentAccessPermission, getEncryptionKey, getKeyLength, getProtectionPolicy, hasProtectionPolicy, isAES, isDecryptMetadata, setAES, setCurrentAccessPermission, setCustomSecureRandom, setDecryptMetadata, setEncryptionKey, setKeyLength, setProtectionPolicy, setStreamFilterName, setStringFilterName
-
-
-
-
Field Detail
-
FILTER
public static final 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 IOException
Prepares everything to decrypt the document.- Specified by:
prepareForDecryptionin 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:
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 IOException
Prepare the document for encryption.- Specified by:
prepareDocumentForEncryptionin classSecurityHandler- Parameters:
doc- The document that will be encrypted.- Throws:
IOException- If there is an error while encrypting.
-
-