java.security
Stay organized with collections
Save and categorize content based on your preferences.
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