|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.bouncycastle.crypto.engines.RC2Engine
public class RC2Engine
an implementation of RC2 as described in RFC 2268 "A Description of the RC2(r) Encryption Algorithm" R. Rivest.
Field Summary | |
---|---|
private static int |
BLOCK_SIZE
|
private boolean |
encrypting
|
private static byte[] |
piTable
|
private int[] |
workingKey
|
Constructor Summary | |
---|---|
RC2Engine()
|
Method Summary | |
---|---|
private void |
decryptBlock(byte[] in,
int inOff,
byte[] out,
int outOff)
|
private void |
encryptBlock(byte[] in,
int inOff,
byte[] out,
int outOff)
|
private int[] |
generateWorkingKey(byte[] key,
int bits)
|
java.lang.String |
getAlgorithmName()
Return the name of the algorithm the cipher implements. |
int |
getBlockSize()
Return the block size for this cipher (in bytes). |
void |
init(boolean encrypting,
CipherParameters params)
initialise a RC2 cipher. |
int |
processBlock(byte[] in,
int inOff,
byte[] out,
int outOff)
Process one block of input from the array in and write it to the out array. |
void |
reset()
Reset the cipher. |
private int |
rotateWordLeft(int x,
int y)
return the result rotating the 16 bit number in x left by y |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static byte[] piTable
private static final int BLOCK_SIZE
private int[] workingKey
private boolean encrypting
Constructor Detail |
---|
public RC2Engine()
Method Detail |
---|
private int[] generateWorkingKey(byte[] key, int bits)
public void init(boolean encrypting, CipherParameters params)
init
in interface BlockCipher
encrypting
- whether or not we are for encryption.params
- the parameters required to set up the cipher.
java.lang.IllegalArgumentException
- if the params argument is
inappropriate.public void reset()
BlockCipher
reset
in interface BlockCipher
public java.lang.String getAlgorithmName()
BlockCipher
getAlgorithmName
in interface BlockCipher
public int getBlockSize()
BlockCipher
getBlockSize
in interface BlockCipher
public final int processBlock(byte[] in, int inOff, byte[] out, int outOff)
BlockCipher
processBlock
in interface BlockCipher
in
- the array containing the input data.inOff
- offset into the in array the data starts at.out
- the array the output data will be copied into.outOff
- the offset into the out array the output will start at.
private int rotateWordLeft(int x, int y)
private void encryptBlock(byte[] in, int inOff, byte[] out, int outOff)
private void decryptBlock(byte[] in, int inOff, byte[] out, int outOff)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |