Package com.trilead.ssh2.crypto.cipher

# Class DES

java.lang.Object
com.trilead.ssh2.crypto.cipher.DES

All Implemented Interfaces:
  `BlockCipher`

Direct Known Subclasses:
  `DESede`

public class DES extends Object implements BlockCipher
DES.

## Constructor Summary

Constructors
Constructor
Description
`DES()`
standard constructor.

## Method Summary

Modifier and Type
Method
Description
`protected void`
`desFunc(int[] wKey, byte[] in, int inOff, byte[] out, int outOff)`
the DES engine.
`protected int[]`
`generateWorkingKey(boolean encrypting, byte[] key, int off)`
generate an integer based working key based on our secret key and what we processing we are planning to do.
`String`
`getAlgorithmName()`
`int`
`getBlockSize()`
`void`
`init(boolean encrypting, byte[] key)`
initialise a DES cipher.
`void`
`reset()`
`void`
`transformBlock(byte[] in, int inOff, byte[] out, int outOff)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### DES

public DES()
standard constructor.

## Method Details

### init

public void init(boolean encrypting, byte[] key)
initialise a DES cipher.

Specified by:
  `init` in interface `BlockCipher`
Parameters:
  `encrypting` - whether or not we are for encryption.
  `key` - the parameters required to set up the cipher.
Throws:
  `IllegalArgumentException` - if the params argument is inappropriate.

### getAlgorithmName

public String getAlgorithmName()

### getBlockSize

public int getBlockSize()

Specified by:
  `getBlockSize` in interface `BlockCipher`

### transformBlock

public void transformBlock(byte[] in, int inOff, byte[] out, int outOff)

Specified by:
  `transformBlock` in interface `BlockCipher`

### reset

public void reset()

### generateWorkingKey

protected int[] generateWorkingKey(boolean encrypting, byte[] key, int off)
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 invalid input: '&' Phil Karn. (whoever, and wherever they are!).

### desFunc

protected void desFunc(int[] wKey, byte[] in, int inOff, byte[] out, int outOff)
the DES engine.