javacard.security (Java Card API, Connected Edition)
Date: 2009-12-11

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES

## Package javacard.security

Provides classes and interfaces that contain publicly-available functionality for implementing a security and cryptography framework on the Java Card platform.

See:
Description

Interface Summary
AESKey | `AESKey` contains a 16/24/32 byte key for AES computations based on the Rijndael algorithm.
DESKey | `DESKey` contains an 8/16/24-byte key for single/2 key triple DES/3 key triple DES operations.
DSAKey | The DSAKey interface is the base interface for the DSA algorithm's private and public key implementations.
DSAPrivateKey | The `DSAPrivateKey` interface is used to sign data using the DSA algorithm.
DSAPublicKey | The `DSAPublicKey` interface is used to verify signatures on signed data using the DSA algorithm.
ECKey | The `ECKey` interface is the base interface for the EC algorithm's private and public key implementations.
ECPrivateKey | The `ECPrivateKey` interface is used to generate signatures on data using the ECDSA (Elliptic Curve Digital Signature Algorithm) and to generate shared secrets using the ECDH (Elliptic Curve Diffie-Hellman) algorithm.
ECPublicKey | The `ECPublicKey` interface is used to verify signatures on signed data using the ECDSA algorithm and to generate shared secrets using the ECDH algorithm.
HMACKey | `HMACKey` contains a key for HMAC operations.
Key | The `Key` interface is the base interface for all keys.
KoreanSEEDKey | `KoreanSEEDKey` contains an 16-byte key for Korean Seed Algorithm operations.
PrivateKey | The `PrivateKey` interface is the base interface for private keys used in asymmetric algorithms.
PublicKey | The `PublicKey` interface is the base interface for public keys used in asymmetric algorithms.
RSAPrivateCrtKey | The `RSAPrivateCrtKey` interface is used to sign data using the RSA algorithm in its Chinese Remainder Theorem form.
RSAPrivateKey | The `RSAPrivateKey` class is used to sign data using the RSA algorithm in its modulus/exponent form.
RSAPublicKey | The `RSAPublicKey` is used to verify signatures on signed data using the RSA algorithm.
SecretKey | The `SecretKey` class is the base interface for keys used in symmetric algorithms (DES, for example).
SignatureMessageRecovery | A subclass of the abstract `Signature` class must implement this `SignatureMessageRecovery` interface to provide message recovery functionality.

Class Summary
Checksum | The `Checksum` class is the base class for CRC (cyclic redundancy check) checksum algorithms.
InitializedMessageDigest | The `InitializedMessageDigest` class is a subclass of the base class `MessageDigest`.
KeyAgreement | The `KeyAgreement` class is the base class for key agreement algorithms such as Diffie-Hellman and EC Diffie-Hellman [IEEE P1363].
KeyBuilder | The `KeyBuilder` class is a key object factory.
KeyPair | This class is a container for a key pair (a public key and a private key).
MessageDigest | The `MessageDigest` class is the base class for hashing algorithms.
RandomData | The `RandomData` abstract class is the base class for random number generation.
Signature | The `Signature` class is the base class for Signature algorithms.

Exception Summary
CryptoException | `CryptoException` represents a cryptography-related exception.

## Package javacard.security Description

Provides classes and interfaces that contain publicly-available functionality for implementing a security and cryptography framework on the Java Card platform. Classes which contain security and cryptography functionality which may be subject to export controls are contained in the optional package `javacardx.crypto`.

Classes in the `javacard.security` package provide the definitions of algorithms that perform these security and cryptography functions:

- Implementations for a variety of different cryptographic keys
- Factory for building keys (see `KeyBuilder`)
- Data hashing (see `MessageDigest`)
- Random data generation (see `RandomData`)
- Signing using cryptographic keys (see `Signature`)
- Session key exchanges (see `KeyAgreement`)

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES

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