java.lang.Object
javax.crypto.spec.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 inkey
as the key material for the DES-EDE key.DESedeKeySpec(byte[] key, int offset)
Creates a DESedeKeySpec object using the first 24 bytes inkey
, beginning atoffset
inclusive, as the key material for the DES-EDE key. -
Method Summary
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 atoffset
inclusive, is parity-adjusted.
-
Field Details
-
DES_EDE_KEY_LEN
public static final int DES_EDE_KEY_LENThe constant which defines the length of a DESede key in bytes.- See Also:
- Constant Field Values
-
-
Constructor Details
-
DESedeKeySpec
Creates a DESedeKeySpec object using the first 24 bytes inkey
as the key material for the DES-EDE key.The bytes that constitute the DES-EDE key are those between
key[0]
andkey[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
- ifkey
is null.InvalidKeyException
- if the given key material is shorter than 24 bytes.
-
DESedeKeySpec
Creates a DESedeKeySpec object using the first 24 bytes inkey
, beginning atoffset
inclusive, as the key material for the DES-EDE key.The bytes that constitute the DES-EDE key are those between
key[offset]
andkey[offset+23]
inclusive.- Parameters:
key
- the buffer with the DES-EDE key material. The first 24 bytes of the buffer beginning atoffset
inclusive are copied to protect against subsequent modification.offset
- the offset inkey
, where the DES-EDE key material starts.- Throws:
NullPointerException
- ifkey
is null.InvalidKeyException
- if the given key material, starting atoffset
inclusive, is shorter than 24 bytes
-
-
Method Details
-
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
Checks if the given DES-EDE key, starting atoffset
inclusive, is parity-adjusted.- Parameters:
key
- a byte array which holds the key valueoffset
- the offset into the byte array- Returns:
- true if the given DES-EDE key is parity-adjusted, false otherwise
- Throws:
NullPointerException
- ifkey
is null.InvalidKeyException
- if the given key material, starting atoffset
inclusive, is shorter than 24 bytes
-