DESedeKeySpec

public class DESedeKeySpec
extends Object implements KeySpec

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


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

Summary

Constants

int DES_EDE_KEY_LEN

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

Public constructors

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.

Public methods

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.

Inherited methods

Object clone()

Creates and returns a copy of this object.

boolean equals(Object obj)

Indicates whether some other object is "equal to" this one.

void finalize()

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.

final Class<?> getClass()

Returns the runtime class of this Object.

int hashCode()

Returns a hash code value for the object.

final void notify()

Wakes up a single thread that is waiting on this object's monitor.

final void notifyAll()

Wakes up all threads that are waiting on this object's monitor.

String toString()

Returns a string representation of the object.

final void wait(long timeoutMillis, int nanos)

Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

final void wait(long timeoutMillis)

Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

final void wait()

Causes the current thread to wait until it is awakened, typically by being notified or interrupted.

Constants

DES_EDE_KEY_LEN

Added in API level 1
public static final int DES_EDE_KEY_LEN

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

Constant Value: 24 (0x00000018)

Public constructors

DESedeKeySpec

Added in API level 1
public DESedeKeySpec (byte[] key)

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 byte: 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

Added in API level 1
public 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.

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

Parameters
key byte: 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 int: 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

Public methods

getKey

Added in API level 1
public byte[] getKey ()

Returns the DES-EDE key.

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

isParityAdjusted

Added in API level 1
public static boolean isParityAdjusted (byte[] key, 
                int offset)

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

Parameters
key byte: a byte array which holds the key value

offset int: the offset into the byte array

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