java.security
Provides the classes and interfaces for the security framework. This includes classes that implement an easily configurable, fine-grained access control security architecture. This package also supports the generation and storage of cryptographic public key pairs, as well as a number of exportable cryptographic operations including those for message digest and signature generation. Finally, this package provides classes that support signed/guarded objects and secure random number generation. Many of the classes provided in this package (the cryptographic and secure random number generator classes in particular) are provider-based. The class itself defines a programming interface to which applications may write. The implementations themselves may then be written by independent third-party vendors and plugged in seamlessly as needed. Therefore application developers may take advantage of any number of provider-based implementations without having to add or rewrite code.Package Specification
- Java™ Cryptography Architecture (JCA) Reference Guide
- PKCS #8: Private-Key Information Syntax Standard, Version 1.2, November 1993
- Java™ Cryptography Architecture Standard Algorithm Name Documentation
Related Documentation
For further documentation, please see:- Java™ SE Platform Security Architecture
- How to Implement a Provider in the Java™ Cryptography Architecture
- Default Policy Implementation and Policy File Syntax
- Permissions in the Java™ SE Development Kit (JDK)
- Summary of Tools for Java™ Platform Security
- keytool ( for Solaris/Linux) ( for Windows)
- jarsigner ( for Solaris/Linux) ( for Windows)
Interfaces
| AlgorithmConstraints | This interface specifies constraints for cryptographic algorithms, keys (key sizes), and other algorithm parameters. |
| Certificate |
This interface was deprecated
in API level 3.
This class is deprecated and subject to removal in a future
version of Java SE. It has been replaced by
java.security.cert.Certificate and related classes.
|
| DomainCombiner | Legacy security code; do not use. |
| Guard |
This interface represents a guard, which is an object that is used to protect access to another object. |
| Key | The Key interface is the top-level interface for all keys. |
| KeyStore.Entry |
A marker interface for KeyStore entry types.
|
| KeyStore.Entry.Attribute | An attribute associated with a keystore entry. |
| KeyStore.LoadStoreParameter |
A marker interface for KeyStore
load
and
store
parameters.
|
| KeyStore.ProtectionParameter | A marker interface for keystore protection parameters. |
| Policy.Parameters | |
| Principal | This interface represents the abstract notion of a principal, which can be used to represent any entity, such as an individual, a corporation, and a login id. |
| PrivateKey | A private key. |
| PrivilegedAction<T> |
Android doesn't support SecurityManager.
|
| PrivilegedExceptionAction<T> |
Android doesn't support SecurityManager.
|
| PublicKey |
A public key. |
| SecureRandomParameters |
A marker interface for parameters used in various SecureRandom
methods.
|
Classes
| AccessControlContext |
Android doesn't support SecurityManager.
|
| AccessController |
Android doesn't support SecurityManager.
|
| AlgorithmParameterGenerator |
The AlgorithmParameterGenerator class is used to generate a
set of
parameters to be used with a certain algorithm.
|
| AlgorithmParameterGeneratorSpi |
This class defines the Service Provider Interface (SPI)
for the AlgorithmParameterGenerator class, which
is used to generate a set of parameters to be used with a certain algorithm.
|
| AlgorithmParameters | This class is used as an opaque representation of cryptographic parameters. |
| AlgorithmParametersSpi |
This class defines the Service Provider Interface (SPI)
for the AlgorithmParameters class, which is used to manage
algorithm parameters.
|
| AllPermission |
Android doesn't support SecurityManager.
|
| AuthProvider | Legacy security code; do not use. |
| BasicPermission |
Android doesn't support SecurityManager.
|
| CodeSigner | This class encapsulates information about a code signer. |
| CodeSource | Legacy security code; do not use. |
| DigestInputStream | A transparent stream that updates the associated message digest using the bits going through the stream. |
| DigestOutputStream | A transparent stream that updates the associated message digest using the bits going through the stream. |
| DomainLoadStoreParameter | Configuration data that specifies the keystores in a keystore domain. |
| DrbgParameters | This class specifies the parameters used by a DRBG (Deterministic Random Bit Generator). |
| DrbgParameters.Instantiation | DRBG parameters for instantiation. |
| DrbgParameters.NextBytes | DRBG parameters for random bits generation. |
| DrbgParameters.Reseed | DRBG parameters for reseed. |
| GuardedObject | A GuardedObject is an object that is used to protect access to another object. |
| Identity |
This class was deprecated
in API level 3.
This class is deprecated and subject to removal in a future
version of Java SE. It has been replaced by
java.security.KeyStore, the java.security.cert package,
and java.security.Principal.
|
| IdentityScope |
This class was deprecated
in API level 3.
This class is deprecated and subject to removal in a future
version of Java SE. It has been replaced by
java.security.KeyStore, the java.security.cert package,
and java.security.Principal.
|
| KeyFactory |
Key factories are used to convert keys (opaque
cryptographic keys of type Key) into key specifications
(transparent representations of the underlying key material), and vice
versa.
|
| KeyFactorySpi |
This class defines the Service Provider Interface (SPI)
for the KeyFactory class.
|
| KeyPair | This class is a simple holder for a key pair (a public key and a private key). |
| KeyPairGenerator | The KeyPairGenerator class is used to generate pairs of public and private keys. |
| KeyPairGeneratorSpi |
This class defines the Service Provider Interface (SPI)
for the |
| KeyRep | Standardized representation for serialized Key objects. |
| KeyStore | This class represents a storage facility for cryptographic keys and certificates. |
| KeyStore.Builder | A description of a to-be-instantiated KeyStore object. |
| KeyStore.CallbackHandlerProtection | A ProtectionParameter encapsulating a CallbackHandler. |
| KeyStore.PasswordProtection |
A password-based implementation of ProtectionParameter.
|
| KeyStore.PrivateKeyEntry |
A KeyStore entry that holds a PrivateKey
and corresponding certificate chain.
|
| KeyStore.SecretKeyEntry |
A KeyStore entry that holds a SecretKey.
|
| KeyStore.TrustedCertificateEntry |
A KeyStore entry that holds a trusted
Certificate.
|
| KeyStoreSpi |
This class defines the Service Provider Interface (SPI)
for the KeyStore class.
|
| MessageDigest | This MessageDigest class provides applications the functionality of a message digest algorithm, such as SHA-1 or SHA-256. |
| MessageDigestSpi |
This class defines the Service Provider Interface (SPI)
for the MessageDigest class, which provides the functionality
of a message digest algorithm, such as MD5 or SHA.
|
| Permission |
Android doesn't support SecurityManager.
|
| PermissionCollection |
Android doesn't support SecurityManager.
|
| Permissions |
Android doesn't support SecurityManager.
|
| PKCS12Attribute | An attribute associated with a PKCS12 keystore entry. |
| Policy |
Android doesn't support SecurityManager.
|
| PolicySpi |
This class defines the Service Provider Interface (SPI)
for the Policy class.
|
| ProtectionDomain | Legacy security code; do not use. |
| Provider | This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security. |
| Provider.Service | The description of a security service. |
| SecureClassLoader | This class extends ClassLoader with additional support for defining classes with an associated code source and permissions which are retrieved by the system policy by default. |
| SecureRandom | This class provides a cryptographically strong random number generator (RNG). |
| SecureRandomSpi |
This class defines the Service Provider Interface (SPI)
for the SecureRandom class.
|
| Security |
This class centralizes all security properties and common security methods. |
| SecurityPermission | Legacy security code; do not use. |
| Signature | The Signature class is used to provide applications the functionality of a digital signature algorithm. |
| SignatureSpi |
This class defines the Service Provider Interface (SPI)
for the Signature class, which is used to provide the
functionality of a digital signature algorithm.
|
| SignedObject |
SignedObject is a class for the purpose of creating authentic runtime objects whose integrity cannot be compromised without being detected. |
| Signer |
This class was deprecated
in API level 3.
This class is deprecated and subject to removal in a future
version of Java SE. It has been replaced by
java.security.KeyStore, the java.security.cert package,
and java.security.Principal.
|
| Timestamp | This class encapsulates information about a signed timestamp. |
| UnresolvedPermission | Legacy security code; do not use. |
Enums
| CryptoPrimitive | An enumeration of cryptographic primitives. |
| DrbgParameters.Capability | The reseedable and prediction resistance capabilities of a DRBG. |
| KeyRep.Type | Key type. |
Exceptions
| AccessControlException |
This exception is thrown by the AccessController to indicate that a requested access (to a critical system resource such as the file system or the network) is denied. |
| DigestException | This is the generic Message Digest exception. |
| GeneralSecurityException |
The GeneralSecurityException class is a generic
security exception class that provides type safety for all the
security-related exception classes that extend from it.
|
| InvalidAlgorithmParameterException | This is the exception for invalid or inappropriate algorithm parameters. |
| InvalidKeyException | This is the exception for invalid Keys (invalid encoding, wrong length, uninitialized, etc). |
| InvalidParameterException | This exception, designed for use by the JCA/JCE engine classes, is thrown when an invalid parameter is passed to a method. |
| KeyException | This is the basic key exception. |
| KeyManagementException | This is the general key management exception for all operations dealing with key management. |
| KeyStoreException | This is the generic KeyStore exception. |
| NoSuchAlgorithmException | This exception is thrown when a particular cryptographic algorithm is requested but is not available in the environment. |
| NoSuchProviderException | This exception is thrown when a particular security provider is requested but is not available in the environment. |
| PrivilegedActionException | Legacy security code; do not use. |
| ProviderException | A runtime exception for Provider exceptions (such as misconfiguration errors or unrecoverable internal errors), which may be subclassed by Providers to throw specialized, provider-specific runtime errors. |
| SignatureException | This is the generic Signature exception. |
| UnrecoverableEntryException | This exception is thrown if an entry in the keystore cannot be recovered. |
| UnrecoverableKeyException | This exception is thrown if a key in the keystore cannot be recovered. |
Interfaces
Classes
- AccessControlContext
- AccessController
- AlgorithmParameterGenerator
- AlgorithmParameterGeneratorSpi
- AlgorithmParameters
- AlgorithmParametersSpi
- AllPermission
- AuthProvider
- BasicPermission
- CodeSigner
- CodeSource
- DigestInputStream
- DigestOutputStream
- DomainLoadStoreParameter
- DrbgParameters
- DrbgParameters.Instantiation
- DrbgParameters.NextBytes
- DrbgParameters.Reseed
- GuardedObject
- Identity
- IdentityScope
- KeyFactory
- KeyFactorySpi
- KeyPair
- KeyPairGenerator
- KeyPairGeneratorSpi
- KeyRep
- KeyStore
- KeyStore.Builder
- KeyStore.CallbackHandlerProtection
- KeyStore.PasswordProtection
- KeyStore.PrivateKeyEntry
- KeyStore.SecretKeyEntry
- KeyStore.TrustedCertificateEntry
- KeyStoreSpi
- MessageDigest
- MessageDigestSpi
- Permission
- PermissionCollection
- Permissions
- PKCS12Attribute
- Policy
- PolicySpi
- ProtectionDomain
- Provider
- Provider.Service
- SecureClassLoader
- SecureRandom
- SecureRandomSpi
- Security
- SecurityPermission
- Signature
- SignatureSpi
- SignedObject
- Signer
- Timestamp
- UnresolvedPermission
Enums
Exceptions
- AccessControlException
- DigestException
- GeneralSecurityException
- InvalidAlgorithmParameterException
- InvalidKeyException
- InvalidParameterException
- KeyException
- KeyManagementException
- KeyStoreException
- NoSuchAlgorithmException
- NoSuchProviderException
- PrivilegedActionException
- ProviderException
- SignatureException
- UnrecoverableEntryException
- UnrecoverableKeyException