JavaTM 2 Platform
Std. Ed. v1.4.0

javax.crypto.spec
Class DESKeySpec

java.lang.Object
  |
  +--javax.crypto.spec.DESKeySpec
All Implemented Interfaces:
KeySpec

public class DESKeySpec
extends Object
implements KeySpec

This class specifies a DES key.

Since:
1.4

Field Summary
static int DES_KEY_LEN
          The constant which defines the length of a DES key in bytes.
 
Constructor Summary
DESKeySpec(byte[] key)
          Uses the first 8 bytes in key as the key material for the DES key.
DESKeySpec(byte[] key, int offset)
          Uses the first 8 bytes in key, beginning at offset inclusive, as the key material for the DES key.
 
Method Summary
 byte[] getKey()
          Returns the DES key material.
static boolean isParityAdjusted(byte[] key, int offset)
          Checks if the given DES key material, starting at offset inclusive, is parity-adjusted.
static boolean isWeak(byte[] key, int offset)
          Checks if the given DES key material is weak or semi-weak.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DES_KEY_LEN

public static final int DES_KEY_LEN
The constant which defines the length of a DES key in bytes.

See Also:
Constant Field Values
Constructor Detail

DESKeySpec

public DESKeySpec(byte[] key)
           throws InvalidKeyException
Uses the first 8 bytes in key as the key material for the DES key.

The bytes that constitute the DES key are those between key[0] and key[7] inclusive.

Parameters:
key - the buffer with the DES key material.
Throws:
InvalidKeyException - if the given key material is shorter than 8 bytes.

DESKeySpec

public DESKeySpec(byte[] key,
                  int offset)
           throws InvalidKeyException
Uses the first 8 bytes in key, beginning at offset inclusive, as the key material for the DES key.

The bytes that constitute the DES key are those between key[offset] and key[offset+7] inclusive.

Parameters:
key - the buffer with the DES key material.
offset - the offset in key, where the DES key material starts.
Throws:
InvalidKeyException - if the given key material, starting at offset inclusive, is shorter than 8 bytes.
Method Detail

getKey

public byte[] getKey()
Returns the DES key material.

Returns:
the DES key material.

isParityAdjusted

public static boolean isParityAdjusted(byte[] key,
                                       int offset)
                                throws InvalidKeyException
Checks if the given DES key material, starting at offset inclusive, is parity-adjusted.

Parameters:
key - the buffer with the DES key material.
offset - the offset in key, where the DES key material starts.
Returns:
true if the given DES key material is parity-adjusted, false otherwise.
Throws:
InvalidKeyException - if the given key material, starting at offset inclusive, is shorter than 8 bytes.

isWeak

public static boolean isWeak(byte[] key,
                             int offset)
                      throws InvalidKeyException
Checks if the given DES key material is weak or semi-weak.

Parameters:
key - the buffer with the DES key material.
offset - the offset in key, where the DES key material starts.
Returns:
true if the given DES key material is weak or semi-weak, false otherwise.
Throws:
InvalidKeyException - if the given key material, starting at offset inclusive, is shorter than 8 bytes.

JavaTM 2 Platform
Std. Ed. v1.4.0

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Java, Java 2D, and JDBC are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.