DESEngine (jTDS API)
Keywords: net.sourceforge.jtds.util.DESEngine class

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## net.sourceforge.jtds.util
Class DESEngine

    java.lang.Object
      net.sourceforge.jtds.util.DESEngine

public class DESEngine
extends java.lang.Object

a class that provides a basic DES engine. Modified by Matt Brinkley (mdb) ... mainly just removed depends on external classes.

Version:
  $Id: DESEngine.java,v 1.3.6.1 2009/08/04 10:33:54 ickzon Exp $
Author:
  Matt Brinkley

Field Summary
`(package private) static int[]` | `bigbyte`
`protected static int` | `BLOCK_SIZE`
`(package private) static short[]` | `bytebit`
`(package private) static short[]` | `Df_Key` what follows is mainly taken from "Applied Cryptography", by Bruce Schneier, however it also bears great resemblance to Richard Outerbridge's D3DES...
`(package private) static byte[]` | `pc1`
`(package private) static byte[]` | `pc2`
`(package private) static int[]` | `SP1`
`(package private) static int[]` | `SP2`
`(package private) static int[]` | `SP3`
`(package private) static int[]` | `SP4`
`(package private) static int[]` | `SP5`
`(package private) static int[]` | `SP6`
`(package private) static int[]` | `SP7`
`(package private) static int[]` | `SP8`
`(package private) static byte[]` | `totrot`
`private int[]` | `workingKey`

Constructor Summary
`DESEngine()` standard constructor.
`DESEngine(boolean encrypting, byte[] key)` mdb: convenient 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)` 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.
`int` | `processBlock(byte[] in, int inOff, byte[] out, int outOff)`
`void` | `reset()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### BLOCK_SIZE

    protected static final int BLOCK_SIZE

See Also:
  Constant Field Values

### workingKey

    private int[] workingKey

### Df_Key

    static short[] Df_Key

  what follows is mainly taken from "Applied Cryptography", by Bruce Schneier, however it also bears great resemblance to Richard Outerbridge's D3DES...

### bytebit

    static short[] bytebit

### bigbyte

    static int[] bigbyte

### pc1

    static byte[] pc1

### totrot

    static byte[] totrot

### pc2

    static byte[] pc2

### SP1

    static int[] SP1

### SP2

    static int[] SP2

### SP3

    static int[] SP3

### SP4

    static int[] SP4

### SP5

    static int[] SP5

### SP6

    static int[] SP6

### SP7

    static int[] SP7

### SP8

    static int[] SP8

Constructor Detail

### DESEngine

    public DESEngine()

  standard constructor.

### DESEngine

    public DESEngine(boolean encrypting,
                     byte[] key)

  mdb: convenient constructor

Method Detail

### init

    public void init(boolean encrypting,
                     byte[] key)

  initialise a DES cipher.

  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()

### processBlock

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

### reset

    public void reset()

### generateWorkingKey

    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!).

### desFunc

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

  the DES engine.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Generated on December 30 2009