## 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
`DES()` standard constructor.

Method Summary
`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.