public class

DESEngine

extends Object
implements BlockCipher
java.lang.Object
   ↳ org.bouncycastle.crypto.engines.DESEngine
Known Direct Subclasses

Class Overview

a class that provides a basic DES engine.

Summary

Constants
int BLOCK_SIZE
Public Constructors
DESEngine()
standard constructor.
Public Methods
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 DES 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.
Protected Methods
void desFunc(int[] wKey, byte[] in, int inOff, byte[] out, int outOff)
the DES engine.
int[] generateWorkingKey(boolean encrypting, byte[] key)
generate an integer based working key based on our secret key and what we processing we are planning to do.
[Expand]
Inherited Methods
From class java.lang.Object
From interface org.bouncycastle.crypto.BlockCipher

Constants

protected static final int BLOCK_SIZE

Constant Value: 8 (0x00000008)

Public Constructors

public DESEngine ()

standard constructor.

Public Methods

public String getAlgorithmName ()

Return the name of the algorithm the cipher implements.

Returns
  • the name of the algorithm the cipher implements.

public int getBlockSize ()

Return the block size for this cipher (in bytes).

Returns
  • the block size for this cipher in bytes.

public void init (boolean encrypting, CipherParameters params)

initialise a DES cipher.

Parameters
encrypting whether or not we are for encryption.
params the parameters required to set up the cipher.
Throws
IllegalArgumentException if the params argument is inappropriate.

public 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.

Parameters
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.
Returns
  • the number of bytes processed and produced.

public void reset ()

Reset the cipher. After resetting the cipher is in the same state as it was after the last init (if there was one).

Protected Methods

protected void desFunc (int[] wKey, byte[] in, int inOff, byte[] out, int outOff)

the DES engine.

protected int[] generateWorkingKey (boolean encrypting, byte[] key)

generate an integer based working key based on our secret key and what we processing we are planning to do. Acknowledgements for this routine go to James Gillogly & Phil Karn. (whoever, and wherever they are!).