in src/main/java/org/apache/commons/crypto/stream/CryptoOutputStream.java [95:117]
protected CryptoOutputStream(final Output output, final CryptoCipher cipher,
final int bufferSize, final Key key, final AlgorithmParameterSpec params)
throws IOException {
this.output = output;
this.bufferSize = CryptoInputStream.checkBufferSize(cipher, bufferSize);
this.cipher = cipher;
this.key = key;
this.params = params;
if (!(params instanceof IvParameterSpec)) {
// other AlgorithmParameterSpec such as GCMParameterSpec is not
// supported now.
throw new IOException("Illegal parameters");
}
inBuffer = ByteBuffer.allocateDirect(this.bufferSize);
outBuffer = ByteBuffer.allocateDirect(this.bufferSize
+ cipher.getBlockSize());
initCipher();
}