# Uses of Package
java.security

- Packages that use java.security
  Package | Description
  --- | ---
  java.awt | Contains all of the classes for creating user interfaces and for painting graphics and images.
  java.io | Provides for system input and output through data streams, serialization and the file system.
  java.lang | Provides classes that are fundamental to the design of the Java programming language.
  java.lang.instrument | Provides services that allow Java programming language agents to instrument programs running on the JVM.
  java.lang.management | Provides the management interface for monitoring and management of the Java virtual machine as well as the operating system on which the Java virtual machine is running.
  java.lang.reflect | Provides classes and interfaces for obtaining reflective information about classes and objects.
  java.net | Provides the classes for implementing networking applications.
  java.security | Provides the classes and interfaces for the security framework.
  java.security.acl | The classes and interfaces in this package have been superseded by classes in the java.security package.
  java.security.cert | Provides classes and interfaces for parsing and managing certificates, certificate revocation lists (CRLs), and certification paths.
  java.security.interfaces | Provides interfaces for generating RSA (Rivest, Shamir and Adleman AsymmetricCipher algorithm) keys as defined in the RSA Laboratory Technical Note PKCS#1, and DSA (Digital Signature Algorithm) keys as defined in NIST's FIPS-186.
  java.security.spec | Provides classes and interfaces for key specifications and algorithm parameter specifications.
  java.sql | Provides the API for accessing and processing data stored in a data source (usually a relational database) using the JavaTM programming language.
  java.util | Contains the collections framework, legacy collection classes, event model, date and time facilities, internationalization, and miscellaneous utility classes (a string tokenizer, a random-number generator, and a bit array).
  java.util.concurrent | Utility classes commonly useful in concurrent programming.
  java.util.jar | Provides classes for reading and writing the JAR (Java ARchive) file format, which is based on the standard ZIP file format with an optional manifest file.
  java.util.logging | Provides the classes and interfaces of the JavaTM 2 platform's core logging facilities.
  javax.crypto | Provides the classes and interfaces for cryptographic operations.
  javax.crypto.interfaces | Provides interfaces for Diffie-Hellman keys as defined in RSA Laboratories' PKCS #3.
  javax.crypto.spec | Provides classes and interfaces for key specifications and algorithm parameter specifications.
  javax.management | Provides the core classes for the Java Management Extensions.
  javax.management.loading | Provides the classes which implement advanced dynamic loading.
  javax.management.remote | Interfaces for remote access to JMX MBean servers.
  javax.net.ssl | Provides classes for the secure socket package.
  javax.security.auth | This package provides a framework for authentication and authorization.
  javax.security.auth.kerberos | This package contains utility classes related to the Kerberos network authentication protocol.
  javax.security.auth.login | This package provides a pluggable authentication framework.
  javax.security.auth.x500 | This package contains the classes that should be used to store X500 Principal and X500 Private Crendentials in a Subject.
  javax.sound.sampled | Provides interfaces and classes for capture, processing, and playback of sampled audio data.
  javax.xml.crypto | Common classes for XML cryptography.
  javax.xml.crypto.dsig | Classes for generating and validating XML digital signatures.
  javax.xml.crypto.dsig.dom | DOM-specific classes for the `javax.xml.crypto.dsig` package.
  javax.xml.crypto.dsig.keyinfo | Classes for parsing and processing `KeyInfo` elements and structures.
  javax.xml.ws | This package contains the core JAX-WS APIs.
  org.ietf.jgss | This package presents a framework that allows application developers to make use of security services like authentication, data integrity and data confidentiality from a variety of underlying security mechanisms like Kerberos, using a unified API.

- Classes in java.security used by java.awt
  Class and Description
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  Guard This interface represents a guard, which is an object that is used to protect access to another object.
  Permission Abstract class for representing access to a system resource.

- Classes in java.security used by java.io
  Class and Description
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  Guard This interface represents a guard, which is an object that is used to protect access to another object.
  Permission Abstract class for representing access to a system resource.
  PermissionCollection Abstract class representing a collection of Permission objects.

- Classes in java.security used by java.lang
  Class and Description
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  Guard This interface represents a guard, which is an object that is used to protect access to another object.
  Permission Abstract class for representing access to a system resource.
  ProtectionDomain This ProtectionDomain class encapsulates the characteristics of a domain, which encloses a set of classes whose instances are granted a set of permissions when being executed on behalf of a given set of Principals.

- Classes in java.security used by java.lang.instrument
  Class and Description
  ProtectionDomain This ProtectionDomain class encapsulates the characteristics of a domain, which encloses a set of classes whose instances are granted a set of permissions when being executed on behalf of a given set of Principals.

- Classes in java.security used by java.lang.management
  Class and Description
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  Guard This interface represents a guard, which is an object that is used to protect access to another object.
  Permission Abstract class for representing access to a system resource.

- Classes in java.security used by java.lang.reflect
  Class and Description
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  Guard This interface represents a guard, which is an object that is used to protect access to another object.
  Permission Abstract class for representing access to a system resource.

- Classes in java.security used by java.net
  Class and Description
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  CodeSource This class extends the concept of a codebase to encapsulate not only the location (URL) but also the certificate chains that were used to verify signed code originating from that location.
  Guard This interface represents a guard, which is an object that is used to protect access to another object.
  Permission Abstract class for representing access to a system resource.
  PermissionCollection Abstract class representing a collection of Permission objects.
  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.
  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.

- Classes in java.security used by java.security
  Class and Description
  AccessControlContext An AccessControlContext is used to make system resource access decisions based on the context it encapsulates.
  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.
  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.
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  Certificate Deprecated. A new certificate handling package is created in the Java platform. This Certificate interface is entirely deprecated and is here to allow for a smooth transition to the new package.
  CodeSigner This class encapsulates information about a code signer.
  CodeSource This class extends the concept of a codebase to encapsulate not only the location (URL) but also the certificate chains that were used to verify signed code originating from that location.
  DigestException This is the generic Message Digest exception.
  DomainCombiner A `DomainCombiner` provides a means to dynamically update the ProtectionDomains associated with the current `AccessControlContext`.
  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.
  Guard This interface represents a guard, which is an object that is used to protect access to another object.
  Identity Deprecated. This class is no longer used. Its functionality has been replaced by `java.security.KeyStore`, the `java.security.cert` package, and `java.security.Principal`.
  IdentityScope Deprecated. This class is no longer used. Its functionality has been replaced by `java.security.KeyStore`, the `java.security.cert` package, and `java.security.Principal`.
  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.
  Key The Key interface is the top-level interface for all keys.
  KeyException This is the basic key exception.
  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.
  KeyManagementException This is the general key management exception for all operations dealing with key management.
  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 `KeyPairGenerator` class, which is used to generate pairs of public and private keys.
  KeyRep.Type Key type.
  KeyStore This class represents a storage facility for cryptographic keys and certificates.
  KeyStore.Builder A description of a to-be-instantiated KeyStore object.
  KeyStore.Entry A marker interface for `KeyStore` entry types.
  KeyStore.LoadStoreParameter A marker interface for `KeyStore` `load` and `store` parameters.
  KeyStore.ProtectionParameter A marker interface for keystore protection parameters.
  KeyStoreException This is the generic KeyStore exception.
  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 MD5 or SHA.
  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.
  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.
  Permission Abstract class for representing access to a system resource.
  PermissionCollection Abstract class representing a collection of Permission objects.
  Policy A Policy object is responsible for determining whether code executing in the Java runtime environment has permission to perform a security-sensitive operation.
  Policy.Parameters This represents a marker interface for 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 A computation to be performed with privileges enabled.
  PrivilegedActionException This exception is thrown by `doPrivileged(PrivilegedExceptionAction)` and `doPrivileged(PrivilegedExceptionAction, AccessControlContext context)` to indicate that the action being performed threw a checked exception.
  PrivilegedExceptionAction A computation to be performed with privileges enabled, that throws one or more checked exceptions.
  ProtectionDomain This ProtectionDomain class encapsulates the characteristics of a domain, which encloses a set of classes whose instances are granted a set of permissions when being executed on behalf of a given set of Principals.
  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.
  PublicKey A public key.
  SecureRandom This class provides a cryptographically strong random number generator (RNG).
  SecureRandomSpi This class defines the Service Provider Interface (SPI) for the `SecureRandom` class.
  Signature This Signature class is used to provide applications the functionality of a digital signature algorithm.
  SignatureException This is the generic Signature exception.
  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.
  Timestamp This class encapsulates information about a signed timestamp.
  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.

- Classes in java.security used by java.security.acl
  Class and Description
  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.

- Classes in java.security used by java.security.cert
  Class and Description
  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).
  KeyStore This class represents a storage facility for cryptographic keys and certificates.
  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.
  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.
  Provider This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.
  PublicKey A public key.
  SignatureException This is the generic Signature exception.

- Classes in java.security used by java.security.interfaces
  Class and Description
  InvalidParameterException This exception, designed for use by the JCA/JCE engine classes, is thrown when an invalid parameter is passed to a method.
  Key The Key interface is the top-level interface for all keys.
  PrivateKey A private key.
  PublicKey A public key.
  SecureRandom This class provides a cryptographically strong random number generator (RNG).

- Classes in java.security used by java.security.spec
  Class and Description
  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.

- Classes in java.security used by java.sql
  Class and Description
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  Guard This interface represents a guard, which is an object that is used to protect access to another object.
  Permission Abstract class for representing access to a system resource.

- Classes in java.security used by java.util
  Class and Description
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  Guard This interface represents a guard, which is an object that is used to protect access to another object.
  Permission Abstract class for representing access to a system resource.
  PermissionCollection Abstract class representing a collection of Permission objects.

- Classes in java.security used by java.util.concurrent
  Class and Description
  PrivilegedAction A computation to be performed with privileges enabled.
  PrivilegedExceptionAction A computation to be performed with privileges enabled, that throws one or more checked exceptions.

- Classes in java.security used by java.util.jar
  Class and Description
  CodeSigner This class encapsulates information about a code signer.

- Classes in java.security used by java.util.logging
  Class and Description
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  Guard This interface represents a guard, which is an object that is used to protect access to another object.
  Permission Abstract class for representing access to a system resource.

- Classes in java.security used by javax.crypto
  Class and Description
  AlgorithmParameters This class is used as an opaque representation of cryptographic parameters.
  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).
  Key The Key interface is the top-level interface for all keys.
  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.
  Provider This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.
  SecureRandom This class provides a cryptographically strong random number generator (RNG).

- Classes in java.security used by javax.crypto.interfaces
  Class and Description
  Key The Key interface is the top-level interface for all keys.
  PrivateKey A private key.
  PublicKey A public key.

- Classes in java.security used by javax.crypto.spec
  Class and Description
  InvalidKeyException This is the exception for invalid Keys (invalid encoding, wrong length, uninitialized, etc).
  Key The Key interface is the top-level interface for all keys.

- Classes in java.security used by javax.management
  Class and Description
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  Guard This interface represents a guard, which is an object that is used to protect access to another object.
  Permission Abstract class for representing access to a system resource.
  PermissionCollection Abstract class representing a collection of Permission objects.

- Classes in java.security used by javax.management.loading
  Class and Description
  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.

- Classes in java.security used by javax.management.remote
  Class and Description
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  Guard This interface represents a guard, which is an object that is used to protect access to another object.
  Permission Abstract class for representing access to a system resource.
  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.

- Classes in java.security used by javax.net.ssl
  Class and Description
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  Guard This interface represents a guard, which is an object that is used to protect access to another object.
  InvalidAlgorithmParameterException This is the exception for invalid or inappropriate algorithm parameters.
  KeyManagementException This is the general key management exception for all operations dealing with key management.
  KeyStore This class represents a storage facility for cryptographic keys and certificates.
  KeyStore.Builder A description of a to-be-instantiated KeyStore object.
  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.
  Permission Abstract class for representing access to a system resource.
  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.
  Provider This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.
  SecureRandom This class provides a cryptographically strong random number generator (RNG).
  UnrecoverableKeyException This exception is thrown if a key in the keystore cannot be recovered.

- Classes in java.security used by javax.security.auth
  Class and Description
  AccessControlContext An AccessControlContext is used to make system resource access decisions based on the context it encapsulates.
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  DomainCombiner A `DomainCombiner` provides a means to dynamically update the ProtectionDomains associated with the current `AccessControlContext`.
  Guard This interface represents a guard, which is an object that is used to protect access to another object.
  Permission Abstract class for representing access to a system resource.
  PermissionCollection Abstract class representing a collection of Permission objects.
  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.
  PrivilegedAction A computation to be performed with privileges enabled.
  PrivilegedActionException This exception is thrown by `doPrivileged(PrivilegedExceptionAction)` and `doPrivileged(PrivilegedExceptionAction, AccessControlContext context)` to indicate that the action being performed threw a checked exception.
  PrivilegedExceptionAction A computation to be performed with privileges enabled, that throws one or more checked exceptions.
  ProtectionDomain This ProtectionDomain class encapsulates the characteristics of a domain, which encloses a set of classes whose instances are granted a set of permissions when being executed on behalf of a given set of Principals.

- Classes in java.security used by javax.security.auth.kerberos
  Class and Description
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  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.
  Permission Abstract class for representing access to a system resource.
  PermissionCollection Abstract class representing a collection of Permission objects.
  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.

- Classes in java.security used by javax.security.auth.login
  Class and Description
  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.
  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.
  Provider This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.

- Classes in java.security used by javax.security.auth.x500
  Class and Description
  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.

- Classes in java.security used by javax.sound.sampled
  Class and Description
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  Guard This interface represents a guard, which is an object that is used to protect access to another object.
  Permission Abstract class for representing access to a system resource.

- Classes in java.security used by javax.xml.crypto
  Class and Description
  Key The Key interface is the top-level interface for all keys.

- Classes in java.security used by javax.xml.crypto.dsig
  Class and Description
  InvalidAlgorithmParameterException This is the exception for invalid or inappropriate algorithm parameters.
  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.
  Provider This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.

- Classes in java.security used by javax.xml.crypto.dsig.dom
  Class and Description
  Key The Key interface is the top-level interface for all keys.

- Classes in java.security used by javax.xml.crypto.dsig.keyinfo
  Class and Description
  KeyException This is the basic key exception.
  NoSuchProviderException This exception is thrown when a particular security provider is requested but is not available in the environment.
  Provider This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.
  PublicKey A public key.

- Classes in java.security used by javax.xml.ws
  Class and Description
  BasicPermission The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
  Guard This interface represents a guard, which is an object that is used to protect access to another object.
  Permission Abstract class for representing access to a system resource.
  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.

- Classes in java.security used by org.ietf.jgss
  Class and Description
  Provider This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.