org.bouncycastle.crypto.DefaultMultiBlockCipher Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bcprov-jdk15to18 Show documentation
Show all versions of bcprov-jdk15to18 Show documentation
The Bouncy Castle Crypto package is a Java implementation of cryptographic algorithms. This jar contains JCE provider and lightweight API for the Bouncy Castle Cryptography APIs for JDK 1.5 to JDK 1.8.
package org.bouncycastle.crypto;
public abstract class DefaultMultiBlockCipher
implements MultiBlockCipher
{
protected DefaultMultiBlockCipher()
{
}
public int getMultiBlockSize()
{
return this.getBlockSize();
}
public int processBlocks(byte[] in, int inOff, int blockCount, byte[] out, int outOff)
throws DataLengthException, IllegalStateException
{
// TODO check if the underlying cipher supports the multiblock interface and call it directly?
int resultLen = 0;
int blockSize = this.getMultiBlockSize();
for (int i = 0; i != blockCount; i++)
{
resultLen += this.processBlock(in, inOff, out, outOff + resultLen);
inOff += blockSize;
}
return resultLen;
}
}