public class

DESKeySpec

extends Object
implements KeySpec
java.lang.Object
   ↳ javax.crypto.spec.DESKeySpec

Class Overview

This class specifies a DES key.

Summary

Constants
int DES_KEY_LEN The constant which defines the length of a DES key in bytes.
Public Constructors
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 Methods
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.
[Expand]
Inherited Methods
From class java.lang.Object

Constants

public static final int DES_KEY_LEN

The constant which defines the length of a DES key in bytes.

Constant Value: 8 (0x00000008)

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.