org.bouncycastle.crypto.engines
public class IDEAEngine extends Object implements BlockCipher
This implementation is based on the "HOWTO: INTERNATIONAL DATA ENCRYPTION ALGORITHM" implementation summary by Fauzan Mirza (F.U.Mirza@sheffield.ac.uk). (baring 1 typo at the end of the mulinv function!).
It can be found at ftp://ftp.funet.fi/pub/crypt/cryptography/symmetric/idea/
Note: This algorithm is patented in the USA, Japan, and Europe including at least Austria, France, Germany, Italy, Netherlands, Spain, Sweden, Switzerland and the United Kingdom. Non-commercial use is free, however any commercial products are liable for royalties. Please see www.mediacrypt.com for further details. This announcement has been included at the request of the patent holders.
Field Summary | |
---|---|
protected static int | BLOCK_SIZE |
Constructor Summary | |
---|---|
IDEAEngine()
standard constructor. |
Method Summary | |
---|---|
String | getAlgorithmName() |
int | getBlockSize() |
void | init(boolean forEncryption, CipherParameters params)
initialise an IDEA cipher.
|
int | processBlock(byte[] in, int inOff, byte[] out, int outOff) |
void | reset() |
Parameters: forEncryption whether or not we are for encryption. params the parameters required to set up the cipher.
Throws: IllegalArgumentException if the params argument is inappropriate.