|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.pdfbox.pdmodel.encryption.SecurityHandler
This class represents a security handler as described in the PDF specifications. A security handler is responsible of documents protection.
| Field Summary | |
protected AccessPermission |
currentAccessPermission
The access permission granted to the current user for the document. |
protected PDDocument |
document
The document whose security is handled by this security handler. |
protected byte[] |
encryptionKey
The encryption key that will used to encrypt / decrypt. |
protected int |
keyLength
The length of the secret key used to encrypt the document. |
protected ARCFour |
rc4
The RC4 implementation used for cryptographic functions. |
protected int |
version
The value of V field of the Encryption dictionary. |
| Constructor Summary | |
SecurityHandler()
|
|
| Method Summary | |
abstract void |
decryptDocument(PDDocument doc,
DecryptionMaterial mat)
Prepare the document for decryption. |
void |
decryptStream(COSStream stream,
long objNum,
long genNum)
This will decrypt a stream. |
void |
decryptString(COSString string,
long objNum,
long genNum)
This will decrypt a string. |
void |
encryptData(long objectNumber,
long genNumber,
InputStream data,
OutputStream output)
Encrypt a set of data. |
AccessPermission |
getCurrentAccessPermission()
Returns the access permissions that were computed during document decryption. |
int |
getKeyLength()
Getter of the property keyLength. |
abstract void |
prepareDocumentForEncryption(PDDocument doc)
Prepare the document for encryption. |
protected void |
proceedDecryption()
This method must be called by an implementation of this class to really proceed to decryption. |
void |
setKeyLength(int keyLen)
Setter of the property keyLength. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
protected int version
protected int keyLength
protected byte[] encryptionKey
protected PDDocument document
protected ARCFour rc4
protected AccessPermission currentAccessPermission
| Constructor Detail |
public SecurityHandler()
| Method Detail |
public abstract void prepareDocumentForEncryption(PDDocument doc)
throws CryptographyException,
IOException
doc - The document that will be encrypted.
CryptographyException - If there is an error while preparing.
IOException - If there is an error with the document.
public abstract void decryptDocument(PDDocument doc,
DecryptionMaterial mat)
throws CryptographyException,
IOException
doc - The document to decrypt.mat - Information required to decrypt the document.
CryptographyException - If there is an error while preparing.
IOException - If there is an error with the document.
protected void proceedDecryption()
throws IOException,
CryptographyException
IOException - If there is an error in the decryption.
CryptographyException - If there is an error in the decryption.
public void encryptData(long objectNumber,
long genNumber,
InputStream data,
OutputStream output)
throws CryptographyException,
IOException
objectNumber - The data object number.genNumber - The data generation number.data - The data to encrypt.output - The output to write the encrypted data to.
CryptographyException - If there is an error during the encryption.
IOException - If there is an error reading the data.
public void decryptStream(COSStream stream,
long objNum,
long genNum)
throws CryptographyException,
IOException
stream - The stream to decrypt.objNum - The object number.genNum - The object generation number.
CryptographyException - If there is an error getting the stream.
IOException - If there is an error getting the stream data.
public void decryptString(COSString string,
long objNum,
long genNum)
throws CryptographyException,
IOException
string - the string to decrypt.objNum - The object number.genNum - The object generation number.
CryptographyException - If an error occurs during decryption.
IOException - If an error occurs writing the new string.public int getKeyLength()
public void setKeyLength(int keyLen)
keyLen - The keyLength to set.public AccessPermission getCurrentAccessPermission()
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||