org.apache.poi.poifs.crypt.cryptoapi
Class CryptoAPIEncryptor
java.lang.Object
org.apache.poi.poifs.crypt.Encryptor
org.apache.poi.poifs.crypt.cryptoapi.CryptoAPIEncryptor
public class CryptoAPIEncryptor
- extends Encryptor
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CryptoAPIEncryptor
protected CryptoAPIEncryptor(CryptoAPIEncryptionInfoBuilder builder)
confirmPassword
public void confirmPassword(java.lang.String password)
- Specified by:
confirmPassword
in class Encryptor
confirmPassword
public void confirmPassword(java.lang.String password,
byte[] keySpec,
byte[] keySalt,
byte[] verifier,
byte[] verifierSalt,
byte[] integritySalt)
- Specified by:
confirmPassword
in class Encryptor
initCipherForBlock
public javax.crypto.Cipher initCipherForBlock(javax.crypto.Cipher cipher,
int block)
throws java.security.GeneralSecurityException
- Initializes a cipher object for a given block index for encryption
- Parameters:
cipher
- may be null, otherwise the given instance is reset to the new block indexblock
- the block index, e.g. the persist/slide id (hslf)
- Returns:
- a new cipher object, if cipher was null, otherwise the reinitialized cipher
- Throws:
java.security.GeneralSecurityException
getDataStream
public java.io.OutputStream getDataStream(DirectoryNode dir)
throws java.io.IOException,
java.security.GeneralSecurityException
- Encrypt the Document-/SummaryInformation and other optionally streams.
Opposed to other crypto modes, cryptoapi is record based and can't be used
to stream-encrypt a whole file
- Specified by:
getDataStream
in class Encryptor
- Parameters:
dir
- the node to write to
- Returns:
- encrypted stream
- Throws:
java.io.IOException
java.security.GeneralSecurityException
- See Also:
- 2.3.5.4 RC4 CryptoAPI Encrypted Summary Stream
getKeySizeInBytes
protected int getKeySizeInBytes()
createEncryptionInfoEntry
protected void createEncryptionInfoEntry(DirectoryNode dir)
throws java.io.IOException
- Throws:
java.io.IOException
Copyright 2016 The Apache Software Foundation or
its licensors, as applicable.