Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javacard.security
Interface DESKey

All Superinterfaces:
  Key, SecretKey

    @TransactionType(value=SUPPORTS)
    public interface DESKey

extends SecretKey

`DESKey` contains an 8/16/24-byte key for single/2 key triple DES/3 key triple DES operations.

When the key data is set, the key is initialized and ready for use.

See Also:
  `KeyBuilder`, `Signature`, `javacardx.crypto.Cipher`, `javacardx.crypto.KeyEncryption`

Method Summary
`byte` | `getKey(byte[] keyData, short kOff)` Returns the `Key` data in plain text.
`void` | `setKey(byte[] keyData, short kOff)` Sets the `Key` data.

Methods inherited from interface javacard.security.Key
`clearKey, getSize, getType, getTypeName, isInitialized`

Method Detail

### setKey

    void setKey(byte[] keyData,
                short kOff)
                throws CryptoException,
                       NullPointerException,
                       ArrayIndexOutOfBoundsException

  Sets the `Key` data. The plain text length of input key data is 8 bytes for DES, 16 bytes for 2-key triple DES and 24 bytes for 3-key triple DES. The data format is big-endian and right-aligned (the least significant bit is the least significant bit of last byte). Input key data is copied into the internal representation.

  Note:

  - If the key object implements the `javacardx.crypto.KeyEncryption` interface and the `Cipher` object specified via `setKeyCipher()` is not `null`, `keyData` is decrypted using the `Cipher` object.

  Parameters:
    `keyData` - byte array containing key initialization data
    `kOff` - offset within keyData to start
  Throws:
    `CryptoException` - with the following reason code:
    - `CryptoException.ILLEGAL_VALUE` if input data decryption is required and fails.
    `ArrayIndexOutOfBoundsException` - if `kOff` is negative or the `keyData` array is too short
    `NullPointerException` - if the `keyData` parameter is `null`

### getKey

    byte getKey(byte[] keyData,
                short kOff)

  Returns the `Key` data in plain text. The length of output key data is 8 bytes for DES, 16 bytes for 2-key triple DES and 24 bytes for 3-key triple DES. The data format is big-endian and right-aligned (the least significant bit is the least significant bit of last byte).

  Parameters:
    `keyData` - byte array to return key data
    `kOff` - offset within `keyData` to start
  Returns:
    the byte length of the key data returned
  Throws:
    `CryptoException` - with the following reason code:
    - `CryptoException.UNINITIALIZED_KEY` if the key data has not been successfully initialized since the time the initialized state of the key was set to false.
  See Also:
    `Key`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.