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
Modifier and Type | Field | Description |
---|---|---|
static int | DES_KEY_LEN | The constant which defines the length of a DES key in bytes. |
Constructor Summary
Constructor | Description |
---|---|
DESKeySpec(byte[] key) | Creates a DESKeySpec object using the first 8 bytes in |
DESKeySpec(byte[] key,
int offset) | Creates a DESKeySpec object using the first 8 bytes in |
Method Summary
Modifier and Type | Method | Description |
---|---|---|
byte[] | getKey() | Returns the DES key material. |
static boolean | isParityAdjusted(byte[] key,
int offset) | Checks if the given DES key material, starting at |
static boolean | isWeak(byte[] key,
int offset) | Checks if the given DES key material is weak or semi-weak. |
Methods declared in 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
Creates a DESKeySpec object using 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. The first 8 bytes of the buffer are copied to protect against subsequent modification. - Throws:
-
NullPointerException
- if the given key material isnull
-
InvalidKeyException
- if the given key material is shorter than 8 bytes.
DESKeySpec
public DESKeySpec(byte[] key, int offset) throws InvalidKeyException
Creates a DESKeySpec object using 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. The first 8 bytes of the buffer beginning atoffset
inclusive are copied to protect against subsequent modification. -
offset
- the offset inkey
, where the DES key material starts. - Throws:
-
NullPointerException
- if the given key material isnull
-
InvalidKeyException
- if the given key material, starting atoffset
inclusive, is shorter than 8 bytes.
Method Detail
getKey
public byte[] getKey()
Returns the DES key material.
- Returns:
- the DES key material. Returns a new array each time this method is called.
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 inkey
, 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 isnull
, or starting atoffset
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 inkey
, 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 isnull
, or starting atoffset
inclusive, is shorter than 8 bytes.