org.bouncycastle.crypto.engines

Class RC4Engine

Implemented Interfaces:
StreamCipher

public class RC4Engine
extends java.lang.Object
implements StreamCipher

Method Summary

String
getAlgorithmName()
Return the name of the algorithm the cipher implements.
void
init(boolean forEncryption, CipherParameters params)
initialise a RC4 cipher.
void
processBytes(byte[] in, int inOff, int len, byte[] out, int outOff)
process a block of bytes from in putting the result into out.
void
reset()
reset the cipher.
byte
returnByte(byte in)
encrypt/decrypt a single byte returning the result.

Method Details

getAlgorithmName

public String getAlgorithmName()
Return the name of the algorithm the cipher implements.
Specified by:
getAlgorithmName in interface StreamCipher

Returns:
the name of the algorithm the cipher implements.


init

public void init(boolean forEncryption,
                 CipherParameters params)
initialise a RC4 cipher.
Specified by:
init in interface StreamCipher

Parameters:
forEncryption - whether or not we are for encryption.
params - the parameters required to set up the cipher.


processBytes

public void processBytes(byte[] in,
                         int inOff,
                         int len,
                         byte[] out,
                         int outOff)
process a block of bytes from in putting the result into out.
Specified by:
processBytes in interface StreamCipher

Parameters:
in - the input byte array.
inOff - the offset into the in array where the data to be processed starts.
len - the number of bytes to be processed.
out - the output buffer the processed bytes go into.
outOff - the offset into the output byte array the processed data stars at.


reset

public void reset()
reset the cipher. This leaves it in the same state it was at after the last init (if there was one).
Specified by:
reset in interface StreamCipher


returnByte

public byte returnByte(byte in)
encrypt/decrypt a single byte returning the result.
Specified by:
returnByte in interface StreamCipher

Parameters:
in - the byte to be processed.

Returns:
the result of processing the input byte.