DESKeySpec

public class DESKeySpec
extends Object implements KeySpec

java.lang.Object
   ↳ javax.crypto.spec.DESKeySpec


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.

Inherited methods

Constants

DES_KEY_LEN

added in API level 1
int DES_KEY_LEN

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

Constant Value: 8 (0x00000008)

Public constructors

DESKeySpec

added in API level 1
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 byte: 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.

DESKeySpec

added in API level 1
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 byte: 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 int: 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

getKey

added in API level 1
byte[] getKey ()

Returns the DES key material.

Returns
byte[] the DES key material. Returns a new array each time this method is called.

isParityAdjusted

added in API level 1
boolean isParityAdjusted (byte[] key, 
                int offset)

Checks if the given DES key material, starting at offset inclusive, is parity-adjusted.

Parameters
key byte: the buffer with the DES key material.

offset int: the offset in key, where the DES key material starts.

Returns
boolean 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.

isWeak

added in API level 1
boolean isWeak (byte[] key, 
                int offset)

Checks if the given DES key material is weak or semi-weak.

Parameters
key byte: the buffer with the DES key material.

offset int: the offset in key, where the DES key material starts.

Returns
boolean 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.