Package org.apache.poi.poifs.crypt
Class Encryptor
java.lang.Object
org.apache.poi.poifs.crypt.Encryptor
- All Implemented Interfaces:
Cloneable
- Direct Known Subclasses:
AgileEncryptor,BinaryRC4Encryptor,CryptoAPIEncryptor,StandardEncryptor,XOREncryptor
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionclone()abstract voidconfirmPassword(String password) abstract voidconfirmPassword(String password, byte[] keySpec, byte[] keySalt, byte[] verifier, byte[] verifierSalt, byte[] integritySalt) getDataStream(OutputStream stream, int initialOffset) abstract OutputStreamReturn a output stream for encrypted data.static EncryptorgetInstance(EncryptionInfo info) voidsetChunkSize(int chunkSize) Sets the chunk size of the data stream.voidsetEncryptionInfo(EncryptionInfo encryptionInfo) voidsetSecretKey(SecretKey secretKey)
-
Field Details
-
DEFAULT_POIFS_ENTRY
- See Also:
-
-
Constructor Details
-
Encryptor
public Encryptor()
-
-
Method Details
-
getDataStream
public abstract OutputStream getDataStream(DirectoryNode dir) throws IOException, GeneralSecurityException Return a output stream for encrypted data.- Parameters:
dir- the node to write to- Returns:
- encrypted stream
- Throws:
IOExceptionGeneralSecurityException
-
confirmPassword
public abstract void confirmPassword(String password, byte[] keySpec, byte[] keySalt, byte[] verifier, byte[] verifierSalt, byte[] integritySalt) -
confirmPassword
-
getInstance
-
getDataStream
- Throws:
IOExceptionGeneralSecurityException
-
getDataStream
public ChunkedCipherOutputStream getDataStream(OutputStream stream, int initialOffset) throws IOException, GeneralSecurityException - Throws:
IOExceptionGeneralSecurityException
-
getSecretKey
-
setSecretKey
-
getEncryptionInfo
-
setEncryptionInfo
-
setChunkSize
public void setChunkSize(int chunkSize) Sets the chunk size of the data stream. Needs to be set before the data stream is requested. When not set, the implementation uses method specific default values- Parameters:
chunkSize- the chunk size, i.e. the block size with the same encryption key
-
clone
- Overrides:
clonein classObject- Throws:
CloneNotSupportedException
-