AI-generated Key Takeaways
-
DESKeySpecspecifies a DES key using 8 bytes of key material. -
It provides constructors to create a
DESKeySpecfrom a byte array, with or without an offset. -
Methods are included to retrieve the key material and check for parity adjustment and key weakness.
-
The constant
DES_KEY_LENdefines the length of a DES key in bytes, which is 8.
This class specifies a DES key.
Constant Summary
| int | DES_KEY_LEN | The constant which defines the length of a DES key in bytes. |
Public Constructor Summary
|
DESKeySpec(byte[] key)
Creates a DESKeySpec object using the first 8 bytes in
key as the key material for the DES key. |
|
|
DESKeySpec(byte[] key, int offset)
Creates a DESKeySpec object using the first 8 bytes in
key, beginning at offset inclusive,
as the key material for the DES key. |
Public 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.
|
Inherited Method Summary
Constants
public static final int DES_KEY_LEN
The constant which defines the length of a DES key in bytes.
Public Constructors
public DESKeySpec (byte[] key)
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 is
null |
|---|---|
| InvalidKeyException | if the given key material is shorter than 8 bytes. |
public DESKeySpec (byte[] key, int offset)
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 at offset inclusive are copied
to protect against subsequent modification. |
|---|---|
| offset | the offset in key, where the DES key
material starts. |
Throws
| NullPointerException | if the given key material is
null |
|---|---|
| InvalidKeyException | if the given key material, starting at
offset inclusive, is shorter than 8 bytes.
|
Public Methods
public byte[] getKey ()
Returns the DES key material.
Returns
- the DES key material. Returns a new array each time this method is called.
public static boolean isParityAdjusted (byte[] key, int offset)
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 is
null, or starting at offset inclusive, is
shorter than 8 bytes.
|
|---|
public static boolean isWeak (byte[] key, int offset)
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 is
null, or starting at offset inclusive, is
shorter than 8 bytes.
|
|---|