java.lang.Object
com.lowagie.text.pdf.PdfEncryption
- Author:
- Paulo Soares (psoares@consiste.pt), Kazuya Ujihara
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intprotected PdfPublicKeySecurityHandlerThe public key security handler for certificate encryptionstatic final intstatic final int -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddRecipient(Certificate cert, int permission) intcalculateStreamSize(int n) byte[]computeUserPassword(byte[] ownerPassword) static byte[]static PdfObjectcreateInfoId(byte[] id) static PdfObjectcreateInfoId(byte[] idPartOne, byte[] idPartTwo) booleandecryptAndCheckPerms(byte[] permsValue) implements step f of Algorithm 2.A: Retrieving the file encryption key from an encrypted document in order to decrypt it (revision 6 and later) - ISO 32000-2 section 7.6.4.3.3byte[]decryptByteArray(byte[] b) byte[]encryptByteArray(byte[] b) intstatic byte[]getFileIdChangingPart(PdfObject fileId) This method returns a changing part of thefileIdwhen can be identified.booleanIndicates if only the embedded files have to be encrypted.booleanvoidsetCryptoMode(int mode, int kl) voidsetHashKey(int number, int generation) voidsetupAllKeys(byte[] userPassword, byte[] ownerPassword, int permissions) voidsetupByEncryptionKey(byte[] key, int keylength) voidsetupByOwnerPassword(byte[] documentID, byte[] ownerPassword, byte[] uValue, byte[] ueValue, byte[] oValue, byte[] oeValue, int permissions) implements step d of Algorithm 2.A: Retrieving the file encryption key from an encrypted document in order to decrypt it (revision 6 and later) - ISO 32000-2 section 7.6.4.3.3voidsetupByOwnerPassword(byte[] documentID, byte[] ownerPassword, byte[] userKey, byte[] ownerKey, int permissions) voidsetupByUserPassword(byte[] documentID, byte[] userPassword, byte[] uValue, byte[] ueValue, byte[] oValue, byte[] oeValue, int permissions) implements step e of Algorithm 2.A: Retrieving the file encryption key from an encrypted document in order to decrypt it (revision 6 and later) - ISO 32000-2 section 7.6.4.3.3voidsetupByUserPassword(byte[] documentID, byte[] userPassword, byte[] ownerKey, int permissions)
-
Field Details
-
STANDARD_ENCRYPTION_40
public static final int STANDARD_ENCRYPTION_40- See Also:
-
STANDARD_ENCRYPTION_128
public static final int STANDARD_ENCRYPTION_128- See Also:
-
AES_128
public static final int AES_128- See Also:
-
AES_256_V3
public static final int AES_256_V3- See Also:
-
publicKeyHandler
The public key security handler for certificate encryption
-
-
Constructor Details
-
PdfEncryption
public PdfEncryption() -
PdfEncryption
-
-
Method Details
-
createDocumentId
public static byte[] createDocumentId() -
createInfoId
-
createInfoId
-
getFileIdChangingPart
This method returns a changing part of thefileIdwhen can be identified. Returns a completefileIdof the changing part is not found.- Parameters:
fileId-PdfObject- Returns:
- byte array representing the changing part of the document identifier
-
setCryptoMode
public void setCryptoMode(int mode, int kl) -
getCryptoMode
public int getCryptoMode() -
isMetadataEncrypted
public boolean isMetadataEncrypted() -
isEmbeddedFilesOnly
public boolean isEmbeddedFilesOnly()Indicates if only the embedded files have to be encrypted.- Returns:
- if true only the embedded files will be encrypted
- Since:
- 2.1.3
-
setupAllKeys
public void setupAllKeys(byte[] userPassword, byte[] ownerPassword, int permissions) -
setupByUserPassword
public void setupByUserPassword(byte[] documentID, byte[] userPassword, byte[] ownerKey, int permissions) - Parameters:
documentID- byte array of document iduserPassword- byte array of user passwordownerKey- byte array of owner keypermissions- permissions
-
setupByOwnerPassword
public void setupByOwnerPassword(byte[] documentID, byte[] ownerPassword, byte[] userKey, byte[] ownerKey, int permissions) - Parameters:
documentID- byte array of document idownerPassword- byte array of owner passworduserKey- byte array of user keyownerKey- byte array of owner keypermissions- permissions
-
setupByEncryptionKey
public void setupByEncryptionKey(byte[] key, int keylength) -
setHashKey
public void setHashKey(int number, int generation) -
getEncryptionDictionary
-
getFileID
-
getEncryptionStream
-
calculateStreamSize
public int calculateStreamSize(int n) -
encryptByteArray
public byte[] encryptByteArray(byte[] b) -
getDecryptor
-
decryptByteArray
public byte[] decryptByteArray(byte[] b) -
addRecipient
-
computeUserPassword
public byte[] computeUserPassword(byte[] ownerPassword) -
setupByOwnerPassword
public void setupByOwnerPassword(byte[] documentID, byte[] ownerPassword, byte[] uValue, byte[] ueValue, byte[] oValue, byte[] oeValue, int permissions) throws GeneralSecurityException implements step d of Algorithm 2.A: Retrieving the file encryption key from an encrypted document in order to decrypt it (revision 6 and later) - ISO 32000-2 section 7.6.4.3.3- Throws:
GeneralSecurityException
-
setupByUserPassword
public void setupByUserPassword(byte[] documentID, byte[] userPassword, byte[] uValue, byte[] ueValue, byte[] oValue, byte[] oeValue, int permissions) throws GeneralSecurityException implements step e of Algorithm 2.A: Retrieving the file encryption key from an encrypted document in order to decrypt it (revision 6 and later) - ISO 32000-2 section 7.6.4.3.3- Throws:
GeneralSecurityException
-
decryptAndCheckPerms
implements step f of Algorithm 2.A: Retrieving the file encryption key from an encrypted document in order to decrypt it (revision 6 and later) - ISO 32000-2 section 7.6.4.3.3- Throws:
GeneralSecurityException
-