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
public abstract class Encryptor extends Object implements Cloneable
-
-
Constructor Summary
Constructors Constructor Description Encryptor()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description Encryptor
clone()
abstract void
confirmPassword(String password)
abstract void
confirmPassword(String password, byte[] keySpec, byte[] keySalt, byte[] verifier, byte[] verifierSalt, byte[] integritySalt)
ChunkedCipherOutputStream
getDataStream(OutputStream stream, int initialOffset)
abstract OutputStream
getDataStream(DirectoryNode dir)
Return a output stream for encrypted data.OutputStream
getDataStream(POIFSFileSystem fs)
EncryptionInfo
getEncryptionInfo()
static Encryptor
getInstance(EncryptionInfo info)
SecretKey
getSecretKey()
void
setChunkSize(int chunkSize)
Sets the chunk size of the data stream.void
setEncryptionInfo(EncryptionInfo encryptionInfo)
void
setSecretKey(SecretKey secretKey)
-
-
-
Method Detail
-
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:
IOException
GeneralSecurityException
-
confirmPassword
public abstract void confirmPassword(String password, byte[] keySpec, byte[] keySalt, byte[] verifier, byte[] verifierSalt, byte[] integritySalt)
-
confirmPassword
public abstract void confirmPassword(String password)
-
getInstance
public static Encryptor getInstance(EncryptionInfo info)
-
getDataStream
public OutputStream getDataStream(POIFSFileSystem fs) throws IOException, GeneralSecurityException
- Throws:
IOException
GeneralSecurityException
-
getDataStream
public ChunkedCipherOutputStream getDataStream(OutputStream stream, int initialOffset) throws IOException, GeneralSecurityException
- Throws:
IOException
GeneralSecurityException
-
getSecretKey
public SecretKey getSecretKey()
-
setSecretKey
public void setSecretKey(SecretKey secretKey)
-
getEncryptionInfo
public EncryptionInfo getEncryptionInfo()
-
setEncryptionInfo
public void setEncryptionInfo(EncryptionInfo encryptionInfo)
-
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
public Encryptor clone() throws CloneNotSupportedException
- Throws:
CloneNotSupportedException
-
-