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 java.lang.Object
    implements BlockCipher

DES.

### Constructor Summary

Constructors
`DES()` standard constructor.

### Method Summary

All Methods Instance Methods Concrete Methods
`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.
`java.lang.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 Detail

#### DES

    public DES()

standard constructor.

### Method Detail

#### 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:
  `java.lang.IllegalArgumentException` - if the params argument is inappropriate.

#### getAlgorithmName

    public java.lang.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 & Phil Karn. (whoever, and wherever they are!).

#### desFunc

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

the DES engine.