Class DESedeKeySpec

All Implemented Interfaces:
KeySpec
public class DESedeKeySpec
extends Object
implements KeySpec

This class specifies a DES-EDE ("triple-DES") key.

Since:
1.4

Field Summary

Fields
Modifier and Type Field Description
static int DES_EDE_KEY_LEN

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

Constructor Summary

Constructors
Constructor Description
DESedeKeySpec​(byte[] key)

Creates a DESedeKeySpec object using the first 24 bytes in key as the key material for the DES-EDE key.

DESedeKeySpec​(byte[] key, int offset)

Creates a DESedeKeySpec object using the first 24 bytes in key, beginning at offset inclusive, as the key material for the DES-EDE key.

Method Summary

All Methods Static Methods Instance Methods Concrete Methods
Modifier and Type Method Description
byte[] getKey()

Returns the DES-EDE key.

static boolean isParityAdjusted​(byte[] key, int offset)

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

Methods declared in class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Detail

DES_EDE_KEY_LEN

public static final int DES_EDE_KEY_LEN

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

See Also:
Constant Field Values

Constructor Detail

DESedeKeySpec

public DESedeKeySpec​(byte[] key)
              throws InvalidKeyException

Creates a DESedeKeySpec object using the first 24 bytes in key as the key material for the DES-EDE key.

The bytes that constitute the DES-EDE key are those between key[0] and key[23] inclusive

Parameters:
key - the buffer with the DES-EDE key material. The first 24 bytes of the buffer are copied to protect against subsequent modification.
Throws:
NullPointerException - if key is null.
InvalidKeyException - if the given key material is shorter than 24 bytes.

DESedeKeySpec

public DESedeKeySpec​(byte[] key,
                     int offset)
              throws InvalidKeyException

Creates a DESedeKeySpec object using the first 24 bytes in key, beginning at offset inclusive, as the key material for the DES-EDE key.

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

Parameters:
key - the buffer with the DES-EDE key material. The first 24 bytes of the buffer beginning at offset inclusive are copied to protect against subsequent modification.
offset - the offset in key, where the DES-EDE key material starts.
Throws:
NullPointerException - if key is null.
InvalidKeyException - if the given key material, starting at offset inclusive, is shorter than 24 bytes

Method Detail

getKey

public byte[] getKey()

Returns the DES-EDE key.

Returns:
the DES-EDE key. 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-EDE key, starting at offset inclusive, is parity-adjusted.

Parameters:
key - a byte array which holds the key value
offset - the offset into the byte array
Returns:
true if the given DES-EDE key is parity-adjusted, false otherwise
Throws:
NullPointerException - if key is null.
InvalidKeyException - if the given key material, starting at offset inclusive, is shorter than 24 bytes